/*
Theme Name: BEBI MAMA
Theme URI: https://bebimama.pl
Author: eCommerce Manager
Description: Autorski motyw sklepu BEBI MAMA — wyprawka, akcesoria dla dzieci i mam. Płaska, czysta siatka w stylu dobreliski.pl, pełne wsparcie WooCommerce.
Version: 1.0.0
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bebimama
Tags: e-commerce, custom-menu, featured-images, translation-ready
WC requires at least: 8.0
WC tested up to: 11.0
*/

/* ============================================================
   0. TOKENY
   ========================================================== */
:root{
	--ink:        #1F2A37;
	--ink-2:      #4D5761;
	--muted:      #6C737F;
	--muted-2:    #9DA4AE;
	--line:       #E5E7EB;
	--line-2:     #D2D6DB;
	--soft:       #F3F4F6;
	--white:      #FFFFFF;
	--accent:     #F04438;
	--accent-dk:  #D92D20;
	--accent-2:   #EF6820;
	--ok:         #12805C;

	--container:  1240px;
	--inner:      1200px;
	--gap:        24px;
	--radius:     0px;

	--font: "Noto Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}

/* ============================================================
   1. RESET / BAZA
   ========================================================== */
*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
body{
	margin:0;
	font-family:var(--font);
	font-size:16px;
	line-height:1.55;
	color:var(--ink);
	background:var(--white);
	overflow-x:clip;
}
img{ max-width:100%; height:auto; display:block; }
a{ color:var(--ink); text-decoration:none; }
a:hover{ color:var(--accent); }
h1,h2,h3,h4{ font-weight:600; line-height:1.25; margin:0 0 .6em; color:var(--ink); }
h1{ font-size:32px; }
h2{ font-size:24px; }
h3{ font-size:19px; }
p{ margin:0 0 1em; }
ul,ol{ margin:0 0 1em; padding-left:1.2em; }
button,input,select,textarea{ font:inherit; color:inherit; }
:focus-visible{ outline:2px solid var(--accent); outline-offset:2px; }

.bm-container{ max-width:var(--container); margin:0 auto; padding:0 20px; }
.bm-inner{ max-width:var(--inner); margin:0 auto; }
.screen-reader-text{
	position:absolute!important; width:1px; height:1px; overflow:hidden;
	clip:rect(1px,1px,1px,1px); white-space:nowrap;
}
.bm-skip{ position:absolute; left:-9999px; }
.bm-skip:focus{ left:12px; top:12px; z-index:999; background:#fff; padding:10px 16px; border:2px solid var(--ink); }

/* ============================================================
   2. PRZYCISKI
   ========================================================== */
.bm-btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce .button,
.wp-block-button__link{
	display:inline-flex; align-items:center; justify-content:center; gap:8px;
	background:var(--ink); color:#fff!important;
	border:1px solid var(--ink); border-radius:var(--radius);
	padding:12px 22px; font-size:15px; font-weight:600; line-height:1.2;
	text-transform:none; letter-spacing:0; cursor:pointer;
	transition:background .15s ease, border-color .15s ease, color .15s ease;
}
.bm-btn:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce .button:hover{ background:var(--accent); border-color:var(--accent); color:#fff!important; }

.bm-btn--accent,
.woocommerce button.button.alt,
.woocommerce a.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt{
	background:var(--accent); border-color:var(--accent); color:#fff!important;
}
.bm-btn--accent:hover,
.woocommerce button.button.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce input.button.alt:hover{ background:var(--accent-dk); border-color:var(--accent-dk); }

.bm-btn--ghost{ background:transparent; color:var(--ink)!important; border-color:var(--ink); }
.bm-btn--ghost:hover{ background:var(--ink); color:#fff!important; }

/* ============================================================
   3. TOPBAR
   ========================================================== */
.bm-topbar{ background:var(--soft); border-bottom:1px solid var(--line); font-size:13px; color:var(--ink-2); }
.bm-topbar__row{ display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:36px; }
.bm-topbar__links{ display:flex; gap:22px; list-style:none; margin:0; padding:0; }
.bm-topbar__links a{ color:var(--ink-2); }
.bm-topbar__links a:hover{ color:var(--accent); }
.bm-topbar__note{ font-weight:600; color:var(--ink); white-space:nowrap; }
.bm-topbar__note strong{ color:var(--accent); }

/* ============================================================
   4. LOGO BAR
   ========================================================== */
.bm-logobar{ background:#fff; }
.bm-logobar__row{
	display:grid; grid-template-columns:auto minmax(0,1fr) auto;
	align-items:center; gap:32px; min-height:92px;
}
.bm-logo{ display:flex; align-items:center; gap:10px; }
.bm-logo img{ max-height:52px; width:auto; }
.bm-logo__text{ font-size:26px; font-weight:700; letter-spacing:-.4px; color:var(--ink); line-height:1; }
.bm-logo__text span{ color:var(--accent); }
.bm-logo__tag{ display:block; font-size:11px; font-weight:500; color:var(--muted); letter-spacing:.18em; text-transform:uppercase; margin-top:5px; }

.bm-search{ position:relative; max-width:560px; width:100%; }
.bm-search form{ display:flex; }
.bm-search input[type="search"],
.bm-search input[type="text"]{
	flex:1; min-width:0; height:46px; padding:0 14px;
	border:1px solid var(--line-2); border-right:0; border-radius:0;
	background:#fff; font-size:15px;
}
.bm-search input::placeholder{ color:var(--muted-2); }
.bm-search input:focus{ outline:none; border-color:var(--ink); }
.bm-search button{
	height:46px; padding:0 20px; background:var(--ink); border:1px solid var(--ink);
	color:#fff; cursor:pointer; display:flex; align-items:center; gap:8px; font-weight:600; font-size:15px;
}
.bm-search button:hover{ background:var(--accent); border-color:var(--accent); }

.bm-actions{ display:flex; align-items:center; gap:8px; }
.bm-action{
	display:flex; align-items:center; gap:9px; padding:8px 10px; color:var(--ink);
	font-size:13px; line-height:1.15; position:relative;
}
.bm-action:hover{ color:var(--accent); }
.bm-action svg{ width:24px; height:24px; flex:none; stroke:currentColor; fill:none; stroke-width:1.6; }
.bm-action__label{ display:flex; flex-direction:column; }
.bm-action__label b{ font-weight:600; font-size:13px; }
.bm-action__label small{ color:var(--muted); font-size:12px; }
.bm-cart__count{
	position:absolute; top:2px; left:24px; min-width:18px; height:18px; padding:0 5px;
	background:var(--accent); color:#fff; font-size:11px; font-weight:700;
	display:flex; align-items:center; justify-content:center; border-radius:9px;
}

/* ============================================================
   5. MENU
   ========================================================== */
.bm-menubar{ border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:#fff; }
.bm-menu{ display:flex; list-style:none; margin:0; padding:0; gap:0; }
.bm-menu > li{ position:relative; }
.bm-menu > li > a{
	display:flex; align-items:center; height:54px; padding:0 18px;
	font-size:15px; font-weight:600; color:var(--ink); border-bottom:3px solid transparent;
}
.bm-menu > li:first-child > a{ padding-left:0; }
.bm-menu > li > a:hover,
.bm-menu > li.current-menu-item > a,
.bm-menu > li.current-menu-parent > a{ color:var(--accent); border-bottom-color:var(--accent); }
.bm-menu > li.bm-menu--hot > a{ color:var(--accent); }

.bm-menu .sub-menu{
	position:absolute; top:100%; left:0; z-index:60; min-width:250px;
	background:#fff; border:1px solid var(--line); list-style:none; margin:0; padding:8px 0;
	box-shadow:0 12px 28px rgba(31,42,55,.10);
	opacity:0; visibility:hidden; transform:translateY(6px); transition:.16s ease;
}
.bm-menu li:hover > .sub-menu{ opacity:1; visibility:visible; transform:translateY(0); }
.bm-menu .sub-menu a{ display:block; padding:9px 18px; font-size:14.5px; color:var(--ink-2); }
.bm-menu .sub-menu a:hover{ background:var(--soft); color:var(--accent); }
.bm-menu .sub-menu .sub-menu{ top:0; left:100%; }

.bm-burger{ display:none; align-items:center; gap:9px; background:none; border:0; padding:12px 0; font-weight:600; cursor:pointer; }
.bm-burger svg{ width:22px; height:22px; stroke:currentColor; fill:none; stroke-width:1.8; }

/* mobilne menu */
.bm-mobilenav{
	position:fixed; inset:0 auto 0 0; width:min(88vw,340px); z-index:1000;
	background:#fff; transform:translateX(-100%); transition:transform .22s ease;
	display:flex; flex-direction:column; overflow-y:auto;
	box-shadow:0 0 40px rgba(0,0,0,.18);
}
.bm-mobilenav.is-open{ transform:translateX(0); }
.bm-mobilenav__head{ display:flex; align-items:center; justify-content:space-between; padding:16px 18px; border-bottom:1px solid var(--line); }
.bm-mobilenav ul{ list-style:none; margin:0; padding:0; }
.bm-mobilenav a{ display:block; padding:13px 18px; border-bottom:1px solid var(--line); font-weight:600; }
.bm-mobilenav .sub-menu a{ padding-left:34px; font-weight:400; color:var(--ink-2); }
.bm-overlay{ position:fixed; inset:0; background:rgba(31,42,55,.45); z-index:999; opacity:0; visibility:hidden; transition:.2s; }
.bm-overlay.is-open{ opacity:1; visibility:visible; }

/* ============================================================
   6. BREADCRUMBS
   ========================================================== */
.bm-breadcrumbs{ font-size:13px; color:var(--muted); padding:14px 0 4px; }
.bm-breadcrumbs a{ color:var(--muted); }
.bm-breadcrumbs a:hover{ color:var(--accent); }
.bm-breadcrumbs .sep{ margin:0 8px; color:var(--muted-2); }

/* ============================================================
   7. HERO / BANERY
   ========================================================== */
.bm-hero{ margin-top:16px; }
.bm-hero__slide{ position:relative; display:block; background:var(--soft); }
.bm-hero__slide img{ width:100%; height:auto; object-fit:cover; }
.bm-hero__box{
	position:absolute; left:6%; top:50%; transform:translateY(-50%);
	max-width:440px; background:rgba(255,255,255,.94); padding:32px 34px;
}
.bm-hero__box h2{ font-size:32px; margin-bottom:10px; }
.bm-hero__box p{ color:var(--ink-2); margin-bottom:18px; }
.bm-hero--placeholder{
	min-height:340px; display:flex; align-items:center;
	background:linear-gradient(120deg,#FDECEA 0%,#F3F4F6 60%);
}
.bm-hero--placeholder .bm-hero__box{ position:static; transform:none; background:transparent; padding:44px; }

.bm-tiles{ display:grid; grid-template-columns:repeat(3,1fr); gap:var(--gap); margin-top:var(--gap); }
.bm-tile{ position:relative; display:block; overflow:hidden; background:var(--soft); }
.bm-tile img{ width:100%; aspect-ratio:16/9; object-fit:cover; transition:transform .4s ease; }
.bm-tile:hover img{ transform:scale(1.04); }
.bm-tile__label{
	position:absolute; left:0; bottom:0; right:0; padding:16px 18px;
	background:linear-gradient(to top,rgba(31,42,55,.78),transparent);
	color:#fff; font-weight:600; font-size:17px;
}

/* ============================================================
   8. SEKCJE
   ========================================================== */
.bm-section{ padding:44px 0 0; }
.bm-section--soft{ background:var(--soft); padding:44px 0; margin-top:44px; }
.bm-section__head{ display:flex; align-items:baseline; justify-content:space-between; gap:20px; margin-bottom:20px; }
.bm-section__head h2{ margin:0; color:var(--ink-2); font-size:24px; font-weight:600; }
.bm-section__head a{ font-size:14px; font-weight:600; color:var(--accent); white-space:nowrap; }

/* kategorie — kafle okrągłe zdjęcia */
.bm-cats{ display:grid; grid-template-columns:repeat(6,1fr); gap:var(--gap); }
.bm-cat{ text-align:center; }
.bm-cat__img{ background:var(--soft); aspect-ratio:1; overflow:hidden; margin-bottom:10px; }
.bm-cat__img img{ width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.bm-cat:hover .bm-cat__img img{ transform:scale(1.06); }
.bm-cat__name{ font-size:14.5px; font-weight:600; }
.bm-cat__count{ display:block; font-size:12.5px; color:var(--muted); font-weight:400; }

/* USP */
.bm-usp{ display:grid; grid-template-columns:repeat(4,1fr); gap:var(--gap); padding:28px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); margin-top:44px; }
.bm-usp__item{ display:flex; gap:14px; align-items:flex-start; }
.bm-usp__item svg{ width:30px; height:30px; flex:none; stroke:var(--accent); fill:none; stroke-width:1.5; }
.bm-usp__item b{ display:block; font-size:15px; }
.bm-usp__item span{ font-size:13.5px; color:var(--muted); }

/* newsletter */
.bm-newsletter{ background:var(--ink); color:#fff; padding:44px 0; margin-top:44px; }
.bm-newsletter__row{ display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; }
.bm-newsletter h2{ color:#fff; margin-bottom:6px; }
.bm-newsletter p{ color:#C9CED6; margin:0; font-size:15px; }
.bm-newsletter form{ display:flex; }
.bm-newsletter input[type="email"]{ flex:1; height:50px; padding:0 16px; border:1px solid #3B4552; background:#fff; }
.bm-newsletter button{ height:50px; padding:0 26px; background:var(--accent); border:1px solid var(--accent); color:#fff; font-weight:600; cursor:pointer; }
.bm-newsletter button:hover{ background:var(--accent-dk); border-color:var(--accent-dk); }
.bm-newsletter small{ display:block; margin-top:10px; color:#9DA4AE; font-size:12px; }

/* blog */
.bm-posts{ display:grid; grid-template-columns:repeat(3,1fr); gap:var(--gap); }
.bm-post__thumb{ aspect-ratio:16/10; overflow:hidden; background:var(--soft); margin-bottom:12px; }
.bm-post__thumb img{ width:100%; height:100%; object-fit:cover; transition:transform .35s; }
.bm-post:hover .bm-post__thumb img{ transform:scale(1.04); }
.bm-post__meta{ font-size:12.5px; color:var(--muted-2); margin-bottom:5px; }
.bm-post h3{ font-size:17px; margin:0 0 8px; }
.bm-post p{ font-size:14px; color:var(--muted); margin:0; }

/* ============================================================
   9. WOOCOMMERCE — SIATKA PRODUKTÓW
   ========================================================== */
.woocommerce ul.products,
ul.products{
	display:grid!important; grid-template-columns:repeat(4,1fr); gap:var(--gap);
	list-style:none; margin:0; padding:0;
}
.woocommerce ul.products::before,
.woocommerce ul.products::after{ display:none; }
.woocommerce ul.products li.product,
ul.products li.product{
	width:auto!important; margin:0!important; float:none!important; text-align:left;
	background:#fff; position:relative; display:flex; flex-direction:column;
}
.bm-cols-3 ul.products{ grid-template-columns:repeat(3,1fr); }
.bm-cols-5 ul.products{ grid-template-columns:repeat(5,1fr); }

.bm-card__media{ position:relative; background:#fff; overflow:hidden; margin-bottom:12px; }
.woocommerce ul.products li.product a img,
ul.products li.product img{
	width:100%; aspect-ratio:1; object-fit:contain; margin:0; transition:transform .35s ease;
}
ul.products li.product:hover img{ transform:scale(1.05); }

.woocommerce ul.products li.product .woocommerce-loop-product__title,
ul.products li.product .woocommerce-loop-product__title{
	font-size:14.5px; font-weight:500; line-height:1.4; color:var(--ink);
	padding:0; margin:0 0 8px;
	display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;
}
.bm-card__brand{ font-size:12px; color:var(--muted-2); text-transform:uppercase; letter-spacing:.06em; margin-bottom:4px; }
.woocommerce ul.products li.product .price,
ul.products li.product .price{
	color:var(--ink); font-size:18px; font-weight:700; margin:auto 0 12px; display:block;
}
ul.products li.product .price del{ color:var(--muted-2); font-weight:400; font-size:14px; margin-right:6px; }
ul.products li.product .price ins{ color:var(--accent); text-decoration:none; }
ul.products li.product .price .woocommerce-Price-currencySymbol{ font-weight:inherit; }

ul.products li.product .button,
ul.products li.product .added_to_cart{
	width:100%; font-size:14px; padding:11px 14px; margin:0;
}
ul.products li.product .added_to_cart{ margin-top:8px; background:#fff; color:var(--ink)!important; border-color:var(--line-2); }

/* badge promocji */
.woocommerce span.onsale,
ul.products li.product .onsale{
	position:absolute; top:0; left:0; right:auto; margin:0; z-index:5;
	background:var(--accent); color:#fff; border-radius:0;
	font-size:12px; font-weight:700; line-height:1; padding:7px 10px;
	min-width:0; min-height:0;
}
.bm-badge-new{
	position:absolute; top:0; right:0; z-index:5; background:var(--ink); color:#fff;
	font-size:12px; font-weight:700; padding:7px 10px;
}

/* gwiazdki */
.woocommerce .star-rating{ font-size:13px; color:var(--accent-2); margin:0 0 8px; }

/* ============================================================
   10. WOOCOMMERCE — LISTING / SIDEBAR
   ========================================================== */
.bm-shop{ display:grid; grid-template-columns:260px minmax(0,1fr); gap:36px; padding:24px 0 60px; }
.bm-shop--full{ grid-template-columns:minmax(0,1fr); }
.bm-sidebar .widget{ margin-bottom:28px; padding-bottom:24px; border-bottom:1px solid var(--line); }
.bm-sidebar .widget:last-child{ border-bottom:0; }
.bm-sidebar .widget-title,
.bm-sidebar h2{ font-size:15px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; margin-bottom:14px; }
.bm-sidebar ul{ list-style:none; margin:0; padding:0; font-size:14.5px; }
.bm-sidebar li{ padding:5px 0; color:var(--ink-2); }
.bm-sidebar li a:hover{ color:var(--accent); }

.woocommerce .woocommerce-result-count{ color:var(--muted); font-size:14px; margin:0; }
.woocommerce .woocommerce-ordering{ margin:0; }
.woocommerce .woocommerce-ordering select{ height:40px; border:1px solid var(--line-2); padding:0 12px; background:#fff; border-radius:0; }
.bm-shop__toolbar{ display:flex; align-items:center; justify-content:space-between; gap:16px; padding:0 0 18px; margin-bottom:22px; border-bottom:1px solid var(--line); flex-wrap:wrap; }
.bm-page-head{ padding:8px 0 18px; }
.bm-page-head h1{ margin:0 0 6px; font-size:28px; }
.bm-page-head p{ color:var(--muted); margin:0; font-size:14.5px; max-width:70ch; }

.woocommerce nav.woocommerce-pagination ul{ border:0; margin:36px 0 0; display:flex; gap:6px; justify-content:center; }
.woocommerce nav.woocommerce-pagination ul li{ border:0; margin:0; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
	min-width:42px; height:42px; display:flex; align-items:center; justify-content:center;
	border:1px solid var(--line-2); background:#fff; padding:0; font-weight:600;
}
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover{ background:var(--ink); border-color:var(--ink); color:#fff; }

/* ============================================================
   11. WOOCOMMERCE — KARTA PRODUKTU
   ========================================================== */
.woocommerce div.product{ padding:24px 0 60px; }
.woocommerce div.product div.images{ width:50%; }
.woocommerce div.product div.summary{ width:46%; }
.woocommerce div.product .product_title{ font-size:28px; margin-bottom:12px; }
.woocommerce div.product p.price,
.woocommerce div.product span.price{ color:var(--ink); font-size:30px; font-weight:700; margin:0 0 6px; }
.woocommerce div.product p.price ins{ color:var(--accent); text-decoration:none; }
.woocommerce div.product p.price del{ color:var(--muted-2); font-size:20px; font-weight:400; }
.woocommerce div.product .woocommerce-product-details__short-description{ color:var(--ink-2); font-size:15px; }
.woocommerce div.product form.cart{ margin:22px 0; display:flex; gap:12px; flex-wrap:wrap; align-items:center; }
.woocommerce div.product form.cart .button{ padding:14px 34px; font-size:16px; }
.woocommerce .quantity .qty{ height:50px; width:78px; border:1px solid var(--line-2); text-align:center; border-radius:0; }
.woocommerce div.product .product_meta{ font-size:13.5px; color:var(--muted); border-top:1px solid var(--line); padding-top:16px; }

.woocommerce div.product .woocommerce-tabs ul.tabs{ padding:0; margin:0 0 24px; border-bottom:1px solid var(--line); display:flex; gap:4px; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before{ display:none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li{
	background:transparent; border:0; border-radius:0; margin:0; padding:0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after{ display:none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
	padding:12px 20px; font-weight:600; color:var(--muted); border-bottom:3px solid transparent; display:block;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{ color:var(--ink); border-bottom-color:var(--accent); }

.bm-trust{ display:grid; gap:12px; padding:18px; background:var(--soft); margin:20px 0; font-size:14px; }
.bm-trust div{ display:flex; gap:10px; align-items:center; }
.bm-trust svg{ width:20px; height:20px; stroke:var(--accent); fill:none; stroke-width:1.6; flex:none; }

/* ============================================================
   12. KOSZYK / ZAMÓWIENIE / KONTO
   ========================================================== */
.woocommerce-cart .entry-content,
.woocommerce-checkout .entry-content,
.woocommerce-account .entry-content{ padding-bottom:60px; }
.woocommerce table.shop_table{ border:1px solid var(--line); border-radius:0; border-collapse:collapse; }
.woocommerce table.shop_table th{ background:var(--soft); font-size:13px; text-transform:uppercase; letter-spacing:.05em; }
.woocommerce table.shop_table td,
.woocommerce table.shop_table th{ border-color:var(--line); }
.woocommerce .cart_totals h2,
.woocommerce-checkout h3{ font-size:19px; }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container--default .select2-selection--single{
	border:1px solid var(--line-2); border-radius:0; min-height:46px; padding:10px 12px; background:#fff;
}
.woocommerce-message,.woocommerce-info,.woocommerce-error{
	border-top-color:var(--accent); background:var(--soft); border-radius:0;
}
.woocommerce-message::before,.woocommerce-info::before{ color:var(--accent); }

/* bloki koszyka/checkoutu (Woo Blocks) */
.wc-block-components-button:not(.is-link){ border-radius:0!important; background:var(--accent)!important; }
.wc-block-components-text-input input,
.wc-block-components-form .wc-block-components-text-input input{ border-radius:0!important; }

/* ============================================================
   13. TREŚCI / BLOG
   ========================================================== */
.bm-entry{ padding:24px 0 60px; }
.bm-entry__narrow{ max-width:760px; }
.bm-entry h1{ font-size:32px; }
.bm-entry img{ margin:20px 0; }
.bm-entry table{ width:100%; border-collapse:collapse; margin:20px 0; font-size:14.5px; }
.bm-entry th,.bm-entry td{ border:1px solid var(--line); padding:10px 12px; text-align:left; }
.bm-entry th{ background:var(--soft); font-weight:600; }
.bm-entry blockquote{ border-left:3px solid var(--accent); margin:20px 0; padding:4px 0 4px 18px; color:var(--ink-2); }

/* ============================================================
   14. STOPKA
   ========================================================== */
.bm-footer{ border-top:1px solid var(--line); margin-top:56px; padding:44px 0 0; font-size:14.5px; color:var(--muted); }
.bm-footer__cols{ display:grid; grid-template-columns:repeat(4,1fr); gap:var(--gap); padding-bottom:36px; }
.bm-footer h3{ font-size:15px; font-weight:700; color:var(--ink); text-transform:uppercase; letter-spacing:.06em; margin-bottom:14px; }
.bm-footer ul{ list-style:none; margin:0; padding:0; }
.bm-footer li{ padding:4px 0; }
.bm-footer a{ color:var(--muted); }
.bm-footer a:hover{ color:var(--accent); }
.bm-footer__contact b{ display:block; color:var(--ink); font-size:19px; font-weight:700; margin-bottom:2px; }
.bm-footer__bottom{
	border-top:1px solid var(--line); padding:18px 0 26px;
	display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap;
	font-size:13px;
}
.bm-pays{ display:flex; gap:8px; flex-wrap:wrap; }
.bm-pays span{ border:1px solid var(--line); padding:5px 10px; font-size:11.5px; font-weight:600; color:var(--ink-2); background:#fff; }

/* ============================================================
   15. RWD
   ========================================================== */
@media (max-width:1100px){
	.bm-cats{ grid-template-columns:repeat(4,1fr); }
	.woocommerce ul.products, ul.products{ grid-template-columns:repeat(3,1fr); }
	.bm-shop{ grid-template-columns:1fr; }
	.bm-sidebar{ order:2; }
}
@media (max-width:900px){
	.bm-topbar__links{ display:none; }
	.bm-menubar{ display:none; }
	.bm-burger{ display:flex; }
	.bm-logobar__row{ grid-template-columns:auto auto; gap:14px; min-height:70px; row-gap:12px; padding:12px 0; }
	.bm-search{ grid-column:1/-1; order:3; max-width:none; }
	.bm-usp{ grid-template-columns:repeat(2,1fr); }
	.bm-tiles,.bm-posts{ grid-template-columns:1fr 1fr; }
	.bm-newsletter__row{ grid-template-columns:1fr; gap:20px; }
	.woocommerce div.product div.images,
	.woocommerce div.product div.summary{ width:100%; float:none; }
	.bm-footer__cols{ grid-template-columns:1fr 1fr; }
}
@media (max-width:640px){
	h1{ font-size:25px; }
	.bm-section__head h2{ font-size:20px; }
	.bm-cats{ grid-template-columns:repeat(3,1fr); }
	.woocommerce ul.products, ul.products{ grid-template-columns:repeat(2,1fr); gap:14px; }
	.bm-tiles,.bm-posts{ grid-template-columns:1fr; }
	.bm-action__label{ display:none; }
	.bm-usp{ grid-template-columns:1fr; }
	.bm-footer__cols{ grid-template-columns:1fr; }
	.bm-hero__box{ position:static; transform:none; max-width:none; padding:22px; }
}
