/*
Theme Name: Mega Power
Theme URI: https://megapower-ukr.com/
Author: ADWEB24
Description: Кастомна тема MEGA POWER - промислове електрообладнання. Дизайн у структурі acko.ua.
Version: 1.3.44
License: GNU General Public License v2 or later
Text Domain: megapower
*/

* { margin: 0; padding: 0; box-sizing: border-box; }
:root { --blue: #414C58; --blue2: #5F6B77; --yellow: #C9CFD6; --dark: #22282F; --gray: #656565; --line: #E4E4E4; --bg: #F8F8F8; }
body { font-family: 'Montserrat', 'Segoe UI', sans-serif; color: var(--dark); background: #fff; font-size: 14px; line-height: 1.43; overflow-x: clip; }
/* вирівнювання карток архівів: однакова висота в рядку, кнопки на одній лінії */
.woocommerce ul.products { display: flex; flex-wrap: wrap; }
.woocommerce ul.products li.product { display: flex; flex-direction: column; }
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link { display: flex; flex-direction: column; flex: 1 0 auto; }
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link .price { margin-top: auto; }
/* Ціни (команда Андрія 22.10.2026): жирні; товар у наявності - темно-зелена ціна */
.woocommerce ul.products li.product .price { font-size: 18px; font-weight: 800; color: var(--dark); }
.woocommerce ul.products li.product.instock .price { color: #166534; }
.woocommerce div.product p.price { font-weight: 800; color: var(--dark); }
.woocommerce div.product.instock p.price { color: #166534; }
.mp-unit { font-size: .68em; font-weight: 600; color: #8A939C; white-space: nowrap; }
/* Немає в наявності: ціна жирна і червона (команда Андрія 22.10.2026) */
.woocommerce ul.products li.product.outofstock .price { color: #C62828; }
.woocommerce div.product.outofstock p.price { color: #C62828; font-weight: 800; }
.woocommerce div.product p.stock.out-of-stock { color: #C62828; font-weight: 700; }
/* Блокова колекція товарів (крос-сейл у кошику): читабельні підписи і ціни, як у картках теми */
.wp-block-woocommerce-product-collection .wp-block-post-title { font-size: 15px; line-height: 1.35; }
.wp-block-woocommerce-product-collection .wp-block-post-title a { color: var(--dark); font-weight: 600; text-decoration: none; }
.wp-block-woocommerce-product-collection .wp-block-woocommerce-product-price { font-size: 17px; font-weight: 800; color: #166534; }
.woocommerce .price del { color: #8A939C; font-weight: 600; }
.woocommerce .price ins { text-decoration: none; }
.woocommerce ul.products li.product .button { align-self: flex-start; margin-top: 10px; }
.woocommerce ul.products li.product .oosbtn { align-self: flex-start; margin-top: 10px; display: inline-block; padding: 12px 18px; border-radius: 6px; background: #EDEFF1; color: #8A939C; font-weight: 700; font-size: 13.5px; }
.woocommerce ul.products li.product img { width: 100%; height: 200px; object-fit: contain; }
/* довгі назви/артикули товарів не розпирають сітку архівів */
.woocommerce ul.products li.product { overflow: hidden; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { overflow-wrap: anywhere; word-break: break-word; font-size: 14px; font-weight: 600; line-height: 1.43; }
.woocommerce ul.products li.product img { width: 100%; height: auto; }
.wrap { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
/* --- верхня смуга --- */
.topbar { background: var(--bg); border-bottom: 1px solid var(--line); font-size: 12.5px; color: var(--gray); }
.topbar .wrap { display: flex; justify-content: space-between; padding-top: 8px; padding-bottom: 8px; flex-wrap: wrap; gap: 6px; }
.topbar a { color: var(--blue); text-decoration: none; font-weight: 600; margin-left: 16px; }
/* --- шапка --- */
header.main .wrap { display: flex; align-items: center; gap: 22px; padding-top: 16px; padding-bottom: 16px; }
.logo img { height: 68px; display: block; }
form.search { flex: 1; display: flex; max-width: 480px; }
form.search input { flex: 1; padding: 12px 16px; border: 2px solid var(--blue); border-right: none; border-radius: 6px 0 0 6px; font-size: 14px; font-family: inherit; }
form.search button { background: linear-gradient(180deg, #8A939C, var(--blue)); color: #fff; border: none; padding: 0 24px; border-radius: 0 6px 6px 0; font-weight: 700; cursor: pointer; font-family: inherit; }
.hphone { text-align: right; }
.hphone a { font-size: 18px; font-weight: 800; color: var(--dark); text-decoration: none; display: block; }
.hphone small { color: var(--gray); font-size: 12px; }
.btn { display: inline-block; padding: 13px 26px; border-radius: 6px; font-weight: 600; font-size: 16px; text-decoration: none; cursor: pointer; border: none; font-family: inherit; white-space: nowrap; }
.btn.y { background: linear-gradient(180deg, #EDEFF1, var(--yellow)); color: var(--dark); }
.btn.b { background: linear-gradient(180deg, #8A939C, var(--blue)); color: #fff; }
.cartbtn { background: linear-gradient(180deg, #EDEFF1, var(--yellow)); color: var(--dark); border: none; padding: 12px 18px; border-radius: 6px; font-weight: 800; font-size: 13.5px; cursor: pointer; font-family: inherit; white-space: nowrap; text-decoration: none; display: inline-block; }
.accbtn { border: 1.5px solid var(--blue); color: var(--blue); padding: 10px 16px; border-radius: 6px; font-weight: 700; font-size: 13.5px; text-decoration: none; white-space: nowrap; display: inline-block; }
.accbtn:hover { background: linear-gradient(180deg, #8A939C, var(--blue)); color: #fff; }
/* --- головне меню у шапці (білий ряд) --- */
header.main { position: relative; }
.topmenu { margin-left: auto; }
.topmenu ul { display: flex; flex-wrap: wrap; list-style: none; margin: 0; padding: 0; gap: 2px; }
.topmenu ul li { margin: 0; }
.topmenu a { display: block; color: var(--dark); text-decoration: none; padding: 10px 14px; font-weight: 600; font-size: 14px; border-radius: 6px; }
.topmenu a:hover { background: #EDEFF1; }
/* активний пункт меню: глянцеве срібло */
.topmenu li.current-menu-item > a,
.topmenu li.current-menu-parent > a,
.topmenu li.current-menu-ancestor > a { background: linear-gradient(180deg, #F4F6F8 0%, #D8DDE2 47%, #BEC5CC 53%, #AEB6BE 100%); color: var(--dark); text-shadow: 0 1px 0 rgba(255,255,255,.6); box-shadow: inset 0 1px 0 rgba(255,255,255,.8), inset 0 -2px 4px rgba(0,0,0,.18); }
.burger { display: none; background: none; border: none; color: var(--dark); font-size: 26px; line-height: 1; padding: 8px 6px; cursor: pointer; }
/* --- ряд каталогу: кнопка, пошук, кошик --- */
.catbar { background: linear-gradient(180deg, #8A939C 0%, #414C58 47%, #313A43 53%, #22282F 100%); position: sticky; top: 0; z-index: 50; box-shadow: inset 0 1px 0 rgba(255,255,255,.35), inset 0 -2px 5px rgba(0,0,0,.35), 0 3px 8px rgba(0,0,0,.22); padding: 10px 0; }
/* відступ під адмін-панель WordPress, коли користувач залогінений */
body.admin-bar .catbar { top: 32px; }
@media screen and (max-width: 782px) {
  body.admin-bar .catbar { top: 46px; }
}
.catbar .wrap { display: flex; align-items: center; gap: 16px; }
.catdd { position: relative; flex-shrink: 0; }
.catbtn { background: linear-gradient(180deg, #F4F6F8 0%, #D8DDE2 47%, #BEC5CC 53%, #AEB6BE 100%); color: var(--dark); border: none; padding: 12px 22px; border-radius: 6px; font-weight: 800; font-size: 14px; cursor: pointer; font-family: inherit; white-space: nowrap; text-shadow: 0 1px 0 rgba(255,255,255,.6); box-shadow: inset 0 1px 0 rgba(255,255,255,.8), inset 0 -2px 4px rgba(0,0,0,.18); }
.catpanel { display: none; position: absolute; top: calc(100% + 12px); left: 0; width: 660px; max-width: 92vw; background: #fff; border-radius: 10px; box-shadow: 0 18px 44px rgba(34,40,47,.28); padding: 12px; z-index: 80; grid-template-columns: repeat(3, 1fr); gap: 2px 10px; }
.catdd.open .catpanel { display: grid; }
.catpanel a { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 9px 10px; color: var(--dark); text-decoration: none; font-size: 13.5px; font-weight: 600; border-radius: 6px; }
.catpanel a:hover { background: #EDEFF1; color: var(--blue); }
.catpanel .cnt { color: #8A939C; font-size: 12px; font-weight: 600; }
.catbar form.search { flex: 1; max-width: none; }
.catbar form.search input { border-color: #fff; }
.catbar form.search button { background: linear-gradient(180deg, #EDEFF1, var(--yellow)); color: var(--dark); }
/* --- hero-слайдер --- */
.hero { position: relative; background: linear-gradient(180deg, #FFFFFF, var(--bg)); overflow: hidden; display: grid; }
.hslide { grid-area: 1 / 1; display: grid; grid-template-columns: 1fr 1fr; gap: 30px; align-items: center; padding: 46px 0 60px; visibility: hidden; opacity: 0; pointer-events: none; transition: opacity .35s ease, visibility 0s linear .35s; }
.hslide.active { visibility: visible; opacity: 1; pointer-events: auto; transition: opacity .35s ease, visibility 0s; }
@keyframes fade { from { opacity: 0; } to { opacity: 1; } }
.eyebrow { display: inline-block; background: var(--yellow); color: var(--dark); font-size: 12px; font-weight: 700; padding: 5px 14px; border-radius: 4px; margin-bottom: 14px; text-transform: uppercase; letter-spacing: .5px; }
.hslide h1, .hslide h2 { font-size: 38px; font-weight: 600; color: var(--blue); margin-bottom: 12px; line-height: 1.21; }
.hslide p { color: var(--gray); font-size: 15px; margin-bottom: 22px; max-width: 480px; }
.pimg-hero { border-radius: 10px; overflow: hidden; height: 290px; box-shadow: 0 10px 30px rgba(65,76,88,.15); }
.pimg-hero img { width: 100%; height: 100%; object-fit: cover; display: block; }
.hdots { position: absolute; bottom: 18px; left: 50%; transform: translateX(-50%); display: flex; gap: 8px; }
.hdots span { width: 10px; height: 10px; border-radius: 50%; background: #C9C9C9; cursor: pointer; }
.hdots span.on { background: var(--blue); }
.harrow { position: absolute; top: 42%; width: 42px; height: 42px; border-radius: 50%; background: transparent; border: none; color: var(--blue); font-size: 24px; font-weight: 800; cursor: pointer; box-shadow: none; text-shadow: 0 1px 6px rgba(255,255,255,.95), 0 0 3px rgba(255,255,255,.95); z-index: 5; }
.harrow.prev { left: 8px; right: auto; } .harrow.next { right: 8px; }
.harrow:hover { background: rgba(255,255,255,.75); }
/* --- hero-зона: сайдбар категорій + слайдер --- */
.herozone { background: linear-gradient(180deg, #FFFFFF, var(--bg)); }
.herozone .wrap { display: grid; grid-template-columns: 272px 1fr; gap: 18px; padding-top: 18px; padding-bottom: 20px; align-items: start; }
.catside { background: #fff; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; display: flex; flex-direction: column; }
.catside-h { background: linear-gradient(180deg, #8A939C, var(--blue)); color: #fff; font-weight: 800; padding: 13px 18px; font-size: 14.5px; }
.catside ul { list-style: none; overflow-y: auto; max-height: 448px; }
.catside ul li { margin: 0; }
.catside li a { display: flex; align-items: center; gap: 8px; padding: 10px 16px; color: var(--dark); text-decoration: none; font-size: 13.5px; font-weight: 600; border-bottom: 1px solid #F0F1F2; }
.catside li a:hover { background: #EDEFF1; color: var(--blue); }
.catside .cnt { margin-left: auto; color: #8A939C; font-size: 12px; font-weight: 600; }
.catside .arr { color: #8A939C; font-weight: 800; }
.catside-all { padding: 12px 16px; font-weight: 700; color: var(--blue); text-decoration: none; background: var(--bg); display: block; }
.herozone .hero { border: 1px solid var(--line); border-radius: 12px; }
.herozone .hslide { padding: 38px 64px 58px; }
.herozone .pimg-hero { height: 264px; }
/* --- смуга переваг --- */
.advstrip { background: #fff; border-bottom: 1px solid var(--line); }
.advstrip .wrap { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; padding-top: 16px; padding-bottom: 16px; }
.adv { display: flex; align-items: center; gap: 10px; font-weight: 700; font-size: 13.5px; color: var(--blue); }
.adv .ic { font-size: 21px; }
/* --- хіти продажу --- */
.sec-head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; }
.all-link { color: var(--blue2); font-weight: 700; font-size: 13.5px; text-decoration: none; white-space: nowrap; }
.all-link:hover { color: var(--dark); }
.hits { display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; }
.prod { position: relative; }
.hitb { position: absolute; top: 12px; left: 12px; background: #15803D; color: #fff; font-size: 11px; font-weight: 700; padding: 4px 10px; border-radius: 4px; z-index: 2; }
.saleb { position: absolute; top: 12px; right: 12px; background: #B3261E; color: #fff; font-size: 11px; font-weight: 800; padding: 4px 8px; border-radius: 4px; z-index: 2; }
/* --- смуга пошуку --- */
.searchstrip { background: linear-gradient(120deg, #22282F, var(--blue) 60%, var(--blue2)); padding: 26px 0; }
.searchstrip .wrap { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.searchstrip b { color: #fff; font-size: 17px; }
.searchstrip form.search { max-width: none; }
.searchstrip form.search input { border-color: #fff; }
.searchstrip form.search button { background: linear-gradient(180deg, #EDEFF1, var(--yellow)); color: var(--dark); }
section { padding: 46px 0; }
/* Типографіка за шкалою E.NEXT (команда Андрія 22.10.2026): H1 38/600, H2 30/600, H3 24/600, H4 20/400, ритм lh 1.43, відступи заголовків 25-30px */
h2 { font-size: 30px; font-weight: 600; color: var(--blue); margin-bottom: 25px; line-height: 1.21; }
h3 { font-size: 24px; font-weight: 600; line-height: 1.43; }
h4 { font-size: 20px; font-weight: 400; line-height: 1.43; }
.sub { color: var(--gray); margin-bottom: 24px; font-size: 14px; }
/* --- плитки розділів --- */
.tiles { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.tile { background: #fff; border: 1px solid var(--line); border-radius: 10px; padding: 24px 20px; cursor: pointer; transition: .2s; text-decoration: none; color: inherit; display: block; }
.tile:hover { border-color: var(--blue); box-shadow: 0 6px 18px rgba(65,76,88,.12); transform: translateY(-2px); }
.tile .ic { width: 52px; height: 52px; background: #EDEFF1; border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 24px; margin-bottom: 14px; }
.tile b { display: block; font-size: 15px; margin-bottom: 6px; }
.tile p { font-size: 13px; color: var(--gray); }
.tile .go { color: var(--blue2); font-size: 13px; font-weight: 700; margin-top: 10px; display: block; }
.tileimg { height: 120px; border-radius: 8px; overflow: hidden; margin-bottom: 14px; background: var(--bg); }
.tileimg img { width: 100%; height: 100%; object-fit: cover; display: block; }
/* --- плитки категорій каталогу --- */
.cattiles { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin: 4px 0 10px; }
.cattile { border: 1px solid var(--line); border-radius: 10px; overflow: hidden; text-decoration: none; color: inherit; background: #fff; transition: .2s; display: block; }
.cattile:hover { border-color: var(--blue); box-shadow: 0 6px 18px rgba(65,76,88,.12); transform: translateY(-2px); }
.cattile .cimg { height: 140px; background: var(--bg); overflow: hidden; }
.cattile .cimg img { width: 100%; height: 100%; object-fit: cover; display: block; }
.cattile .cbody { padding: 14px 16px; }
.cattile b { display: block; font-size: 14.5px; margin-bottom: 4px; }
.cattile .ccount { font-size: 12.5px; color: #8A939C; font-weight: 600; display: block; }
.cattile .ccount.order { color: var(--blue2); }
.cat-hits { margin: 34px 0 10px; }
.brand img { max-width: 100%; max-height: 44px; object-fit: contain; }
/* --- бренди --- */
.brands { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; }
.brands > br, .brands > p { display: none; }
.brand { background: #fff; border: 1px solid var(--line); border-radius: 8px; padding: 20px 8px; text-align: center; font-weight: 700; font-size: 13.5px; position: relative; cursor: pointer; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; }
.brand .bname { font-size: 13px; font-weight: 700; color: var(--ink); }
a.brand { text-decoration: none; color: inherit; }
a.brand:hover { border-color: var(--blue); box-shadow: 0 4px 14px rgba(65,76,88,.12); }
.brand:hover { border-color: var(--blue); }
.brand.hot { border: 2px solid var(--yellow); background: #F5F6F7; }

/* --- слайдер товарів --- */
.slider-wrap { position: relative; }
.strack { display: flex; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 6px; scrollbar-width: none; }
.strack::-webkit-scrollbar { display: none; }
.sitem { flex: 0 0 calc(25% - 11px); scroll-snap-align: start; }
.prod { background: #fff; border: 1px solid var(--line); border-radius: 10px; padding: 18px; display: flex; flex-direction: column; height: 100%; transition: .2s; }
.prod:hover { box-shadow: 0 8px 22px rgba(65,76,88,.12); }
.prod .art { font-size: 11.5px; color: #8A939C; margin-bottom: 8px; }
.pimg { height: 150px; margin-bottom: 12px; border-radius: 6px; overflow: hidden; background: var(--bg); }
.pimg img { width: 100%; height: 100%; object-fit: cover; display: block; }
.prod h4 { font-size: 14px; margin-bottom: 10px; min-height: 40px; font-weight: 600; line-height: 1.43; }
.prod h4 a { color: var(--dark); text-decoration: none; }
.prod h4 a:hover { color: var(--blue); }
.badge { display: inline-block; font-size: 11.5px; font-weight: 700; padding: 4px 11px; border-radius: 20px; margin-bottom: 10px; align-self: flex-start; }
.badge.in { background: #E6F7EC; color: #15803D; }
.badge.req { background: #EDEFF1; color: #414C58; }
.prod .price { font-size: 20px; font-weight: 800; color: #166534; margin-bottom: 2px; }
.prod .price small { font-size: 13px; font-weight: 400; color: var(--gray); }
.prod .noprice { font-size: 13.5px; color: #414C58; margin-bottom: 2px; font-weight: 700; }
.prod .hint { font-size: 12px; color: #8A939C; margin-bottom: 12px; }
.prod .buy, .prod .ask { display: block; text-align: center; width: 100%; padding: 12px; border-radius: 6px; font-weight: 600; cursor: pointer; font-size: 16px; margin-top: auto; font-family: inherit; text-decoration: none; box-sizing: border-box; }
/* Кнопки WooCommerce - за шкалою кнопок E.NEXT (16px/600) */
.woocommerce div.product form.cart .button, .wc-proceed-to-checkout a.checkout-button { font-size: 16px; font-weight: 600; }
.prod .buy { background: linear-gradient(180deg, #EDEFF1, var(--yellow)); color: var(--dark); border: none; }
.prod .ask { background: linear-gradient(180deg, #FFFFFF, #EDEFF1); color: var(--blue); border: 2px solid var(--blue); }
.sarrow { position: absolute; top: 38%; width: 44px; height: 44px; border-radius: 50%; background: #fff; border: 2px solid var(--blue); color: var(--blue); font-size: 20px; font-weight: 800; cursor: pointer; box-shadow: 0 4px 14px rgba(0,0,0,.15); z-index: 5; }
.sarrow.prev { left: -16px; } .sarrow.next { right: -16px; }
.sarrow:hover { background: var(--yellow); border-color: var(--yellow); color: var(--dark); }
/* --- Signal --- */
.signal-strip { background: linear-gradient(100deg, var(--yellow), #EDEFF1); border-radius: 12px; padding: 26px 32px; display: flex; align-items: center; gap: 24px; flex-wrap: wrap; }
.signal-strip img { width: 170px; height: 90px; object-fit: cover; border-radius: 8px; flex-shrink: 0; }
.signal-strip h3 { font-size: 20px; margin-bottom: 4px; font-weight: 800; }
.signal-strip p { color: #414C58; font-size: 14px; }
.signal-strip a { margin-left: auto; }
/* --- як замовити --- */
.steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.step { background: #fff; border: 1px solid var(--line); border-radius: 10px; padding: 26px; }
.step .n { width: 40px; height: 40px; background: var(--blue); color: #fff; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 18px; margin-bottom: 14px; }
.step b { display: block; font-size: 15.5px; margin-bottom: 8px; }
.step p { font-size: 13.5px; color: var(--gray); }
.step .tag { display: inline-block; font-size: 11px; font-weight: 700; padding: 3px 10px; border-radius: 12px; margin-top: 10px; }
.tag.cart { background: #E6F7EC; color: #15803D; }
.tag.tg { background: #EDEFF1; color: #414C58; }
/* --- каталоги --- */
.docs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.doc { border: 1px solid var(--line); border-radius: 10px; padding: 22px; display: flex; gap: 16px; align-items: center; }
.doc .fic { width: 52px; height: 52px; background: #EDEFF1; border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 24px; flex-shrink: 0; }
.doc b { display: block; font-size: 14px; margin-bottom: 4px; }
.doc small { color: var(--gray); font-size: 12.5px; display: block; margin-bottom: 8px; }
.doc a { color: var(--blue2); font-size: 13px; font-weight: 700; text-decoration: none; }
/* --- форма --- */
.leadsec { background: linear-gradient(135deg, #22282F, var(--blue) 60%, var(--blue2)); border-radius: 14px; padding: 42px; display: grid; grid-template-columns: 1fr 1fr; gap: 44px; align-items: center; }
.leadsec h2 { color: #fff; }
.leadsec .sub { color: #C9CFD6; }
.leadsec ul { list-style: none; color: #EDEFF1; font-size: 14.5px; }
.leadsec ul li { margin-bottom: 12px; padding-left: 28px; position: relative; }
.leadsec ul li::before { content: '✓'; position: absolute; left: 0; color: var(--yellow); font-weight: 800; }
.tg-note { background: rgba(0,0,0,.2); border: 1px solid rgba(255,255,255,.25); border-radius: 8px; padding: 14px 18px; color: #EDEFF1; font-size: 13.5px; margin-top: 18px; }
.tg-note b { color: var(--yellow); }
form.qf { background: #fff; border-radius: 10px; padding: 28px; }
form.qf h3 { font-size: 18px; margin-bottom: 16px; font-weight: 700; }
form.qf input, form.qf textarea { width: 100%; padding: 12px 14px; border: 1px solid var(--line); border-radius: 6px; font-size: 14px; margin-bottom: 12px; font-family: inherit; }
form.qf input:focus, form.qf textarea:focus { border-color: var(--blue); outline: none; }
form.qf button { width: 100%; background: linear-gradient(180deg, #EDEFF1, var(--yellow)); color: var(--dark); border: none; padding: 14px; border-radius: 6px; font-weight: 800; font-size: 15px; cursor: pointer; font-family: inherit; }
/* --- новини --- */
.news { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.ncard { border: 1px solid var(--line); border-radius: 10px; padding: 20px; transition: .2s; }
.ncard:hover { border-color: var(--blue); }
.ncard .date { font-size: 12px; color: var(--blue2); font-weight: 700; margin-bottom: 8px; }
.ncard b { display: block; font-size: 14px; margin-bottom: 8px; }
.ncard a { color: var(--blue2); font-size: 13px; font-weight: 700; text-decoration: none; }
/* Липкий футер: на коротких сторінках завжди внизу вікна (команда Андрія 22.10.2026) */
body { display: flex; flex-direction: column; min-height: 100vh; }
body > footer { margin-top: auto; }
/* Порожній кошик: тематична картинка по центру */
.wp-block-woocommerce-empty-cart-block { text-align: center; padding: 12px 0 8px; }
.mp-empty-cart-img img { max-width: 400px; width: 100%; height: auto; }
/* Сторінка 404 */
.nf404 { text-align: center; padding: 30px 0 26px; }
.nf404 .nf-num { font-size: 84px; font-weight: 800; line-height: 1; color: #414C58; letter-spacing: 3px; }
.nf404 .nf-img { max-width: 430px; width: 100%; height: auto; margin-top: 6px; }
.nf404 h1 { font-size: 30px; margin: 12px 0 8px; }
.nf404 .nf-text { color: #414C58; max-width: 580px; margin: 0 auto 20px; font-size: 15px; }
.nf404 form.search { display: flex; max-width: 560px; margin: 0 auto 18px; }
.nf404 form.search input[type="search"] { flex: 1; padding: 13px 16px; border: 1px solid #C9CFD6; border-right: none; border-radius: 8px 0 0 8px; font: inherit; min-width: 0; }
.nf404 form.search button { padding: 0 24px; border: none; border-radius: 0 8px 8px 0; background: linear-gradient(180deg, #EDEFF1, #C9CFD6); color: #22282F; font-weight: 700; font-family: inherit; cursor: pointer; }
.nf404 .nf-btns { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; margin-bottom: 24px; }
.nf404 .nf-btn { display: inline-block; padding: 12px 26px; border-radius: 8px; font-weight: 700; font-size: 14.5px; text-decoration: none; }
.nf404 .nf-btn.primary { background: linear-gradient(180deg, #EDEFF1, #C9CFD6); color: #22282F; }
.nf404 .nf-btn.ghost { border: 2px solid #414C58; color: #414C58; background: #fff; }
.nf404 .nf-cats-label { font-weight: 700; color: #414C58; margin-bottom: 10px; }
.nf404 .nf-cats { display: flex; gap: 8px; flex-wrap: wrap; justify-content: center; }
.nf404 .nf-cats a { padding: 8px 14px; border: 1px solid #C9CFD6; border-radius: 20px; text-decoration: none; color: #414C58; font-weight: 600; font-size: 13px; background: #fff; }
.nf404 .nf-cats a:hover { border-color: #414C58; color: #22282F; }
@media (max-width: 640px) { .nf404 .nf-num { font-size: 58px; } .nf404 h1 { font-size: 24px; } }
footer { background: linear-gradient(180deg, #414C58, #22282F); color: #C9CFD6; padding: 40px 0 24px; font-size: 13.5px; }
footer .wrap { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
footer b { color: #fff; display: block; margin-bottom: 10px; font-size: 14px; }
footer a { color: var(--yellow) !important; text-decoration: none; }
.copy { border-top: 1px solid rgba(255,255,255,.2); margin-top: 26px; padding-top: 16px; font-size: 12px; color: #8A939C; }
.tgfloat { position: fixed; right: 22px; bottom: 22px; background: linear-gradient(180deg, #F4F6F8 0%, #D8DDE2 47%, #BEC5CC 53%, #AEB6BE 100%); color: #22282F; border-radius: 50px; padding: 15px 24px; font-weight: 800; text-decoration: none; text-shadow: 0 1px 0 rgba(255,255,255,.55); box-shadow: inset 0 1px 0 rgba(255,255,255,.85), inset 0 -2px 4px rgba(34,40,47,.28), 0 10px 26px rgba(34,40,47,.4); z-index: 60; font-size: 14.5px; animation: tgPulse 2.6s ease-in-out infinite; transition: transform .15s ease; }
.tgfloat:hover { transform: translateY(-2px); color: #22282F; }
@keyframes tgPulse { 0%, 100% { box-shadow: inset 0 1px 0 rgba(255,255,255,.85), inset 0 -2px 4px rgba(34,40,47,.28), 0 10px 26px rgba(34,40,47,.4), 0 0 0 0 rgba(65,76,88,.35); } 50% { box-shadow: inset 0 1px 0 rgba(255,255,255,.85), inset 0 -2px 4px rgba(34,40,47,.28), 0 10px 26px rgba(34,40,47,.4), 0 0 0 12px rgba(65,76,88,0); } }
.toast { position: fixed; bottom: 26px; left: 50%; transform: translateX(-50%) translateY(80px); background: var(--dark); color: #fff; padding: 14px 26px; border-radius: 8px; font-weight: 600; font-size: 14px; z-index: 120; transition: .3s; opacity: 0; }
.toast.show { transform: translateX(-50%) translateY(0); opacity: 1; }
.modal { display: none; position: fixed; inset: 0; background: rgba(65,76,88,.45); z-index: 100; align-items: center; justify-content: center; }
.modal.open { display: flex; }
.modal .box { background: #fff; border-radius: 12px; padding: 32px; width: 420px; max-width: 92vw; }
.modal .box h3 { margin-bottom: 6px; font-weight: 700; }
.modal .box p { font-size: 13.5px; color: var(--gray); margin-bottom: 16px; }
.modal input, .modal textarea { width: 100%; padding: 12px 14px; border: 1px solid var(--line); border-radius: 6px; font-size: 14px; margin-bottom: 12px; font-family: inherit; }
.modal .send { width: 100%; background: linear-gradient(180deg, #EDEFF1, var(--yellow)); color: var(--dark); border: none; padding: 14px; border-radius: 6px; font-weight: 800; font-size: 15px; cursor: pointer; font-family: inherit; }
.modal .close { float: right; cursor: pointer; font-size: 20px; color: #8A939C; }
.okmsg { display: none; text-align: center; padding: 20px 0; }
.okmsg .big { font-size: 44px; margin-bottom: 10px; }
/* --- про компанію --- */
.about-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 44px; align-items: center; }
.about-img img { width: 100%; border-radius: 12px; box-shadow: 0 10px 30px rgba(65,76,88,.12); display: block; }
.about-img video.about-video { width: 100%; height: auto; border-radius: 12px; box-shadow: 0 10px 30px rgba(65,76,88,.12); display: block; background: #22282F; }
.about-grid p { color: var(--gray); margin-bottom: 14px; font-size: 14.5px; }
.about-grid .btn { margin-top: 8px; }
/* --- картинка на текстових сторінках --- */
.page-hero { float: right; width: 42%; max-width: 460px; margin: 4px 0 22px 30px; border-radius: 10px; overflow: hidden; box-shadow: 0 4px 18px rgba(0,0,0,.08); transition: box-shadow .3s ease; }
.page-hero img { width: 100%; height: auto; display: block; transition: transform .45s ease; }
.page-hero:hover img { transform: scale(1.05); }
.page-hero:hover { box-shadow: 0 10px 30px rgba(0,0,0,.16); }
.page-video { margin: 26px 0; border-radius: 12px; overflow: hidden; box-shadow: 0 10px 30px rgba(65,76,88,.12); }
.page-video video.about-video { width: 100%; height: auto; display: block; background: #22282F; }
/* --- поля доставки morkva: длинные названия не вылезают --- */
.mrkv-ua-shipping-field .select2-selection__rendered,
.select2-container .select2-selection__rendered { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 100%; }
/* --- select2: текст по центру поля --- */
.select2-container--default .select2-selection--single { height: auto; min-height: 38px; display: flex; align-items: center; }
.select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 1.4; padding: 8px 30px 8px 12px; }
.select2-container--default .select2-selection--single .select2-selection__arrow { top: 50%; transform: translateY(-50%); }
.page-content .wrap::after { content: ""; display: table; clear: both; }
@media (max-width: 700px) {
  .page-hero { float: none; width: 100%; max-width: none; margin: 0 0 20px; }
}
/* --- сторінка бренду --- */
.brand-cat { margin: 34px 0 8px; }
.brand-cat h2 { font-size: 22px; margin-bottom: 16px; }
.brand-cat h2 a { color: var(--dark); text-decoration: none; }
.brand-cat h2 a:hover { color: var(--blue2); }
.brand-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
@media (max-width: 900px) { .brand-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .brand-grid { grid-template-columns: 1fr; } }
/* --- галерея товару --- */
.woocommerce-product-gallery__image a { cursor: zoom-in; }
/* --- лайтбокс: розмитий фон замість чорного --- */
.pswp__bg {
    background: rgba(25, 35, 55, 0.5) !important;
    -webkit-backdrop-filter: blur(18px) saturate(1.2);
    backdrop-filter: blur(18px) saturate(1.2);
}
.pswp__img {
    border-radius: 10px;
    box-shadow: 0 30px 90px rgba(0, 0, 0, 0.5);
}
/* --- хлібні крихти під меню --- */
.breadcrumbs { background: #fff; border-bottom: 1px solid var(--line); font-size: 12.5px; color: var(--gray); }
.breadcrumbs .wrap { padding-top: 9px; padding-bottom: 9px; }
.breadcrumbs a { color: var(--blue2); text-decoration: none; font-weight: 600; }
.breadcrumbs span { margin: 0 6px; color: #8A939C; }
/* --- контентні сторінки --- */
.page-content { padding: 40px 0 60px; }
.page-content h1 { font-size: 38px; font-weight: 600; color: var(--blue); margin-bottom: 30px; line-height: 1.21; }
@media (max-width: 860px) { .page-content h1 { font-size: 30px; } h2 { font-size: 24px; } }
@media (max-width: 560px) { .page-content h1 { font-size: 24px; margin-bottom: 20px; } }
.page-content p { margin-bottom: 14px; }
/* --- планшети --- */
@media (max-width: 1024px) {
  .sitem { flex-basis: calc(33.333% - 10px); }
  .brands { grid-template-columns: repeat(4, 1fr); }
  .tiles { grid-template-columns: repeat(2, 1fr); }
  .hphone { display: none; }
  .topmenu a { padding: 9px 9px; font-size: 13.5px; }
  .herozone .wrap { grid-template-columns: 232px 1fr; }
  .hits { grid-template-columns: repeat(3, 1fr); }
  .cattiles { grid-template-columns: repeat(3, 1fr); }
}
/* --- мобільні --- */
@media (max-width: 768px) {
  body { font-size: 13.5px; }
  section { padding: 32px 0; }
  h2 { font-size: 20px; }
  .topbar { font-size: 11.5px; }
  header.main .wrap { flex-wrap: wrap; gap: 12px; padding-top: 12px; padding-bottom: 12px; }
  .logo img { height: 52px; }
  .cartbtn { padding: 10px 14px; }
  .burger { display: block; margin-left: auto; }
  .topmenu { display: none; position: absolute; top: 100%; left: 0; right: 0; background: #fff; box-shadow: 0 18px 34px rgba(34,40,47,.2); z-index: 70; margin-left: 0; }
  .topmenu.open { display: block; }
  .topmenu ul { flex-direction: column; }
  .topmenu a { padding: 13px 20px; border-top: 1px solid var(--line); font-size: 15px; border-radius: 0; }
  .catbar .wrap { flex-wrap: wrap; gap: 10px; }
  .catbar form.search { order: 3; flex-basis: 100%; }
  .catbtn { padding: 11px 16px; }
  .catpanel { grid-template-columns: 1fr 1fr; }
  .herozone .wrap { grid-template-columns: 1fr; padding-top: 12px; }
  .catside { display: none; }
  .herozone .hslide { padding: 26px 18px 54px; }
  .advstrip .wrap { grid-template-columns: 1fr 1fr; gap: 10px; }
  .hits { grid-template-columns: repeat(2, 1fr); gap: 10px; }
  .cattiles { grid-template-columns: 1fr 1fr; gap: 10px; }
  .cattile .cimg { height: 110px; }
  .hslide { grid-template-columns: 1fr; padding: 30px 0 58px; gap: 20px; }
  .hslide h1, .hslide h2 { font-size: 28px; }
  .hslide p { font-size: 14px; }
  .pimg-hero { height: 190px; }
  .harrow { display: none; }
  .hdots span { width: 12px; height: 12px; }
  .searchstrip .wrap { flex-direction: column; align-items: stretch; gap: 12px; }
  .searchstrip b { font-size: 15px; }
  .tiles { grid-template-columns: 1fr 1fr; gap: 10px; }
  .tile { padding: 16px 14px; }
  .tileimg { height: 90px; }
  .tile b { font-size: 13.5px; }
  .tile p { display: none; }
  .brands { grid-template-columns: repeat(2, 1fr); }
  .brand { padding: 14px 6px; font-size: 12.5px; }
  .brand img { max-height: 36px; }
  .sitem { flex-basis: 80%; }
  .sarrow { display: none; }
  .prod .price { font-size: 18px; }
  .steps, .docs, .news { grid-template-columns: 1fr; }
  .signal-strip { padding: 22px 20px; gap: 16px; }
  .signal-strip img { width: 100%; height: 120px; }
  .signal-strip a { margin-left: 0; width: 100%; text-align: center; }
  .leadsec { grid-template-columns: 1fr; padding: 28px 20px; gap: 26px; }
  .about-grid { grid-template-columns: 1fr; gap: 24px; }
  footer .wrap { grid-template-columns: 1fr; gap: 18px; }
  .tgfloat { right: 14px; bottom: 14px; padding: 12px 18px; font-size: 13px; }
  .modal .box { padding: 24px 20px; }
  .btn { padding: 14px 22px; }
}
/* --- маленькі телефони --- */
@media (max-width: 420px) {
  .tiles { grid-template-columns: 1fr; }
  .sitem { flex-basis: 86%; }
  .hslide h1, .hslide h2 { font-size: 24px; }
}
/* --- іконки способів доставки --- */
.ship-ic { display: inline-flex; vertical-align: -4px; margin-right: 8px; color: var(--blue); }
.ship-ic svg { width: 19px; height: 19px; }

/* --- блог --- */
.nimg { height: 150px; border-radius: 8px; overflow: hidden; margin-bottom: 12px; background: var(--bg); }
.nimg img { width: 100%; height: 100%; object-fit: cover; display: block; }
.post-img { margin-bottom: 20px; border-radius: 10px; overflow: hidden; }
.post-img img { width: 100%; height: auto; max-height: 440px; object-fit: cover; display: block; }
.news .ncard p { color: var(--gray); font-size: 13px; margin: 6px 0 10px; }
.blog-pager { margin-top: 26px; display: flex; gap: 8px; flex-wrap: wrap; }
.blog-pager .page-numbers { padding: 8px 14px; border: 1px solid var(--line); border-radius: 6px; color: var(--blue); text-decoration: none; font-weight: 600; }
.blog-pager .page-numbers.current { background: linear-gradient(180deg, #8A939C, #414C58); color: #fff; border-color: transparent; }
.brand-page-logo { max-height: 72px; width: auto; max-width: 320px; object-fit: contain; display: block; margin: 4px 0 18px; }
.brand-page-logo-text { font-size: 36px; font-weight: 800; letter-spacing: 1px; color: var(--blue); margin: 4px 0 18px; line-height: 1.1; }

/* Категорії на сторінці бренду */
.brand-cats-sec { margin: 26px 0 6px; }
.brand-cats { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 10px; margin-top: 12px; }
.brand-cat-tile { display: block; padding: 12px 14px; background: #EDEFF1; border: 1px solid #C9CFD6; border-radius: 10px; color: var(--blue); font-weight: 600; font-size: 14px; text-decoration: none; }
.brand-cat-tile:hover { background: #C9CFD6; }

/* Про компанію: текст + відео праворуч */
.about-split { display: grid; grid-template-columns: 1.05fr .95fr; gap: 28px; align-items: start; margin: 4px 0 12px; }
.about-split .page-video { margin: 0; }
.about-split-text > *:first-child { margin-top: 0; }
@media (max-width: 860px) { .about-split { grid-template-columns: 1fr; } }

/* Посилання у контенті: сталевий замість синього, сірий замість фіолетового */
.page-content a:not(.brand):not(.brand-cat-tile):not(.cattile):not(.buy):not(.ask):not(.button):not(.wp-block-button__link):not(.wc-block-components-button):not(.mp-more):not(.stretched),
.woocommerce a:not(.button):not(.buy):not(.ask):not(.added_to_cart):not(.wp-block-button__link):not(.wc-block-components-button):not(.mp-more) { color: #414C58; }
.page-content a:not(.brand):not(.brand-cat-tile):not(.cattile):not(.buy):not(.ask):not(.button):not(.wp-block-button__link):not(.wc-block-components-button):not(.stretched):not(.mp-more):visited,
.woocommerce a:not(.button):not(.buy):not(.ask):not(.added_to_cart):not(.wp-block-button__link):not(.wc-block-components-button):not(.mp-more):visited { color: #8A939C; }
.page-content a:not(.brand):not(.brand-cat-tile):not(.cattile):not(.buy):not(.ask):not(.button):not(.wp-block-button__link):not(.wc-block-components-button):not(.mp-more):not(.stretched):hover,
.woocommerce a:not(.button):not(.buy):not(.ask):not(.added_to_cart):not(.wp-block-button__link):not(.wc-block-components-button):not(.mp-more):hover { color: #22282F; }
.modal a { color: #414C58; }
.modal a:visited { color: #8A939C; }
.modal a:hover { color: #22282F; }

/* Кнопки WooCommerce (класичні та блокові): читабельні, у гамі сайту */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce .wp-block-button__link, .woocommerce a.button:visited, .woocommerce .wp-block-button__link:visited { background: linear-gradient(180deg, #8A939C, #414C58); color: #fff; border: none; border-radius: 6px; font-weight: 700; text-decoration: none; text-shadow: 0 1px 2px rgba(0,0,0,.35); box-shadow: inset 0 1px 0 rgba(255,255,255,.35), 0 3px 8px rgba(34,40,47,.25); }
.woocommerce .wp-block-button__link { border-radius: 50px; padding: 10px 24px; }
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce .wp-block-button__link:hover { background: linear-gradient(180deg, #C9CFD6, #8A939C); color: #22282F; text-shadow: none; }
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt { background: linear-gradient(180deg, #8A939C, #414C58); color: #fff; }
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover { background: linear-gradient(180deg, #C9CFD6, #8A939C); color: #22282F; }

/* Кнопки блокового кошика і чекауту WooCommerce (Перейти до оформлення тощо) */
body .wc-block-components-button.contained, body .wc-block-cart__submit-button, body .wc-block-checkout__submit-button { background: linear-gradient(180deg, #8A939C, #414C58); color: #fff; border: none; border-radius: 6px; font-weight: 700; text-decoration: none; text-shadow: 0 1px 2px rgba(0,0,0,.35); box-shadow: inset 0 1px 0 rgba(255,255,255,.35), 0 3px 8px rgba(34,40,47,.25); }
body .wc-block-components-button.contained:hover, body .wc-block-cart__submit-button:hover, body .wc-block-checkout__submit-button:hover { background: linear-gradient(180deg, #C9CFD6, #8A939C); color: #22282F; text-shadow: none; }

/* Блокові кнопки WP/Woo — глобально (вони бувають і поза .woocommerce) */
body .wp-block-button__link, body .wp-block-button__link:visited { background: linear-gradient(180deg, #8A939C, #414C58); color: #fff; border: none; border-radius: 50px; padding: 10px 24px; font-weight: 700; text-decoration: none; text-shadow: 0 1px 2px rgba(0,0,0,.35); box-shadow: inset 0 1px 0 rgba(255,255,255,.35), 0 3px 8px rgba(34,40,47,.25); }
body .wp-block-button__link:hover { background: linear-gradient(180deg, #C9CFD6, #8A939C); color: #22282F; text-shadow: none; }

/* Товар без ціни: напис і кнопка запиту на сторінці товару */
.single-product .mp-noprice { font-size: 17px; font-weight: 700; color: #414C58; margin: 6px 0 10px; }
.single-product .mp-ask { background: linear-gradient(180deg, #FFFFFF, #EDEFF1); color: var(--blue); border: 2px solid var(--blue); padding: 13px 30px; border-radius: 6px; font-weight: 700; cursor: pointer; font-size: 15px; font-family: inherit; }
.single-product .mp-ask:hover { background: linear-gradient(180deg, #8A939C, #414C58); color: #fff; }

/* Таблиця характеристик у блоці "Опис" (імпорт з E.NEXT): рівні колонки, повітря між рядками */
.mp-specs { width: 100%; border-collapse: collapse; margin: 6px 0 20px; font-size: 14.5px; line-height: 1.5; }
.mp-specs th, .mp-specs td { padding: 9px 14px; border-bottom: 1px solid #E3E7EC; vertical-align: top; }
.mp-specs th { width: 42%; text-align: left; font-weight: 600; color: var(--dark); padding-left: 0; }
.mp-specs td { text-align: left; color: #333C45; }
.mp-specs tr:nth-child(even) th, .mp-specs tr:nth-child(even) td { background: #F5F7F8; }

/* Вкладка "Габарити": креслення по центру, на всю доступну ширину */
.mp-gabaryty { text-align: center; }
.mp-gabaryty img { max-width: 100%; height: auto; }

/* Вибір кількості товарів на сторінці каталогу */
.mp-perpage { float: right; margin: 0 0 14px 14px; font-size: 14px; color: var(--blue); }
.mp-perpage select { margin-left: 6px; padding: 7px 10px; border: 1px solid #C9CFD6; border-radius: 6px; background: #fff; font: inherit; color: var(--dark); cursor: pointer; }

/* Форма відгуку на сторінці товару: акуратні поля в гамі сайту */
#review_form .comment-form label { display: block; font-weight: 600; color: var(--dark); margin-bottom: 6px; font-size: 14px; }
#review_form .comment-form p, #review_form .comment-form .comment-form-rating { margin: 0 0 14px; }
#review_form .comment-form input[type="text"], #review_form .comment-form input[type="email"], #review_form .comment-form textarea, #review_form .comment-form select { width: 100%; max-width: 560px; padding: 10px 12px; border: 1px solid #C9CFD6; border-radius: 6px; font: inherit; font-size: 14.5px; background: #fff; box-sizing: border-box; }
#review_form .comment-form textarea { min-height: 120px; resize: vertical; }
#review_form .comment-form input:focus, #review_form .comment-form textarea:focus, #review_form .comment-form select:focus { border-color: var(--blue); outline: none; box-shadow: 0 0 0 3px rgba(65,76,88,.12); }
#review_form .comment-form .comment-form-cookies-consent { display: flex; gap: 8px; align-items: flex-start; }
#review_form .comment-form .comment-form-cookies-consent label { display: inline; font-weight: 400; margin: 0; }
#review_form .comment-form .comment-form-cookies-consent input { margin-top: 3px; }
#review_form .comment-form .form-submit input[type="submit"] { background: linear-gradient(180deg, #8A939C, #414C58); color: #fff; font-weight: 700; border: 0; padding: 12px 30px; border-radius: 6px; cursor: pointer; font-size: 15px; font-family: inherit; }
#review_form .comment-form .form-submit input[type="submit"]:hover { filter: brightness(1.08); }
#review_form .comment-notes { font-size: 13px; color: #5F6B77; margin-bottom: 12px; }

/* Пагінація каталогу: кнопка "Показати ще" + круглі номери */
.mp-pager { display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; margin-top: 28px; }
.mp-more { display: inline-flex; align-items: center; gap: 10px; background: linear-gradient(180deg, #5F6B77, #22282F); color: #fff; font-weight: 700; font-size: 15px; text-decoration: none; padding: 14px 32px; border-radius: 999px; box-shadow: 0 4px 14px rgba(34,40,47,.22); transition: filter .15s ease, opacity .15s ease; }
.mp-more:hover { filter: brightness(1.12); color: #fff; }
.mp-more.loading { opacity: .8; pointer-events: none; }
.mp-more.loading svg { animation: mp-spin 0.9s linear infinite; }
@keyframes mp-spin { to { transform: rotate(360deg); } }
.woocommerce nav.woocommerce-pagination { text-align: right; }
.woocommerce nav.woocommerce-pagination ul { display: inline-flex; gap: 8px; border: 0; background: none; margin: 0; padding: 0; }
.woocommerce nav.woocommerce-pagination ul li { border: 0; float: none; overflow: visible; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { display: flex; align-items: center; justify-content: center; min-width: 40px; height: 40px; padding: 0 6px; border-radius: 50%; background: #fff; border: 1px solid #E1E5EA; color: var(--dark); font-weight: 600; font-size: 14.5px; line-height: 1; text-decoration: none; box-sizing: border-box; }
.woocommerce nav.woocommerce-pagination ul li a:hover { background: #EDEFF1; color: var(--dark); }
.woocommerce nav.woocommerce-pagination ul li span.current { background: linear-gradient(180deg, #5F6B77, #22282F); color: #fff; border-color: transparent; }
.woocommerce nav.woocommerce-pagination ul li span.dots { background: none; border: 0; min-width: 22px; }
@media (max-width: 640px) { .mp-pager { justify-content: center; } .woocommerce nav.woocommerce-pagination { text-align: center; } }

/* Кнопка "Показати повністю" під категоріями на сторінці бренду */
.mp-showall-row { text-align: center; margin-top: 16px; }
.mp-showall { display: inline-flex; align-items: center; gap: 8px; background: linear-gradient(180deg, #5F6B77, #22282F); color: #fff; font-weight: 700; font-size: 14.5px; font-family: inherit; border: 0; padding: 12px 30px; border-radius: 999px; cursor: pointer; box-shadow: 0 4px 14px rgba(34,40,47,.2); transition: filter .15s ease, opacity .15s ease; }
.mp-showall:hover { filter: brightness(1.08); }
.mp-showall.loading { opacity: .6; pointer-events: none; }

/* Бренд: структура категорій - плитка з іконкою і кількістю */
.brand-cats { display: grid; grid-template-columns: repeat(auto-fill, minmax(225px, 1fr)); gap: 12px; }
.bcat { display: flex; align-items: center; gap: 13px; background: #fff; border: 1px solid var(--line); border-radius: 12px; padding: 14px 16px; text-decoration: none; transition: border-color .15s ease, box-shadow .15s ease; }
.bcat:hover { border-color: #8A939C; box-shadow: 0 6px 18px rgba(65,76,88,.10); }
.bcat-ic { flex: 0 0 46px; width: 46px; height: 46px; border-radius: 11px; background: #EDEFF1; color: #414C58; display: flex; align-items: center; justify-content: center; }
.bcat-ic svg { width: 25px; height: 25px; }
.bcat-name { display: block; font-weight: 700; color: var(--dark); font-size: 14.5px; line-height: 1.3; }
.bcat-count { display: block; font-size: 12.5px; color: #8A939C; margin-top: 2px; }
.brand-cat { scroll-margin-top: 108px; }
.brand-cat-count { color: #8A939C; font-size: 15px; font-weight: 600; white-space: nowrap; }

/* Плашка активного фільтра за брендом в архіві категорії */
.mp-brandfilter { background: #EDEFF1; border: 1px solid var(--line); border-radius: 8px; padding: 10px 16px; margin-bottom: 16px; font-size: 14px; color: var(--dark); width: 100%; box-sizing: border-box; }
.mp-brandfilter a { margin-left: 10px; font-weight: 700; color: var(--blue); white-space: nowrap; }

/* Сторінка "Доставка і оплата": картки доставки/оплати, строки, питання */
.ship-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin: 14px 0 8px; }
.ship-card { background: #fff; border: 1px solid var(--line); border-radius: 12px; padding: 18px; transition: border-color .15s ease, box-shadow .15s ease; }
.ship-card:hover { border-color: #8A939C; box-shadow: 0 6px 18px rgba(65,76,88,.10); }
.ship-head { height: 46px; display: flex; align-items: center; margin-bottom: 12px; }
.ship-logo { width: 192px; max-width: 100%; height: auto; display: block; }
.ship-ic.ship-ic-logo::before { content: none; display: none; }
.ship-mark { width: 34px; height: 34px; display: block; }
.ship-mark-big { width: 44px; height: 44px; display: block; }
.ship-ic { flex: 0 0 46px; width: 46px; height: 46px; border-radius: 11px; background: #EDEFF1; display: inline-flex; align-items: center; justify-content: center; }
.ship-ic::before { content: ""; width: 26px; height: 26px; background: #414C58; -webkit-mask-image: var(--icn); -webkit-mask-repeat: no-repeat; -webkit-mask-position: center; -webkit-mask-size: contain; mask-image: var(--icn); mask-repeat: no-repeat; mask-position: center; mask-size: contain; }
.icn-warehouse { --icn: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 21V10.2L12 4l8 6.2V21'/%3E%3Cpath d='M2.5 21h19'/%3E%3Cpath d='M9.8 21v-5.4h4.4V21'/%3E%3C/svg%3E"); }
.icn-truck { --icn: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 6h11v10.5h-11z'/%3E%3Cpath d='M13.5 9.8h3.9l3.1 3.1v3.6h-7'/%3E%3Ccircle cx='6.6' cy='18' r='1.7'/%3E%3Ccircle cx='16.9' cy='18' r='1.7'/%3E%3Cpath d='M2.5 18h2.4M8.3 18h6.9M18.6 18h2.9'/%3E%3C/svg%3E"); }
.icn-card { --icn: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2.5' y='5.2' width='19' height='13.6' rx='2'/%3E%3Cpath d='M2.5 9.6h19'/%3E%3Cpath d='M6 14.8h4'/%3E%3C/svg%3E"); }
.icn-doc { --icn: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2.8h7.2L18 7.6V21.2H6z'/%3E%3Cpath d='M13.2 2.8v4.8H18'/%3E%3Cpath d='M9.2 12.6h5.6M9.2 16h5.6'/%3E%3C/svg%3E"); }
.icn-cash { --icn: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2.5' y='6.2' width='19' height='11.6' rx='2'/%3E%3Ccircle cx='12' cy='12' r='2.6'/%3E%3Cpath d='M5.9 9.6v.2M18.1 14.2v.2'/%3E%3C/svg%3E"); }
.icn-clock { --icn: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.6'/%3E%3Cpath d='M12 7.4V12l3.1 2'/%3E%3C/svg%3E"); }
.icn-box { --icn: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 7.4L12 3l8.5 4.4v9.2L12 21l-8.5-4.4z'/%3E%3Cpath d='M3.5 7.4L12 11.8l8.5-4.4'/%3E%3Cpath d='M12 11.8V21'/%3E%3Cpath d='M7.2 5.2L15.7 9.6'/%3E%3C/svg%3E"); }
.ship-card h3 { font-size: 15.5px; line-height: 1.3; margin-bottom: 6px; }
.ship-card p { font-size: 13.5px; line-height: 1.5; color: #4A4A4A; }
.pay-note { font-size: 13px; color: var(--gray); margin: 4px 0 8px; }
.terms-strip { display: flex; gap: 14px; align-items: center; background: #EDEFF1; border-radius: 12px; padding: 16px 18px; margin: 14px 0 8px; }
.terms-strip .ship-ic { background: #fff; }
.terms-strip p { font-size: 14px; line-height: 1.55; }
.qa-block { background: #EDEFF1; border-radius: 12px; padding: 16px 18px; margin: 14px 0 8px; }
.qa-block p { font-size: 14px; line-height: 1.55; }
@media (max-width: 900px) { .ship-grid { grid-template-columns: 1fr; } .terms-strip { align-items: flex-start; } }

/* Сторінка "Про компанію": відео та іконки переваг */
.about-video { margin: 18px 0 6px; }
.about-video video { width: 100%; height: auto; display: block; border-radius: 12px; border: 1px solid var(--line); background: #000; }
.icn-shield { --icn: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 2.4V11c0 4.6-2.9 7.7-7 9.2C7.9 18.7 5 15.6 5 11V5.4z'/%3E%3Cpath d='M9 11.4l2.1 2.1 4-4.2'/%3E%3C/svg%3E"); }
.icn-ring { --icn: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.6'/%3E%3Ccircle cx='12' cy='12' r='3.6'/%3E%3Cpath d='M5.9 5.9l2.5 2.5M15.6 15.6l2.5 2.5M18.1 5.9l-2.5 2.5M8.4 15.6l-2.5 2.5'/%3E%3C/svg%3E"); }
.icn-factory { --icn: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21V10.6l5 2.8v-2.8l5 2.8V7h6v14'/%3E%3Cpath d='M2.5 21h19'/%3E%3Cpath d='M16.5 11h.2M16.5 14.5h.2'/%3E%3C/svg%3E"); }

/* Картка-посилання (вся плитка клікабельна через розтягнуте посилання) */
.ship-card { position: relative; }
.ship-card a.stretched { color: inherit; text-decoration: none; }
.ship-card a.stretched::after { content: ""; position: absolute; inset: 0; }
.icn-tag { --icn: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 3.5H11L20.5 13 13 20.5 3.5 11z'/%3E%3Ccircle cx='8' cy='8' r='1.6'/%3E%3C/svg%3E"); }

/* Пагінація: номери сторінок не сіріють після відвідування */
.woocommerce nav.woocommerce-pagination ul li a:visited { color: var(--dark) !important; }

/* Крупний степпер кількості (картка товару) */
.single-product form.cart { display: flex; align-items: stretch; gap: 12px; flex-wrap: wrap; }
.single-product form.cart .quantity { display: inline-flex; align-items: center; gap: 2px; background: #fff; border: 1.5px solid #C9CFD6; border-radius: 999px; padding: 4px; margin: 0; }
.single-product form.cart .quantity .qty { width: 54px; height: 44px; border: 0; background: transparent; text-align: center; font-size: 17.5px; font-weight: 700; color: var(--dark); padding: 0; margin: 0; -moz-appearance: textfield; appearance: textfield; }
.single-product form.cart .quantity .qty::-webkit-outer-spin-button, .single-product form.cart .quantity .qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.single-product form.cart .quantity .qty:focus { outline: none; }
.qty-btn { flex: 0 0 42px; width: 42px; height: 42px; border-radius: 50%; border: 1.5px solid #C9CFD6; background: linear-gradient(180deg, #FFFFFF, #EDEFF1); color: var(--dark); font-size: 21px; font-weight: 800; line-height: 1; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; padding: 0; transition: background .15s ease, color .15s ease; }
.qty-btn:hover { background: linear-gradient(180deg, #5F6B77, #22282F); color: #fff; border-color: #22282F; }
.qty-btn:active { transform: scale(.94); }
.single-product .single_add_to_cart_button { display: inline-flex; align-items: center; min-height: 54px; }

/* Крупний степпер кількості (блочний кошик) */
.wc-block-components-quantity-selector { display: inline-flex; align-items: center; height: 52px; border: 1.5px solid #C9CFD6 !important; border-radius: 999px !important; padding: 4px; background: #fff; }
.wc-block-components-quantity-selector .wc-block-components-quantity-selector__input { width: 50px; height: 42px; font-size: 17px !important; font-weight: 700; color: var(--dark); text-align: center; border: 0 !important; background: transparent; padding: 0; margin: 0; -moz-appearance: textfield; appearance: textfield; }
.wc-block-components-quantity-selector__input::-webkit-outer-spin-button, .wc-block-components-quantity-selector__input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button { width: 42px; height: 42px; border-radius: 50%; border: 1.5px solid #C9CFD6; background: linear-gradient(180deg, #FFFFFF, #EDEFF1); color: var(--dark); font-size: 20px; font-weight: 800; line-height: 1; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; opacity: 1; }
.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:hover { background: linear-gradient(180deg, #5F6B77, #22282F); color: #fff; border-color: #22282F; }
.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:disabled { opacity: .35; cursor: default; }

/* Панель над каталогом: підпис сортування і однакові вікна */
.woocommerce .woocommerce-ordering { display: inline-flex; align-items: center; gap: 10px; }
.woocommerce .woocommerce-ordering::before { content: "Сортувати за:"; font-size: 14px; font-weight: 600; color: var(--blue); white-space: nowrap; }
.woocommerce .woocommerce-ordering select.orderby, #mp-perpage-sel { width: 220px; max-width: 60vw; height: 40px; border: 1.5px solid #C9CFD6; border-radius: 8px; background-color: #fff; padding: 0 10px; font-size: 14.5px; color: var(--dark); box-sizing: border-box; }
.mp-perpage { display: inline-flex; align-items: center; gap: 10px; }

/* Фільтри каталогу (1.3.44) */
.mp-filters { background: #fff; border: 1px solid var(--line); border-radius: 10px; padding: 16px 18px 14px; margin: 0 0 18px; }
.mp-filters-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; }
.mp-filters-title { font-weight: 700; font-size: 15px; color: var(--dark); }
.mp-filters-reset { font-size: 13px; color: var(--blue); text-decoration: none; }
.mp-filters-reset:hover { text-decoration: underline; }
.mp-filters-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 14px 22px; }
.mp-fgroup { border: 0; margin: 0; padding: 0; min-width: 0; }
.mp-fgroup legend { font-size: 12.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .02em; color: var(--dark); padding: 0; margin-bottom: 6px; }
.mp-fgroup-list { max-height: 172px; overflow-y: auto; display: flex; flex-direction: column; gap: 2px; padding-right: 4px; }
.mp-fopt { display: flex; align-items: center; gap: 7px; font-size: 13.5px; cursor: pointer; padding: 2px 0; color: var(--ink, #22282F); }
.mp-fopt input { width: 15px; height: 15px; accent-color: var(--blue); flex-shrink: 0; }
.mp-fopt em { font-style: normal; color: #8A939C; font-size: 12px; margin-left: auto; }
.mp-filters-foot { margin-top: 12px; }
.mp-apply { background: var(--blue); color: #fff; border: 0; border-radius: 8px; padding: 9px 22px; font-size: 14px; font-weight: 600; cursor: pointer; }
.mp-apply:hover { background: var(--blue2); }
@media (max-width: 640px) { .mp-filters-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 420px) { .mp-filters-grid { grid-template-columns: 1fr; } }
