/* =========================================================================
   Moja Wtyczka Wyglądu — arkusz stylów
   Sklep: stylujemy WYŁĄCZNIE natywne, stabilne klasy WooCommerce (.products,
   .product, widgety filtrów, bloki Gutenberga) — zero nadpisywania szablonów,
   przetrwa aktualizacje WooCommerce.
   Blog: stylujemy realne klasy motywu YITH Proteo (hentry, .blog-posts,
   .entry-title, .entry-content/.entry-summary, .post-thumbnail) ustalone na
   podstawie kodu źródłowego motywu — plus kilka własnych klas (mwg-*) dla
   elementów renderowanych przez samą wtyczkę (formularz i wyniki AJAX).
   ========================================================================= */

:root {
	--mwg-blue: #28a4dd;
	--mwg-blue-dark: #05446e;
	--mwg-green: #037137;
	--mwg-green-dark: #014325;
	--mwg-ice: #eef8fc;
	--mwg-ice-border: #cfe9f5;
	--mwg-text: #1c2226;
	--mwg-text-muted: #6b7680;
	--mwg-radius: 12px;
	--mwg-mono: ui-monospace, 'SF Mono', 'Cascadia Code', 'Roboto Mono', Consolas, monospace;
	--mwg-gradient-blue: linear-gradient(135deg, var(--mwg-blue), var(--mwg-blue-dark));
	--mwg-gradient-green: linear-gradient(135deg, var(--mwg-green), var(--mwg-green-dark));
}

/* =========================================================================
   PEŁNA SZEROKOŚĆ STRON — próba "na ślepo", bo nie mam wglądu w realny CSS
   Twojego motywu (nie znam dokładnej nazwy klasy kontenera treści). Celuję
   w najczęściej spotykane nazwy klas/ID kontenera w motywach WordPress.
   Jeśli po wgraniu jakaś podstrona nadal jest wyśrodkowana i węższa niż
   ekran — daj znać (najlepiej z linkiem do strony albo nazwą klasy z
   podglądu elementu w przeglądarce), dopiszę dokładny selektor.
   ========================================================================= */
body:not(.elementor-editor-active) .site-content,
body:not(.elementor-editor-active) .content-area,
body:not(.elementor-editor-active) #content,
body:not(.elementor-editor-active) #primary,
body:not(.elementor-editor-active) .site-main,
body:not(.elementor-editor-active) main.site-main,
body:not(.elementor-editor-active) .container,
body:not(.elementor-editor-active) .page-container,
body:not(.elementor-editor-active) .entry-content-wrap {
	max-width: 100% !important;
	width: 100% !important;
	padding-left: 24px !important;
	padding-right: 24px !important;
	box-sizing: border-box !important;
}
@media (max-width: 640px) {
	body:not(.elementor-editor-active) .site-content,
	body:not(.elementor-editor-active) .content-area,
	body:not(.elementor-editor-active) #content,
	body:not(.elementor-editor-active) #primary,
	body:not(.elementor-editor-active) .site-main,
	body:not(.elementor-editor-active) main.site-main,
	body:not(.elementor-editor-active) .container,
	body:not(.elementor-editor-active) .page-container,
	body:not(.elementor-editor-active) .entry-content-wrap {
		padding-left: 14px !important;
		padding-right: 14px !important;
	}
}

/* =========================================================================
   SKLEP — siatka produktów (natywne klasy WooCommerce)
   ========================================================================= */
.woocommerce ul.products {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 22px;
	list-style: none;
	margin: 0 0 32px !important;
	padding: 0 !important;
}
.woocommerce ul.products li.product {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 18px 16px 20px;
	border: 1px solid var(--mwg-ice-border);
	border-radius: var(--mwg-radius);
	background: #fff;
	text-align: center;
	transition: box-shadow .18s ease, transform .15s ease, border-color .18s ease;
}
.woocommerce ul.products li.product:hover {
	box-shadow: 0 6px 20px rgba(40, 164, 221, .18);
	border-color: var(--mwg-blue);
	transform: translateY(-2px);
}
.woocommerce ul.products li.product a.woocommerce-loop-product__link {
	display: block;
	color: var(--mwg-text);
	text-decoration: none;
}
.woocommerce ul.products li.product img {
	width: 100%;
	height: auto;
	border-radius: calc(var(--mwg-radius) - 4px);
	margin-bottom: 12px;
	display: block;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-size: 15px;
	font-weight: 600;
	color: var(--mwg-text);
	margin: 8px 0 6px;
}
.woocommerce ul.products li.product .price {
	font-family: var(--mwg-mono);
	color: var(--mwg-blue-dark);
	font-size: 15px;
	font-weight: 600;
	margin-bottom: 10px;
	display: block;
}
.woocommerce ul.products li.product .price del { color: var(--mwg-text-muted); opacity: .7; font-weight: 400; }
.woocommerce ul.products li.product .price ins { text-decoration: none; }
.woocommerce ul.products li.product .onsale {
	background: var(--mwg-gradient-green) !important;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	padding: 4px 10px;
	min-height: 0;
	min-width: 0;
	line-height: 1.4;
	top: 10px;
	left: 10px;
}
.woocommerce ul.products li.product .star-rating { margin: 0 auto 10px; }
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.add_to_cart_button,
.woocommerce ul.products li.product a.added_to_cart {
	display: inline-block;
	padding: 10px 22px;
	background: var(--mwg-gradient-green);
	color: #fff !important;
	border-radius: 999px;
	font-size: 13.5px;
	font-weight: 600;
	text-decoration: none;
	border: none;
	cursor: pointer;
	transition: box-shadow .2s ease, transform .15s ease;
	box-shadow: 0 2px 8px rgba(3, 113, 55, .25);
}
.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product a.add_to_cart_button:hover {
	box-shadow: 0 0 0 3px rgba(3, 113, 55, .18), 0 4px 16px rgba(3, 113, 55, .35);
	transform: translateY(-1px);
	color: #fff !important;
}
.woocommerce ul.products li.product a.added_to_cart {
	background: var(--mwg-gradient-blue);
}
.woocommerce-pagination ul.page-numbers {
	display: flex;
	justify-content: center;
	gap: 6px;
	list-style: none;
	padding: 0;
	margin: 20px 0 0;
}
.woocommerce-pagination .page-numbers li { display: inline-flex; }
.woocommerce-pagination .page-numbers a,
.woocommerce-pagination .page-numbers span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	height: 38px;
	padding: 0 8px;
	border-radius: 8px;
	border: 1px solid var(--mwg-ice-border);
	color: var(--mwg-blue-dark);
	text-decoration: none;
	font-size: 14px;
}
.woocommerce-pagination .page-numbers .current {
	background: var(--mwg-gradient-blue);
	color: #fff;
	border-color: transparent;
}
.woocommerce-pagination .page-numbers a:hover { background: var(--mwg-ice); }

/* =========================================================================
   SKLEP — karuzela produktów (np. [best_selling_products])
   Kontener .mwg-carousel dodawany jest w PHP (class-mwg-carousel.php),
   który owija wynik shortcode'a. Zamieniamy natywną siatkę grid (patrz
   reguła .woocommerce ul.products powyżej) na poziomy pasek —
   selektor .mwg-carousel ul.products jest bardziej specyficzny, więc wygrywa.
   Układ oparty o flex (a nie position:absolute), żeby strzałki zawsze
   trzymały się idealnie na środku wysokości, niezależnie od zawartości.
   Bez scroll-snap — snapowanie blokowało płynne, automatyczne przewijanie.
   ========================================================================= */
.mwg-carousel {
	margin: 0 0 32px;
}
.mwg-carousel.mwg-carousel ul.products {
	display: flex !important;
	flex-wrap: nowrap !important;
	grid-template-columns: none !important;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	gap: 22px;
	padding: 4px 4px 16px !important;
	margin: 0 !important;
	scrollbar-width: none;
	-ms-overflow-style: none;
}
.mwg-carousel ul.products::-webkit-scrollbar { display: none; }
.mwg-carousel.mwg-carousel ul.products li.product {
	flex: 0 0 240px !important;
	width: 240px !important;
	max-width: 240px !important;
}
@media (max-width: 640px) {
	.mwg-carousel.mwg-carousel ul.products li.product { flex-basis: 180px !important; width: 180px !important; max-width: 180px !important; }
}

/* =========================================================================
   SKLEP — odstęp między kafelkami kategorii a właściwymi produktami.
   WooCommerce (przy widoczności "Kategorie i produkty") renderuje kafelki
   kategorii (li.product-category) i produkty (li.product) jako elementy
   TEJ SAMEJ listy <ul class="products"> — dlatego zwykły odstęp między
   listami nic nie dawał. JS (mwg-shop-spacer.js) wstawia w tym miejscu
   pełnoszerokościowy "rozdzielacz", a poniższa reguła nadaje mu wysokość.
   ========================================================================= */
.mwg-shop-category-spacer {
	grid-column: 1 / -1 !important;
	flex-basis: 100% !important;
	width: 100% !important;
	height: 1px;
	margin: 20px 0 !important;
	list-style: none !important;
	pointer-events: none;
}



/* =========================================================================
   SKLEP — ukrycie przycisku "Quick View" na kafelkach produktów
   (obsługuje najczęstsze klasy z motywów i wtyczek typu YITH Quick View;
   JS w mwg-product-cards.js dodatkowo usuwa elementy dopisywane dynamicznie)
   ========================================================================= */
.woocommerce ul.products li.product .yith-wcqv-button,
.woocommerce ul.products li.product .yith-wcqv-trigger,
.woocommerce ul.products li.product .quick-view,
.woocommerce ul.products li.product .quick-view-button,
.woocommerce ul.products li.product .quickview,
.woocommerce ul.products li.product .open-quick-view,
.woocommerce ul.products li.product .product-quick-view,
.woocommerce ul.products li.product [class*="quick-view"],
.woocommerce ul.products li.product [class*="quickview"] {
	display: none !important;
}

/* =========================================================================
   SKLEP — filtry: widżety klasyczne
   ========================================================================= */
.woocommerce-widget-layered-nav,
.widget_layered_nav,
.widget_price_filter,
.widget_product_search,
.woocommerce-product-search {
	margin-bottom: 26px;
}
.woocommerce-widget-layered-nav-list,
ul.woocommerce-widget-layered-nav-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.woocommerce-widget-layered-nav-list__item { font-size: 14px; }
.woocommerce-widget-layered-nav-list__item a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 8px 10px;
	border-radius: 8px;
	color: var(--mwg-text);
	text-decoration: none;
	transition: background-color .15s, color .15s;
}
.woocommerce-widget-layered-nav-list__item a:hover {
	background: var(--mwg-ice);
	color: var(--mwg-blue-dark);
}
.woocommerce-widget-layered-nav-list__item--chosen a {
	color: var(--mwg-blue-dark);
	font-weight: 700;
}
.woocommerce-widget-layered-nav-list__item .count {
	font-family: var(--mwg-mono);
	font-size: 11px;
	color: var(--mwg-text-muted);
}

.price_slider { margin-bottom: 14px; }
.price_slider .ui-slider {
	height: 4px;
	border: none;
	background: var(--mwg-ice-border);
	border-radius: 999px;
	margin: 20px 4px 14px;
}
.price_slider .ui-slider-range { background: var(--mwg-gradient-blue); border-radius: 999px; }
.price_slider .ui-slider-handle {
	width: 16px;
	height: 16px;
	top: -6px;
	border-radius: 50%;
	background: #fff;
	border: 2px solid var(--mwg-blue);
	box-shadow: 0 2px 6px rgba(5, 68, 110, .25);
	outline: none;
	cursor: pointer;
}
.price_slider_amount { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.price_slider_amount .price_label { font-size: 13px; color: var(--mwg-text-muted); font-family: var(--mwg-mono); }
.price_slider_amount button[type="submit"] {
	padding: 8px 18px;
	border: none;
	border-radius: 999px;
	background: var(--mwg-gradient-blue);
	color: #fff;
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
	transition: box-shadow .15s;
}
.price_slider_amount button[type="submit"]:hover { box-shadow: 0 0 0 3px rgba(40, 164, 221, .25); }

.woocommerce-product-search { display: flex; gap: 6px; }
.woocommerce-product-search input[type="search"] {
	flex: 1 1 auto;
	box-sizing: border-box;
	padding: 10px 14px;
	border: 1px solid var(--mwg-ice-border);
	border-radius: 8px;
	background: var(--mwg-ice);
	font-size: 14px;
	color: var(--mwg-text);
	transition: border-color .15s, box-shadow .15s;
}
.woocommerce-product-search input[type="search"]:focus {
	outline: none;
	border-color: var(--mwg-blue);
	box-shadow: 0 0 0 3px rgba(40, 164, 221, .18);
	background: #fff;
}
.woocommerce-product-search button {
	flex: 0 0 auto;
	padding: 10px 16px;
	border: none;
	border-radius: 8px;
	background: var(--mwg-gradient-blue);
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	transition: box-shadow .15s;
}
.woocommerce-product-search button:hover { box-shadow: 0 0 0 3px rgba(40, 164, 221, .25); }

/* =========================================================================
   SKLEP — filtry: bloki Gutenberga
   ========================================================================= */
.wc-block-price-filter,
.wc-block-attribute-filter,
.wc-block-product-search,
.wp-block-woocommerce-product-search,
.wp-block-woocommerce-price-filter,
.wp-block-woocommerce-attribute-filter {
	margin-bottom: 26px;
}
.wc-block-attribute-filter-list { list-style: none; margin: 0; padding: 0; }
.wc-block-attribute-filter-list li { margin-bottom: 2px; }
.wc-block-attribute-filter-list .wc-block-components-checkbox {
	padding: 7px 4px;
	border-radius: 8px;
	transition: background-color .15s;
}
.wc-block-attribute-filter-list .wc-block-components-checkbox:hover { background: var(--mwg-ice); }
.wc-block-components-checkbox__mark,
.wc-block-attribute-filter-list input[type="checkbox"] { accent-color: var(--mwg-green); }

.wc-block-price-filter__range-input-progress,
.wc-block-price-filter .range-slider__range { background: var(--mwg-ice-border) !important; }
.wc-block-price-filter__range-input-progress .range-slider__range--active,
.wc-block-price-filter .range-slider__thumb { background: var(--mwg-gradient-blue) !important; }
.wc-block-price-filter .range-slider__thumb { border: 2px solid #fff !important; box-shadow: 0 2px 6px rgba(5, 68, 110, .25); }

.wc-block-price-filter__amount,
.wc-block-components-price-slider__range-text {
	font-family: var(--mwg-mono);
	font-size: 13px;
	color: var(--mwg-text-muted);
}
.wc-block-components-filter-submit-button,
.wc-block-price-filter__button,
.wc-block-attribute-filter__button {
	padding: 9px 18px !important;
	border: none !important;
	border-radius: 999px !important;
	background: var(--mwg-gradient-blue) !important;
	color: #fff !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	cursor: pointer;
	transition: box-shadow .15s;
}
.wc-block-components-filter-submit-button:hover { box-shadow: 0 0 0 3px rgba(40, 164, 221, .25); }

.wc-block-product-search input[type="search"],
.wp-block-search__input {
	box-sizing: border-box;
	padding: 10px 14px;
	border: 1px solid var(--mwg-ice-border) !important;
	border-radius: 8px !important;
	background: var(--mwg-ice);
	font-size: 14px;
}
.wc-block-product-search input[type="search"]:focus {
	outline: none;
	border-color: var(--mwg-blue);
	box-shadow: 0 0 0 3px rgba(40, 164, 221, .18);
	background: #fff;
}
.wc-block-product-search button,
.wp-block-search__button {
	border: none !important;
	border-radius: 8px !important;
	background: var(--mwg-gradient-blue) !important;
	color: #fff !important;
	font-weight: 600;
}

/* =========================================================================
   BLOG — siatka na stronie głównej (natywny kontener motywu .blog-posts)
   Nadpisujemy własnym, responsywnym auto-fill gridem — niezależnie od liczby
   kolumn ustawionej w Customizerze motywu (columns-2/3/4...).
   ========================================================================= */
.blog-posts {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
	gap: 24px !important;
}
.blog-posts .navigation.posts-navigation { grid-column: 1 / -1; }

/* =========================================================================
   BLOG — siatka na stronie wyników wyszukiwania (nasz własny wrapper,
   bo search.php motywu nie ma żadnej natywnej siatki)
   ========================================================================= */
.mwg-siatka.mwg-blog-siatka {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	gap: 24px;
	margin: 0 0 32px;
}
.mwg-brak-wynikow { grid-column: 1/-1; text-align: center; color: var(--mwg-text-muted); padding: 30px 0; }

/* =========================================================================
   BLOG — wygląd karty (dotyczy artykułów wewnątrz .blog-posts LUB .mwg-siatka,
   czyli listy głównej, wyników wyszukiwania i wyników AJAX — NIE pojedynczego
   wpisu, żeby nie ostylować single.php jak kafelka)
   ========================================================================= */
.blog-posts article.hentry,
.mwg-blog-siatka article.hentry {
	display: flex;
	flex-direction: column;
	border: 1px solid var(--mwg-ice-border);
	border-radius: var(--mwg-radius);
	background: #fff;
	overflow: hidden;
	padding: 0;
	transition: box-shadow .18s ease, transform .15s ease, border-color .18s ease;
}
.blog-posts article.hentry:hover,
.mwg-blog-siatka article.hentry:hover {
	box-shadow: 0 6px 20px rgba(40, 164, 221, .18);
	border-color: var(--mwg-blue);
	transform: translateY(-2px);
}

/* miniatura — .post-thumbnail (home.php, search.php) i .mwg-karta-miniatura (AJAX) */
.blog-posts .post-thumbnail,
.mwg-blog-siatka .post-thumbnail,
.mwg-blog-siatka .mwg-karta-miniatura,
.blog-posts .search-result-article-image,
.mwg-blog-siatka .search-result-article-image {
	display: block;
	margin: 0;
}
.blog-posts .post-thumbnail img,
.mwg-blog-siatka .post-thumbnail img,
.mwg-blog-siatka .mwg-karta-miniatura img,
.blog-posts .search-result-article-image img,
.mwg-blog-siatka .search-result-article-image img {
	width: 100%;
	height: 190px;
	object-fit: cover;
	display: block;
}
.mwg-karta-miniatura-placeholder { display: block; height: 190px; background: var(--mwg-ice); }

/* data nad miniaturą (motyw drukuje ją w .entry-meta wewnątrz .date-and-thumbnail)
   — ukryta na życzenie: zdjęcie ma być "czyste", bez znacznika czasu */
.blog-posts .date-and-thumbnail > .entry-meta,
.mwg-blog-siatka .date-and-thumbnail > .entry-meta {
	display: none !important;
}

.blog-posts .entry-title,
.mwg-blog-siatka .entry-title {
	font-size: 17px;
	font-weight: 700;
	line-height: 1.3;
	margin: 16px 16px 6px;
}
.blog-posts .entry-title a,
.mwg-blog-siatka .entry-title a { color: var(--mwg-text); text-decoration: none; }
.blog-posts .entry-title a:hover,
.mwg-blog-siatka .entry-title a:hover { color: var(--mwg-blue-dark); }

.blog-posts .entry-title,
.mwg-blog-siatka .entry-title {
	display: none !important;
}

/* drugi blok .entry-meta w nagłówku karty: autor / data / kategorie / tagi / komentarze
   — ukryty, żeby w kafelku zostały tylko: zdjęcie, zajawka i przycisk. */
.blog-posts .entry-header > .entry-meta,
.mwg-blog-siatka .entry-header > .entry-meta,
.mwg-blog-siatka > article.hentry > .entry-meta {
	display: none !important;
}

/* data w kartach AJAX (płaska struktura, bez wrappera .date-and-thumbnail) */
.mwg-blog-siatka > article.hentry > .entry-meta {
	display: block;
	margin: 10px 16px 0;
	font-family: var(--mwg-mono);
	font-size: 11px;
	color: var(--mwg-text-muted);
}

/* treść / zajawka — .entry-content w pętli home.php, .entry-summary w search.php i AJAX */
.blog-posts .entry-content,
.mwg-blog-siatka .entry-content,
.mwg-blog-siatka .entry-summary {
	font-size: 13.5px;
	color: var(--mwg-text-muted);
	line-height: 1.5;
	margin: 16px 16px 16px;
	flex: 1 1 auto;
}
.mwg-czytaj-wiecej {
	display: block;
	width: fit-content;
	margin-top: 14px;
	padding: 9px 18px;
	border-radius: 999px;
	background: var(--mwg-gradient-green);
	color: #fff !important;
	text-decoration: none;
	font-size: 12.5px;
	font-weight: 600;
	box-shadow: 0 2px 8px rgba(3, 113, 55, .25);
	transition: box-shadow .2s, transform .15s;
}
.mwg-czytaj-wiecej:hover {
	box-shadow: 0 0 0 3px rgba(3, 113, 55, .18), 0 4px 16px rgba(3, 113, 55, .35);
	transform: translateY(-1px);
}
.blog-posts .entry-footer:empty,
.mwg-blog-siatka .entry-footer:empty { display: none; }

/* =========================================================================
   BLOG — wyszukiwarka (własny formularz i kontener wyników renderowane przez wtyczkę)
   ========================================================================= */
.mwg-blog-search-form { margin: 0 0 28px; }
.mwg-search-row { display: flex; gap: 8px; }
.mwg-search-input {
	flex: 1 1 auto;
	box-sizing: border-box;
	padding: 12px 16px;
	border: 1px solid var(--mwg-ice-border);
	border-radius: 8px;
	background: var(--mwg-ice);
	font-size: 15px;
	color: var(--mwg-text);
	transition: border-color .15s, box-shadow .15s;
}
.mwg-search-input:focus {
	outline: none;
	border-color: var(--mwg-blue);
	box-shadow: 0 0 0 3px rgba(40, 164, 221, .18);
	background: #fff;
}
.mwg-search-submit {
	flex: 0 0 auto;
	padding: 12px 22px;
	border: none;
	border-radius: 8px;
	background: var(--mwg-gradient-blue);
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	transition: box-shadow .15s;
}
.mwg-search-submit:hover { box-shadow: 0 0 0 3px rgba(40, 164, 221, .25); }
.mwg-search-results { display: none; margin-top: 4px; }
.mwg-szukanie { color: var(--mwg-text-muted); font-size: 14px; }
.mwg-blad {
	background: #fdeceb;
	border: 1px solid #f3b9b3;
	color: #9c2c22;
	padding: 10px 14px;
	border-radius: 8px;
	font-size: 14px;
}

/* =========================================================================
   BLOG — pojedynczy wpis (single-post) — typografia treści.
   Zakres celowo ograniczony do body.single-post, żeby NIE nadpisać
   .entry-content wewnątrz kart (te są w .blog-posts / .mwg-blog-siatka).
   ========================================================================= */
.single-post .entry-title { font-size: 30px; font-weight: 700; line-height: 1.25; margin-bottom: 10px; color: var(--mwg-text); }
.single-post .entry-meta,
.single-post .posted-on { font-family: var(--mwg-mono); font-size: 12.5px; color: var(--mwg-text-muted); margin-bottom: 24px; }
.single-post .entry-content {
	font-size: 16.5px;
	line-height: 1.75;
	color: var(--mwg-text);
	max-width: 720px;
}
.single-post .entry-content p { margin: 0 0 20px; }
.single-post .entry-content h2 { font-size: 24px; font-weight: 700; margin: 36px 0 14px; color: var(--mwg-text); }
.single-post .entry-content h3 { font-size: 19px; font-weight: 700; margin: 28px 0 12px; color: var(--mwg-text); }
.single-post .entry-content a { color: var(--mwg-blue-dark); text-decoration: underline; text-decoration-color: var(--mwg-ice-border); }
.single-post .entry-content a:hover { text-decoration-color: var(--mwg-blue); }
.single-post .entry-content blockquote {
	margin: 24px 0;
	padding: 4px 0 4px 18px;
	border-left: 3px solid var(--mwg-ice-border);
	color: var(--mwg-text-muted);
	font-style: italic;
}
.single-post .entry-content ul,
.single-post .entry-content ol { margin: 0 0 20px; padding-left: 22px; }
.single-post .entry-content li { margin-bottom: 6px; }
.single-post .entry-content img { max-width: 100%; height: auto; border-radius: var(--mwg-radius); margin: 8px 0; }
.single-post .entry-content figure { margin: 24px 0; }
.single-post .entry-content figcaption { font-size: 12.5px; color: var(--mwg-text-muted); text-align: center; margin-top: 8px; }

/* =========================================================================
   Mobile
   ========================================================================= */
@media (max-width: 640px) {
	.woocommerce ul.products { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; }
	.woocommerce ul.products li.product { padding: 12px 10px 16px; }
	.blog-posts,
	.mwg-siatka.mwg-blog-siatka { grid-template-columns: 1fr !important; gap: 16px !important; }
	.mwg-search-row { flex-direction: column; }
	.mwg-search-submit { width: 100%; }
	.single-post .entry-title { font-size: 24px; }
	.single-post .entry-content { font-size: 15.5px; }
}
