/*
Theme Name: PNEUMAXX
Theme URI: https://pneumaxx.sk
Author: PNEUMAXX
Description: Vlastná WooCommerce téma pre PNEUMAXX – pneumatiky, disky a pneuservis.
Version: 0.10.0
Text Domain: pneumaxx
*/

:root {
  --pmx-red: #e30613;
  --pmx-red-dark: #b9000a;
  --pmx-black: #111214;
  --pmx-charcoal: #202226;
  --pmx-gray: #6d7178;
  --pmx-line: #e1e3e6;
  --pmx-soft: #f4f5f6;
  --pmx-white: #fff;
  --pmx-radius: 20px;
  --pmx-shadow: 0 14px 36px rgba(13,16,20,.11);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--pmx-black); background: #f0f1f2; font-family: "DIN Alternate", "Avenir Next", "Helvetica Neue", Arial, sans-serif; letter-spacing: .005em; }
body.home { color: #f5f6f7; background: #111317 url('assets/pneumaxx-warehouse-v3.png') center top / cover fixed no-repeat; }
body.page { color:#f5f6f7; background:#111317; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; }
button, input, select { font: inherit; }
.pmx-wrap { width: min(1460px, calc(100% - 44px)); margin: 0 auto; }

.pmx-topbar { background: #eceeef; font-size: 13px; font-weight: 800; }
body.home .pmx-topbar { color:#fff; background:rgba(15,17,20,.68); backdrop-filter:blur(10px); border-bottom:1px solid rgba(255,255,255,.08); }
body.page .pmx-topbar { color:#fff; background:#111317; border-bottom:1px solid rgba(255,255,255,.08); }
.pmx-topbar__inner { min-height: 42px; display: flex; align-items: center; gap: 42px; }
.pmx-topbar__item { display: flex; gap: 9px; align-items: center; white-space: nowrap; }
.pmx-topbar__item strong { color: var(--pmx-red); }
.pmx-topbar__spacer { flex: 1; }

.pmx-header { position: relative; z-index: 50; padding: 10px 0 13px; background: rgba(235,237,239,.9); }
body.home .pmx-header { padding:0; background:rgba(8,10,12,.58); backdrop-filter:blur(8px); border-bottom:1px solid rgba(255,255,255,.08); }
.pmx-header__inner { min-height: 84px; padding: 0 20px; display: grid; grid-template-columns: 310px 1fr auto; align-items: center; gap: 24px; background: rgba(255,255,255,.94); border: 1px solid rgba(255,255,255,.88); border-radius: 22px; box-shadow: var(--pmx-shadow); }
body.home .pmx-header { padding:10px 0 13px; background:transparent; border-bottom:0; backdrop-filter:none; }
body.home .pmx-header__inner { min-height:88px; background:rgba(42,45,49,.92); border:1px solid rgba(255,255,255,.13); border-radius:22px; box-shadow:0 18px 44px rgba(0,0,0,.32); backdrop-filter:blur(16px); }
body.page .pmx-header { background:#111317; }
body.page .pmx-header__inner { color:#fff; background:rgba(42,45,49,.96); border-color:rgba(255,255,255,.13); box-shadow:0 18px 44px rgba(0,0,0,.28); }
body.page .pmx-nav { color:#fff; }
body.page .pmx-action { color:#fff; border-color:rgba(255,255,255,.14); background:#34383d; }
.pmx-brand { width: 310px; height:76px; display:flex; align-items:center; overflow:visible; position:relative; }
.pmx-brand img { display:block; width:100%; max-width:310px; max-height:76px; object-fit:contain; object-position:left center; }
.pmx-brand__text { font-size: 33px; line-height: .92; font-weight: 1000; font-style: italic; letter-spacing: -2.5px; }
.pmx-brand__text span { color: var(--pmx-red); }
.pmx-brand__tag { display:block; margin-top: 2px; font-size: 11px; font-weight: 900; letter-spacing: 1.25px; }
.pmx-nav { display: flex; justify-content: center; gap: 34px; font-size: 14px; font-weight: 900; }
.pmx-nav li { list-style:none; }
body.home .pmx-nav { color:#fff; }
.pmx-nav a { position: relative; padding: 34px 0 29px; }
.pmx-nav a:hover::after, .pmx-nav .current-menu-item > a::after { content: ''; position: absolute; left: 0; right: 0; bottom: 19px; height: 2px; background: var(--pmx-red); }
.pmx-actions { display: flex; align-items: center; gap: 8px; }
.pmx-action { min-width: 78px; height: 64px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; padding:7px 9px; border:1px solid var(--pmx-line); border-radius:15px; font-size:11px; font-weight:850; background:#fff; transition:transform .18s ease,border-color .18s ease,background .18s ease; }
body.home .pmx-action { color:#fff; border-color:rgba(255,255,255,.16); background:rgba(59,64,69,.84); }
.pmx-action:hover { transform:translateY(-2px); border-color:rgba(227,6,19,.7); background:#42474c; }
.pmx-action__icon { width:25px; height:25px; display:block; line-height:1; }
.pmx-action__icon svg { width:100%; height:100%; display:block; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.pmx-action__cart { position:relative; display:block; }
.pmx-cart-count { position:absolute; top:-7px; right:-12px; min-width:20px; height:20px; padding:0 5px; display:inline-grid; place-items:center; border:2px solid #34383d; border-radius:99px; color:#fff; background:var(--pmx-red); font-size:10px; font-weight:900; }
.pmx-menu-toggle { display: none; border: 0; background: none; font-size: 26px; }

.pmx-hero { position: relative; min-height: 650px; overflow: hidden; background:linear-gradient(90deg, rgba(8,10,12,.12), rgba(8,10,12,.04) 50%, rgba(5,6,8,.18)); color: #fff; }
.pmx-hero::before { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(255,255,255,.08), transparent 40%, rgba(0,0,0,.16)); pointer-events:none; }
.pmx-hero__inner { position: relative; z-index: 2; min-height: 650px; display: grid; grid-template-columns: 400px minmax(450px,1fr) 420px; gap: 28px; align-items: center; padding: 32px 0 64px; }
.pmx-search { padding: 20px; color: #fff; background:linear-gradient(145deg,rgba(35,39,43,.93),rgba(21,24,28,.88)); border:1px solid rgba(255,255,255,.13); backdrop-filter:blur(14px); border-radius: 18px; box-shadow: 0 18px 46px rgba(0,0,0,.34); }
.pmx-search__title { margin-bottom: 8px; font-size: 17px; font-weight: 800; letter-spacing: .01em; }
.pmx-search__glass { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: var(--pmx-red); font-size: 22px; }
.pmx-size-controls { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; margin:18px 0 4px; }
.pmx-size-part { position:relative; min-width:0; padding:0 14px; border-right:1px solid rgba(255,255,255,.10); }
.pmx-size-part:first-child { padding-left:0; }
.pmx-size-part:last-child { padding-right:0; border-right:0; }
.pmx-size-part label { display:block; margin-bottom:5px; color:#aeb3b8; font-size:10px; font-weight:800; letter-spacing:.11em; }
.pmx-size-part select { width:100%; padding:0 22px 3px 0; border:0; border-bottom:3px solid transparent; border-radius:0; outline:0; appearance:none; -webkit-appearance:none; color:#f5f6f7; background:transparent; font-family:"DIN Alternate", "Avenir Next", sans-serif; font-size:30px; line-height:1.1; font-weight:800; letter-spacing:.015em; cursor:pointer; }
.pmx-size-part select option { color:#f5f6f7; background:#202328; font-size:14px; font-weight:700; }
.pmx-size-part:first-child select { border-bottom-color:var(--pmx-red); }
.pmx-size-part::after { content:'⌄'; position:absolute; right:14px; bottom:11px; color:#70757b; font-size:14px; pointer-events:none; }
.pmx-size-part:last-child::after { right:0; }
.pmx-quick-widths { display:flex; align-items:center; justify-content:space-between; gap:2px; margin:13px 0 14px; padding:0 2px; }
.pmx-quick-widths button { min-width:42px; padding:5px 3px; border:0; border-radius:8px; color:#aeb2b7; background:transparent; font-size:15px; font-weight:700; cursor:pointer; transition:.18s ease; }
.pmx-quick-widths button:hover { color:#fff; background:rgba(255,255,255,.05); }
.pmx-quick-widths button.is-active { color:#ff1823; font-weight:900; }
.pmx-field { margin: 9px 0; }
.pmx-field label { display: block; margin: 0 0 4px 8px; color: #c6c9cd; font-size: 9px; font-weight: 900; text-transform: uppercase; }
.pmx-field select { width: 100%; height: 53px; padding: 0 14px; border: 1px solid rgba(255,255,255,.14); border-radius: 13px; color: #fff; background: #3b4045; font-weight: 900; outline: none; }
.pmx-season-row { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; margin:10px 0 12px; }
.pmx-season-row label { cursor:pointer; }
.pmx-season-row input { position:absolute; opacity:0; pointer-events:none; }
.pmx-season-row span { min-height:39px; display:flex; align-items:center; justify-content:center; padding:6px; border:1px solid rgba(255,255,255,.13); border-radius:10px; color:#e1e3e5; background:rgba(42,46,50,.72); font-size:11px; font-weight:650; transition:.18s ease; }
.pmx-season-row input:checked + span { border-color:var(--pmx-red); color:#fff; background:rgba(227,6,19,.12); }
.pmx-season-icon { margin-right:7px; color:#d7dadc; font-size:18px; line-height:1; }
.pmx-season-icon--summer { color:#ffc21a; }
.pmx-season-icon--winter { color:#38b9ff; }
.pmx-brand-select { position:relative; margin:13px 0 8px; padding:8px 42px 7px 13px; border:1px solid rgba(255,255,255,.10); border-radius:12px; background:rgba(20,23,27,.48); transition:border-color .18s ease, background .18s ease; }
.pmx-brand-select:hover, .pmx-brand-select:focus-within { border-color:rgba(227,6,19,.72); background:rgba(25,28,32,.72); }
.pmx-brand-select label { display:block; margin:0 0 1px; color:#8f959b; font-size:8px; font-weight:900; letter-spacing:.14em; }
.pmx-brand-select select { height:27px; padding:0; border:0; border-radius:0; appearance:none; -webkit-appearance:none; color:#f4f5f6; background:transparent; font-size:14px; font-weight:800; }
.pmx-brand-select::after { content:'›'; position:absolute; right:15px; top:50%; color:var(--pmx-red); font-size:25px; font-weight:900; line-height:1; transform:translateY(-50%) rotate(90deg); pointer-events:none; }
.pmx-filter-more { display: none; }
.pmx-filter-more.is-open { display:block; padding-top:3px; }
.pmx-filter-grid { display:grid; grid-template-columns:1fr 1fr; gap:0 8px; }
.pmx-filter-grid .pmx-brand-select { margin:5px 0; }
.pmx-search__toggle { width: 100%; margin: 6px 0; padding: 8px; border: 0; color: #e5e7e9; background: transparent; font-weight: 800; cursor: pointer; }
.pmx-btn { display: inline-flex; justify-content: center; align-items: center; min-height: 48px; padding: 0 23px; border: 0; border-radius: 12px; color: #fff; background: linear-gradient(180deg, #f11620, #c80009); font-weight: 1000; text-transform: uppercase; cursor: pointer; box-shadow: 0 8px 18px rgba(227,6,19,.25); }
.pmx-btn--full { width: 100%; }
.pmx-hero__copy { padding-left: 4px; color:#fff; }
.pmx-kicker { color: #d5d6d8; font-size: 13px; font-weight: 900; letter-spacing: 2px; text-transform: uppercase; }
.pmx-hero h1 { max-width: 760px; margin: 8px 0 14px; font-size: clamp(44px, 4vw, 66px); line-height: .96; letter-spacing: -.025em; font-style: normal; font-weight: 900; text-transform: uppercase; text-shadow:0 1px 0 rgba(255,255,255,.18); }
.pmx-hero h1 span { color: var(--pmx-red); }
.pmx-hero__copy p { max-width: 610px; margin: 0; color: #f2f3f4; font-size: 18px; line-height: 1.45; font-weight: 800; text-shadow:0 2px 14px rgba(0,0,0,.5); }
.pmx-hero__mascot { position: relative; align-self: end; display: flex; justify-content: center; align-items: end; height: 500px; }
.pmx-hero__mascot img { max-height: 485px; width: auto; filter: drop-shadow(0 22px 26px rgba(0,0,0,.38)); }
.pmx-tire-visual { width: 320px; height: 320px; border: 42px solid #090a0c; border-radius: 50%; box-shadow: inset 0 0 0 5px #32353a, 0 30px 50px rgba(0,0,0,.5); background: radial-gradient(circle, transparent 0 42%, #15171a 43% 57%, transparent 58%); }

.pmx-trust { margin-top: 14px; position: relative; z-index: 5; }
.pmx-trust__inner { display: grid; grid-template-columns: repeat(4,1fr); overflow: hidden; border: 1px solid rgba(255,255,255,.12); border-radius: 16px; color:#fff; background: rgba(37,41,45,.82); backdrop-filter:blur(12px); box-shadow: 0 16px 34px rgba(0,0,0,.30); }
.pmx-trust__item { min-height:72px; padding: 13px 18px; display: flex; gap: 12px; align-items: center; border-right: 1px solid rgba(255,255,255,.10); }
.pmx-trust__item:last-child { border-right: 0; }
.pmx-trust__icon { font-size: 25px; }
.pmx-trust__item strong { display: block; font-size: 12px; text-transform: uppercase; }
.pmx-trust__item small { color: #c5c8cc; }

.pmx-categories { padding: 16px 0 0; }
body.home .pmx-categories { background:transparent; }
.pmx-category-grid { display: grid; grid-template-columns: repeat(6,1fr); border:1px solid rgba(255,255,255,.12); border-radius: 16px; overflow: hidden; color:#fff; background: rgba(37,41,45,.82); backdrop-filter:blur(12px); box-shadow:0 16px 34px rgba(0,0,0,.28); }
.pmx-category { min-height: 98px; display: flex; align-items: center; gap: 12px; padding: 16px; border-right: 1px solid var(--pmx-line); transition: .2s ease; }
.pmx-category:hover { background: #484d52; transform: translateY(-2px); }
.pmx-category:last-child { border-right: 0; }
.pmx-category__icon { position:relative; width: 60px; height: 60px; display: grid; place-items: center; flex: 0 0 60px; border-radius: 50%; color: #fff; background:radial-gradient(circle at center,#111 0 25%,#34383d 26% 43%,#0b0c0e 44% 62%,#24272b 63% 67%,transparent 68%); font-size: 18px; font-weight:900; text-shadow:0 1px 2px #000; }
.pmx-category__icon--summer { color:#ffc21a; }
.pmx-category__icon--winter { color:#38b9ff; }
.pmx-category__icon--allseason { color:#f1f2f3; }
.pmx-category__icon--suv, .pmx-category__icon--van, .pmx-category__icon--rim { border:1px solid rgba(255,255,255,.10); background:linear-gradient(145deg,#34383d,#15171a); font-size:13px; }
.pmx-category strong { display: block; font-size: 13px; text-transform: uppercase; }
.pmx-category span { color: #c6c9cc; font-size: 12px; }

.pmx-section { padding: 30px 0; }
body.home .pmx-section { background:transparent; }
body.home .pmx-section__head { padding:10px 16px; margin-bottom:10px; border:1px solid rgba(255,255,255,.12); border-radius:14px; color:#fff; background:rgba(55,59,64,.86); backdrop-filter:blur(10px); }
body.home .pmx-panel { color:#fff; border-color:rgba(255,255,255,.13); background:rgba(48,52,57,.88); backdrop-filter:blur(10px); box-shadow:0 16px 34px rgba(0,0,0,.28); }
body.home .woocommerce ul.products li.product { border-color:rgba(255,255,255,.13); color:#fff; background:rgba(59,64,69,.92); }
body.home .woocommerce ul.products li.product .woocommerce-loop-product__title { color:#fff; }
body.home .woocommerce ul.products li.product .price { color:#fff !important; }
.pmx-section__head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 15px; }
.pmx-section__head h2 { margin: 0; font-size: 25px; text-transform: uppercase; }
.pmx-section__head h2::after { content: ''; display: inline-block; width: 38px; height: 3px; margin-left: 13px; vertical-align: middle; background: var(--pmx-red); }
.pmx-section__head a { font-size: 13px; font-weight: 900; }
.pmx-panel { padding: 18px; border: 1px solid #e2e3e6; border-radius: var(--pmx-radius); background: #fff; box-shadow: var(--pmx-shadow); }

.woocommerce ul.products { display: grid !important; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 14px; margin: 0 !important; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none !important; }
.woocommerce ul.products li.product { width: auto !important; margin: 0 !important; padding: 17px !important; border: 1px solid #e0e2e5; border-radius: 17px; background: #fff; transition: transform .2s ease, box-shadow .2s ease; }
.woocommerce ul.products li.product:hover { transform: translateY(-4px); box-shadow: 0 14px 32px rgba(17,20,24,.12); }
.woocommerce ul.products li.product a img { aspect-ratio: 1 / 1; object-fit: contain; margin: 0 0 10px !important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { min-height: 46px; padding: 0 !important; color: #161719; font-size: 14px !important; line-height: 1.35; font-weight: 900; }
.woocommerce ul.products li.product .price { color: #111 !important; font-size: 20px !important; font-weight: 1000 !important; }
.woocommerce ul.products li.product .button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button { border-radius: 10px !important; color: #fff !important; background: var(--pmx-red) !important; }

.pmx-main { min-height: 60vh; padding: 28px 0 50px; }
.pmx-page { padding: 28px; border-radius: var(--pmx-radius); background: #fff; box-shadow: var(--pmx-shadow); }
.woocommerce .woocommerce-breadcrumb { color: #6c7076; }
.woocommerce div.product { padding: 24px; border-radius: var(--pmx-radius); background: #fff; box-shadow: var(--pmx-shadow); }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--pmx-red); }

/* Tmavý katalóg, výsledky vyhľadávania a detail produktu */
body.woocommerce-shop, body.post-type-archive-product, body.tax-product_cat, body.single-product { color:#f4f5f6; background:#111317 url('assets/pneumaxx-warehouse-v3.png') center top / cover fixed no-repeat; }
body.woocommerce-shop .pmx-topbar, body.post-type-archive-product .pmx-topbar, body.tax-product_cat .pmx-topbar, body.single-product .pmx-topbar { color:#fff; background:#111317; border-bottom:1px solid rgba(255,255,255,.08); }
body.woocommerce-shop .pmx-header, body.post-type-archive-product .pmx-header, body.tax-product_cat .pmx-header, body.single-product .pmx-header { background:#111317; }
body.woocommerce-shop .pmx-header__inner, body.post-type-archive-product .pmx-header__inner, body.tax-product_cat .pmx-header__inner, body.single-product .pmx-header__inner { color:#fff; background:rgba(42,45,49,.96); border-color:rgba(255,255,255,.13); box-shadow:0 18px 44px rgba(0,0,0,.3); }
body.woocommerce-shop .pmx-nav, body.post-type-archive-product .pmx-nav, body.tax-product_cat .pmx-nav, body.single-product .pmx-nav { color:#fff; }
body.woocommerce-shop .pmx-action, body.post-type-archive-product .pmx-action, body.tax-product_cat .pmx-action, body.single-product .pmx-action { color:#fff; border-color:rgba(255,255,255,.14); background:#34383d; }
body.woocommerce-shop .pmx-main > .pmx-wrap, body.post-type-archive-product .pmx-main > .pmx-wrap, body.tax-product_cat .pmx-main > .pmx-wrap { padding:28px; border:1px solid rgba(255,255,255,.12); border-radius:22px; background:rgba(35,38,42,.95); box-shadow:0 20px 46px rgba(0,0,0,.34); }
body.woocommerce-shop .woocommerce-products-header__title, body.post-type-archive-product .woocommerce-products-header__title, body.tax-product_cat .woocommerce-products-header__title { color:#fff; text-transform:uppercase; }
body.woocommerce-shop .woocommerce-result-count, body.post-type-archive-product .woocommerce-result-count, body.tax-product_cat .woocommerce-result-count, body.woocommerce-shop .woocommerce-breadcrumb, body.post-type-archive-product .woocommerce-breadcrumb, body.tax-product_cat .woocommerce-breadcrumb { color:#b8bdc2; }
body.woocommerce-shop .woocommerce-ordering select, body.post-type-archive-product .woocommerce-ordering select, body.tax-product_cat .woocommerce-ordering select { min-height:44px; padding:0 38px 0 13px; border:1px solid rgba(255,255,255,.14); border-radius:11px; color:#fff; background:#2d3136; }
body.woocommerce-shop .woocommerce ul.products li.product, body.post-type-archive-product .woocommerce ul.products li.product, body.tax-product_cat .woocommerce ul.products li.product { color:#fff; border-color:rgba(255,255,255,.13); background:rgba(59,64,69,.94); box-shadow:0 12px 28px rgba(0,0,0,.2); }
body.woocommerce-shop .woocommerce ul.products li.product .woocommerce-loop-product__title, body.post-type-archive-product .woocommerce ul.products li.product .woocommerce-loop-product__title, body.tax-product_cat .woocommerce ul.products li.product .woocommerce-loop-product__title, body.woocommerce-shop .woocommerce ul.products li.product .price, body.post-type-archive-product .woocommerce ul.products li.product .price, body.tax-product_cat .woocommerce ul.products li.product .price { color:#fff !important; }
body.single-product .pmx-main > .pmx-wrap { padding:0; }
body.single-product .woocommerce div.product { overflow:hidden; padding:30px; border:1px solid rgba(255,255,255,.13); color:#f4f5f6; background:rgba(38,42,47,.97); box-shadow:0 22px 52px rgba(0,0,0,.4); }
body.single-product .woocommerce div.product div.images { padding:18px; border-radius:18px; background:#fff; }
body.single-product .woocommerce div.product .product_title { color:#fff; font-size:clamp(26px,3vw,42px); line-height:1.08; }
body.single-product .woocommerce-product-details__short-description, body.single-product .woocommerce-tabs, body.single-product .woocommerce-Tabs-panel { color:#d8dce0; }
body.single-product .woocommerce div.product form.cart { display:flex; align-items:center; gap:20px; margin-top:24px; padding-top:20px; border-top:1px solid rgba(255,255,255,.1); }
body.single-product .woocommerce div.product form.cart .quantity, body.single-product .woocommerce div.product form.cart .single_add_to_cart_button { float:none; margin:0 !important; }
body.single-product .woocommerce div.product form.cart .single_add_to_cart_button { min-height:52px; padding:0 28px !important; }
body.single-product .product_meta .sku_wrapper { display:none !important; }
body.single-product .product_meta { color:#aeb4ba; }
body.single-product .woocommerce-tabs ul.tabs::before { border-color:rgba(255,255,255,.12) !important; }
body.single-product .woocommerce-tabs ul.tabs li { border-color:rgba(255,255,255,.12) !important; background:#2c3035 !important; }
body.single-product .woocommerce-tabs ul.tabs li.active { background:#e30613 !important; }
body.single-product .woocommerce-tabs ul.tabs li a { color:#fff !important; }
.pmx-product-info { clear:both; margin:20px 0 4px; padding:20px; border:1px solid rgba(255,255,255,.12); border-radius:16px; background:rgba(17,19,22,.56); }
.pmx-product-info__head { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; margin-bottom:15px; }
.pmx-product-info__head h2 { margin:0 0 5px; color:#fff; font-size:20px; }
.pmx-product-info__head p { margin:0; color:#aeb4ba; font-size:13px; line-height:1.5; }
.pmx-product-info__badge { flex:0 0 auto; padding:6px 10px; border-radius:99px; color:#fff; background:rgba(227,6,19,.18); border:1px solid rgba(227,6,19,.48); font-size:11px; font-weight:900; }
.pmx-spec-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.pmx-spec { min-height:68px; padding:11px 12px; border:1px solid rgba(255,255,255,.09); border-radius:11px; background:rgba(255,255,255,.035); }
.pmx-spec span,.pmx-spec strong { display:block; }
.pmx-spec span { margin-bottom:4px; color:#8f969d; font-size:10px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.pmx-spec strong { color:#fff; font-size:15px; }
.pmx-stock-high { color:#61d58b !important; font-weight:900; }

.pmx-footer { margin-top:30px; padding:0 0 28px; color:#fff; background:#101113; }
body.home .pmx-footer, .pmx-dark-page + .pmx-footer { background:transparent; border-top:0; }
.pmx-footer__card { padding:0 25px; border:1px solid rgba(255,255,255,.12); border-radius:22px; background:rgba(35,38,42,.94); backdrop-filter:blur(14px); box-shadow:0 18px 42px rgba(0,0,0,.3); overflow:hidden; }
.pmx-footer__top { padding: 32px 0; display: grid; grid-template-columns: 1.4fr repeat(3,1fr); gap: 32px; }
.pmx-footer h3 { margin: 0 0 12px; font-size: 14px; text-transform: uppercase; }
.pmx-footer p, .pmx-footer a { color: #c8cacf; font-size: 13px; line-height: 1.7; }
.pmx-footer__bottom { border-top: 1px solid #2c2e32; padding: 18px 0; display: flex; justify-content: space-between; color: #8f939a; font-size: 12px; }
.pmx-footer__slogan { color: #fff; font-size: 18px; font-weight: 1000; font-style: italic; text-transform: uppercase; }
.pmx-footer__slogan span { color: var(--pmx-red); }
.pmx-footer__brand { display:block; width:min(330px,100%); max-height:125px; object-fit:contain; object-position:left center; }

/* Dark inner pages */
.pmx-dark-page { min-height:65vh; padding:10px 0 30px; color:#f4f5f6; background:#111317 url('assets/pneumaxx-warehouse-v3.png') center top / cover fixed no-repeat; }
.pmx-page-hero, .pmx-simple-hero { position:relative; padding:26px 0; }
.pmx-page-hero__grid, .pmx-simple-hero__inner { position:relative; overflow:hidden; min-height:510px; padding:30px; display:grid; align-items:center; gap:30px; border:1px solid rgba(255,255,255,.12); border-radius:24px; background:linear-gradient(110deg,rgba(36,39,43,.96),rgba(17,19,22,.83)); box-shadow:0 20px 48px rgba(0,0,0,.38); backdrop-filter:blur(14px); }
.pmx-page-hero__grid { grid-template-columns:400px minmax(360px,1fr) 330px; }
.pmx-page-hero--rims .pmx-page-hero__grid { min-height:560px; background-image:linear-gradient(90deg,rgba(12,14,17,.9) 0,rgba(12,14,17,.68) 45%,rgba(12,14,17,.06) 73%),url('assets/pneumaxx-disks-banner-v1.png'); background-position:center; background-size:cover; }
.pmx-page-hero--rims .pmx-page-hero__copy { align-self:center; padding:22px; border:1px solid rgba(255,255,255,.08); border-radius:18px; background:rgba(14,16,19,.48); backdrop-filter:blur(5px); }
.pmx-page-hero__copy h1, .pmx-simple-hero h1 { margin:10px 0 17px; color:#fff; font-size:clamp(42px,4.1vw,66px); line-height:.95; letter-spacing:-.035em; text-transform:uppercase; }
.pmx-page-hero__copy h1 em { color:var(--pmx-red); font-style:normal; }
.pmx-page-hero__copy p, .pmx-simple-hero p { max-width:620px; color:#d3d6da; font-size:17px; line-height:1.55; }
.pmx-page-kicker { color:#aeb3b8; font-size:12px; font-weight:900; letter-spacing:.14em; }
.pmx-finder { padding:18px; border:1px solid rgba(255,255,255,.12); border-radius:18px; background:rgba(18,20,23,.72); box-shadow:0 15px 34px rgba(0,0,0,.25); }
.pmx-finder__tabs { display:grid; grid-template-columns:1fr 1fr; padding:4px; border-radius:12px; background:#2b2e33; }
.pmx-finder__tabs button { min-height:42px; border:0; border-radius:9px; color:#adb1b6; background:transparent; font-weight:850; cursor:pointer; }
.pmx-finder__tabs button.is-active { color:#fff; background:#15171a; box-shadow:0 5px 14px rgba(0,0,0,.25); }
.pmx-finder__pane { display:none; }
.pmx-finder__pane.is-active { display:block; }
.pmx-finder__head { display:flex; gap:11px; align-items:center; margin:16px 0 10px; }
.pmx-finder__head > span { width:35px; height:35px; display:grid; place-items:center; border-radius:9px; color:#fff; background:var(--pmx-red); font-weight:900; }
.pmx-finder__head strong, .pmx-finder__head small { display:block; }
.pmx-finder__head small { margin-top:2px; color:#92979e; }
.pmx-finder__fields { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-bottom:12px; }
.pmx-rim-field { position:relative; min-width:0; padding:8px 38px 7px 13px; border:1px solid rgba(255,255,255,.12); border-radius:12px; background:rgba(20,23,27,.8); transition:border-color .18s ease,background .18s ease; }
.pmx-rim-field:hover,.pmx-rim-field:focus-within { border-color:rgba(227,6,19,.75); background:rgba(31,34,39,.94); }
.pmx-rim-field label { display:block; margin:0 0 1px; color:#8f959b; font-size:8px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.pmx-rim-field select { width:100%; height:29px; padding:0; border:0; border-radius:0; outline:0; appearance:none; -webkit-appearance:none; color:#f5f6f7; background:transparent; font-size:13px; font-weight:850; cursor:pointer; }
.pmx-rim-field select option { color:#f5f6f7; background:#202328; font-size:14px; }
.pmx-rim-field::after { content:'›'; position:absolute; right:14px; top:50%; color:var(--pmx-red); font-size:24px; font-weight:900; line-height:1; transform:translateY(-50%) rotate(90deg); pointer-events:none; }
.pmx-rim-banner-space { min-height:360px; }
.pmx-rim-art { display:grid; place-items:center; min-height:360px; }
.pmx-rim-art__wheel { width:310px; aspect-ratio:1; display:block; border:40px solid #090a0c; border-radius:50%; background:repeating-conic-gradient(from 8deg,#dadde1 0 7deg,#1a1c1f 8deg 20deg); box-shadow:inset 0 0 0 14px #373a3e,inset 0 0 0 54px #111317,0 30px 45px rgba(0,0,0,.55); transform:perspective(800px) rotateY(-12deg); }
.pmx-rim-art__wheel i { width:70px; height:70px; display:block; margin:80px; border:11px solid #aeb2b7; border-radius:50%; background:#17191c; }
.pmx-feature-grid, .pmx-service-grid, .pmx-info-grid, .pmx-contact-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:14px; }
.pmx-feature-grid article, .pmx-service-grid article, .pmx-info-grid article, .pmx-contact-grid a { padding:24px; border:1px solid rgba(255,255,255,.11); border-radius:18px; background:rgba(43,47,52,.9); box-shadow:0 14px 34px rgba(0,0,0,.22); }
.pmx-feature-grid b, .pmx-info-grid b, .pmx-contact-grid b { display:block; margin-bottom:8px; color:var(--pmx-red); font-size:25px; }
.pmx-feature-grid strong, .pmx-feature-grid span, .pmx-contact-grid span, .pmx-contact-grid strong { display:block; }
.pmx-feature-grid span, .pmx-info-grid p, .pmx-contact-grid span { margin-top:5px; color:#abb0b6; line-height:1.5; }
.pmx-page-hero__grid--service { grid-template-columns:minmax(420px,1fr) 350px 300px; }
.pmx-page-mascot { align-self:end; max-height:455px; object-fit:contain; filter:drop-shadow(0 22px 28px rgba(0,0,0,.4)); }
.pmx-service-hours { padding:23px; border:1px solid rgba(255,255,255,.12); border-radius:18px; background:rgba(20,22,25,.68); }
.pmx-service-hours > strong { color:var(--pmx-red); }
.pmx-service-hours div { display:flex; justify-content:space-between; gap:15px; padding:18px 0; border-bottom:1px solid rgba(255,255,255,.09); }
.pmx-service-hours div span { color:#adb1b6; }
.pmx-service-hours small { display:block; padding-top:17px; color:#8f949b; }
.pmx-service-grid article span { display:inline-block; padding:5px 9px; border-radius:99px; color:#fff; background:var(--pmx-red); font-size:11px; font-weight:900; }
.pmx-service-grid h2, .pmx-info-grid h2 { margin:13px 0 7px; font-size:19px; }
.pmx-service-grid p { color:#aeb2b7; line-height:1.5; }
.pmx-location-card { overflow:hidden; display:grid; grid-template-columns:1fr 1.25fr; margin-top:14px; border:1px solid rgba(255,255,255,.11); border-radius:20px; background:rgba(38,42,46,.94); }
.pmx-location-card > div { padding:32px; }
.pmx-location-card iframe { width:100%; min-height:330px; border:0; filter:grayscale(.8) contrast(1.05) brightness(.8); }
.pmx-simple-hero__inner { min-height:390px; grid-template-columns:1fr 350px; }
.pmx-simple-hero__inner > img { align-self:end; max-height:360px; justify-self:center; filter:drop-shadow(0 20px 25px rgba(0,0,0,.38)); }
.pmx-contact-grid a { transition:.18s ease; }
.pmx-contact-grid a:hover { border-color:rgba(227,6,19,.55); transform:translateY(-3px); }

/* WooCommerce košík, pokladňa a prihlásenie v PNEUMAXX téme */
body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-account { color:#f4f5f6; background:#111317 url('assets/pneumaxx-warehouse-v3.png') center top / cover fixed no-repeat; }
body.woocommerce-cart .pmx-topbar, body.woocommerce-checkout .pmx-topbar, body.woocommerce-account .pmx-topbar { color:#fff; background:#111317; border-bottom:1px solid rgba(255,255,255,.08); }
body.woocommerce-cart .pmx-header, body.woocommerce-checkout .pmx-header, body.woocommerce-account .pmx-header { background:#111317; }
body.woocommerce-cart .pmx-header__inner, body.woocommerce-checkout .pmx-header__inner, body.woocommerce-account .pmx-header__inner { color:#fff; background:rgba(42,45,49,.96); border-color:rgba(255,255,255,.13); box-shadow:0 18px 44px rgba(0,0,0,.3); }
body.woocommerce-cart .pmx-nav, body.woocommerce-checkout .pmx-nav, body.woocommerce-account .pmx-nav { color:#fff; }
body.woocommerce-cart .pmx-action, body.woocommerce-checkout .pmx-action, body.woocommerce-account .pmx-action { color:#fff; border-color:rgba(255,255,255,.14); background:#34383d; }
body.woocommerce-cart .pmx-main, body.woocommerce-checkout .pmx-main, body.woocommerce-account .pmx-main { padding-top:34px; }
body.woocommerce-cart .pmx-main > .pmx-wrap, body.woocommerce-checkout .pmx-main > .pmx-wrap, body.woocommerce-account .pmx-main > .pmx-wrap { padding:26px; border:1px solid rgba(255,255,255,.12); border-radius:22px; background:rgba(35,38,42,.95); box-shadow:0 20px 46px rgba(0,0,0,.34); backdrop-filter:blur(14px); }
.woocommerce-cart h1,.woocommerce-checkout h1,.woocommerce-account h1,.woocommerce-cart h2,.woocommerce-checkout h2,.woocommerce-account h2 { color:#fff; }
.woocommerce table.shop_table { overflow:hidden; border:1px solid rgba(255,255,255,.12) !important; border-radius:16px !important; color:#f4f5f6; background:rgba(18,20,23,.56); border-collapse:separate !important; }
.woocommerce table.shop_table th { color:#aeb3b8; background:rgba(255,255,255,.035); font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
.woocommerce table.shop_table td,.woocommerce table.shop_table th { padding:14px !important; border-color:rgba(255,255,255,.09) !important; }
.woocommerce table.shop_table td.product-name a { color:#fff; font-weight:850; }
.woocommerce-cart table.cart img { width:76px !important; padding:5px; border-radius:12px; background:#fff; }
.woocommerce a.remove { color:#fff !important; background:rgba(227,6,19,.72); }
.woocommerce a.remove:hover { color:#fff !important; background:var(--pmx-red) !important; }
.woocommerce .quantity .qty,.woocommerce-cart table.cart td.actions .coupon .input-text,.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select { min-height:46px; border:1px solid rgba(255,255,255,.14); border-radius:11px; outline:0; color:#fff; background:#2d3136; }
.woocommerce .quantity .qty { width:72px; }
.woocommerce-cart .cart-collaterals .cart_totals,.woocommerce-checkout #order_review,.woocommerce-checkout .woocommerce-billing-fields,.woocommerce-checkout .woocommerce-shipping-fields,.woocommerce-account form.login,.woocommerce-account form.register,.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content { padding:22px; border:1px solid rgba(255,255,255,.12); border-radius:17px; background:rgba(19,21,24,.7); }
.woocommerce-cart .cart-collaterals .cart_totals { width:min(100%,520px); }
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,.woocommerce #payment #place_order { min-height:52px; display:flex; align-items:center; justify-content:center; border-radius:12px !important; background:linear-gradient(180deg,#f11620,#c80009) !important; font-weight:900 !important; text-transform:uppercase; }
.woocommerce-checkout #payment { color:#f4f5f6; background:#25292e !important; border-radius:14px !important; }
.woocommerce-checkout #payment div.payment_box { color:#d8dade; background:#34383d !important; }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color:#34383d !important; }
.woocommerce form .form-row label { color:#c8cbd0; font-size:12px; font-weight:800; }
.woocommerce .select2-container--default .select2-selection--single { height:46px; border:1px solid rgba(255,255,255,.14); border-radius:11px; color:#fff; background:#2d3136; }
.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered { color:#fff; line-height:44px; }
.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow { height:44px; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { margin:0; padding:0; list-style:none; }
.woocommerce-account .woocommerce-MyAccount-navigation a { display:block; padding:11px 13px; border-bottom:1px solid rgba(255,255,255,.08); color:#e1e3e5; font-weight:800; }
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a { color:#fff; border-radius:9px; background:var(--pmx-red); }
.woocommerce-error,.woocommerce-info,.woocommerce-message { color:#f4f5f6; border-top-color:var(--pmx-red) !important; border-radius:12px; background:#292d32 !important; }
.woocommerce-info::before,.woocommerce-message::before { color:var(--pmx-red) !important; }
.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout { color:#f4f5f6; }
.wc-block-components-sidebar-layout .wc-block-components-main,.wc-block-components-sidebar,.wc-block-cart-items,.wc-block-components-order-summary { border-color:rgba(255,255,255,.12) !important; }
.wc-block-components-totals-wrapper { border-color:rgba(255,255,255,.1) !important; }
.wc-block-components-text-input input,.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input { color:#fff !important; border-color:rgba(255,255,255,.14) !important; border-radius:11px !important; background:#2d3136 !important; }
.wc-block-components-button:not(.is-link) { min-height:52px; border-radius:12px; color:#fff; background:linear-gradient(180deg,#f11620,#c80009); font-weight:900; text-transform:uppercase; }

@media (max-width: 1180px) {
  .pmx-header__inner { grid-template-columns: 220px 1fr auto; }
  .pmx-nav { gap: 18px; font-size: 12px; }
  .pmx-actions .pmx-action:first-child { display: flex; }
  .pmx-hero__inner { grid-template-columns: 350px 1fr 290px; }
  .pmx-category-grid { grid-template-columns: repeat(3,1fr); }
  .woocommerce ul.products { grid-template-columns: repeat(4,minmax(0,1fr)); }
}

@media (max-width: 900px) {
  .pmx-wrap { width: min(100% - 26px, 760px); }
  .pmx-topbar__inner { overflow-x: auto; gap: 22px; }
  .pmx-header { padding: 7px 0; }
  .pmx-header__inner { min-height: 70px; grid-template-columns: 1fr auto auto; padding: 0 15px; }
  .pmx-brand { width:210px; height:58px; }
  .pmx-brand img { width:210px; max-width:210px; max-height:58px; }
  .pmx-nav { display: none; position: absolute; top: 83px; left: 13px; right: 13px; padding: 12px 18px; flex-direction: column; gap: 0; border-radius: 15px; background: #fff; box-shadow: var(--pmx-shadow); }
  body.home .pmx-nav { color:#fff; background:rgba(55,59,64,.97); border:1px solid rgba(255,255,255,.14); }
  body.woocommerce-shop .pmx-nav, body.post-type-archive-product .pmx-nav, body.tax-product_cat .pmx-nav, body.single-product .pmx-nav, body.woocommerce-cart .pmx-nav, body.woocommerce-checkout .pmx-nav, body.woocommerce-account .pmx-nav { color:#fff; background:rgba(55,59,64,.98); border:1px solid rgba(255,255,255,.14); }
  .pmx-nav.is-open { display: flex; }
  .pmx-nav a { padding: 14px 0; }
  .pmx-nav a:hover::after { bottom: 8px; }
  .pmx-menu-toggle { display: block; }
  .pmx-actions .pmx-action { min-width: 62px; height: 56px; }
  .pmx-hero, .pmx-hero__inner { min-height: auto; }
  .pmx-hero__inner { grid-template-columns: 1fr; gap: 25px; padding: 30px 0; }
  .pmx-search { order: 2; }
  .pmx-hero__copy { order: 1; padding: 10px 0; }
  .pmx-hero__mascot { display: none; }
  .pmx-hero h1 { font-size: clamp(42px, 11vw, 66px); }
  .pmx-trust { margin-top: 13px; }
  .pmx-trust__inner { grid-template-columns: repeat(2,1fr); }
  .pmx-trust__item:nth-child(2) { border-right: 0; }
  .pmx-category-grid { grid-template-columns: repeat(2,1fr); }
  .woocommerce ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pmx-footer__top { grid-template-columns: 1fr 1fr; }
  .pmx-page-hero__grid, .pmx-page-hero__grid--service, .pmx-simple-hero__inner { grid-template-columns:1fr; min-height:auto; }
  .pmx-page-hero__copy { order:1; }
  .pmx-finder { order:2; }
  .pmx-rim-art, .pmx-rim-banner-space, .pmx-page-mascot { display:none; }
  .pmx-feature-grid, .pmx-service-grid, .pmx-info-grid, .pmx-contact-grid { grid-template-columns:1fr; }
  .pmx-location-card { grid-template-columns:1fr; }
}

@media (max-width: 560px) {
  .pmx-topbar__item:nth-child(3), .pmx-topbar__item:nth-child(4) { display: none; }
  .pmx-header__inner { grid-template-columns: 1fr auto auto; gap: 7px; }
  .pmx-menu-toggle { grid-column: 3; grid-row: 1; }
  .pmx-actions { display:flex; }
  .pmx-actions .pmx-action:first-child { display:flex; }
  .pmx-actions .pmx-action { min-width:43px; width:43px; height:45px; padding:0; }
  .pmx-actions .pmx-action > span:last-child { display:none; }
  .pmx-action__icon { font-size:22px; }
  .pmx-brand__text { font-size: 27px; }
  .pmx-hero h1 { letter-spacing: -2px; }
  .pmx-trust__inner { grid-template-columns: 1fr; }
  .pmx-trust__item { border-right: 0; border-bottom: 1px solid var(--pmx-line); }
  .pmx-category-grid { grid-template-columns: 1fr; }
  .woocommerce ul.products { grid-template-columns: 1fr; gap: 12px; }
  .woocommerce ul.products li.product { padding: 14px !important; }
  .pmx-footer__top { grid-template-columns: 1fr; }
  .pmx-footer__bottom { flex-direction: column; gap: 9px; }
  .pmx-brand { width:155px; height:50px; }
  .pmx-brand img { width:155px; max-width:155px; max-height:50px; }
  .pmx-size-part select { font-size:24px; }
  .pmx-filter-grid, .pmx-finder__fields { grid-template-columns:1fr; }
  .pmx-page-hero__grid, .pmx-simple-hero__inner { padding:20px; }
  body.woocommerce-cart .pmx-main > .pmx-wrap, body.woocommerce-checkout .pmx-main > .pmx-wrap, body.woocommerce-account .pmx-main > .pmx-wrap { padding:16px; }
  .woocommerce-cart table.cart img { width:58px !important; }
  body.woocommerce-shop .pmx-main > .pmx-wrap, body.post-type-archive-product .pmx-main > .pmx-wrap, body.tax-product_cat .pmx-main > .pmx-wrap { padding:16px; }
  body.single-product .woocommerce div.product { padding:16px; border-radius:16px; }
  body.single-product .woocommerce div.product div.images { padding:10px; }
  body.single-product .woocommerce div.product form.cart { align-items:stretch; gap:12px; flex-wrap:wrap; }
  body.single-product .woocommerce div.product form.cart .quantity { flex:0 0 74px; }
  body.single-product .woocommerce div.product form.cart .single_add_to_cart_button { flex:1 1 180px; min-height:52px; }
  .pmx-product-info { padding:15px; }
  .pmx-product-info__head { flex-direction:column; }
  .pmx-spec-grid { grid-template-columns:1fr 1fr; }
  .pmx-spec { min-height:64px; }
  .woocommerce div.product .woocommerce-tabs ul.tabs { display:flex; overflow-x:auto; padding:0 !important; }
  .woocommerce div.product .woocommerce-tabs ul.tabs li { flex:0 0 auto; margin:0 5px 0 0 !important; }
}
