/*
 * LumoMeble: warstwa tablet / telefon (ładowana ostatnia, po main.css i shop.css).
 * Progi: 1100 (tablet poziomo), 900, 780 (tablet pionowo 768), 600, 420 (telefon 360-414), 360 (małe telefony 320).
 * Zasada: nic nie może być szersze niż ekran - siatki zawsze minmax(0, 1fr), elementy dekoracyjne przycinane.
 */

/* ---------- Ogólne ---------- */

@media (max-width: 1100px) {
	/* Telefony i tablety mają przewijanie nakładane - zarezerwowane miejsce na pasek przewijania zostawiało pusty pasek z prawej. */
	html { scrollbar-gutter: auto; }
	html, body { overflow-x: clip; }
	.lumo-section { padding-block: 72px; }
	.lumo-section__head { margin-bottom: 24px; }
}
@media (max-width: 600px) {
	.lumo-section { padding-block: 44px; }
	.lumo-section__title { font-size: 29px; }
	.lumo-btn--lg { min-height: 52px; padding: 14px 24px; font-size: 15.5px; }
}

/* ---------- Pasek górny i nagłówek ---------- */

/* Telefon/tablet: jeden rząd [hamburger | logo | lupa, ulubione, koszyk]. Wyszukiwarka schowana pod lupą
   (klasa .is-search-open na .lumo-header, JS w main.js "Wyszukiwarka na żywo"), na stronie wyników otwarta od razu. */
@media (max-width: 1100px) {
	.lumo-header__in { display: grid; grid-template-columns: auto auto minmax(0, 1fr); align-items: center; column-gap: 6px; row-gap: 0; min-height: 64px; padding-block: 6px; }
	.lumo-header__burger { grid-area: 1 / 1; display: grid; place-items: center; width: 52px; height: 52px; margin-left: -10px; padding: 0; border: 0; border-radius: 14px; background: none; color: var(--lumo-ink); cursor: pointer; transition: background-color .2s; }
	.lumo-header__burger:hover { background: var(--lumo-bg-2); }
	.lumo-burger { display: grid; gap: 6px; width: 28px; }
	.lumo-burger i { display: block; height: 2.5px; border-radius: 2px; background: currentColor; transition: width .25s var(--lumo-ease); }
	.lumo-burger i:nth-child(2) { width: 70%; }
	.lumo-header__burger:hover .lumo-burger i:nth-child(2) { width: 100%; }
	.lumo-logo { grid-area: 1 / 2; }
	.lumo-logo__crop { width: 96px; }
	.lumo-header__actions { grid-area: 1 / 3; justify-self: end; gap: 2px; margin-left: 0; }
	.lumo-hact--search { display: inline-flex; }
	.lumo-hact__ico-close { display: none; }
	.lumo-header.is-search-open .lumo-hact__ico-search { display: none; }
	.lumo-header.is-search-open .lumo-hact__ico-close { display: inline-grid; }
	.lumo-header.is-search-open .lumo-hact--search { background: var(--lumo-bg-2); }
	.lumo-hsearch { display: none; grid-area: 2 / 1 / 3 / -1; order: 0; width: 100%; min-width: 0; margin: 4px 0 6px; }
	.lumo-header.is-search-open .lumo-hsearch { display: flex; animation: lumo-fade-down .25s var(--lumo-ease); }
}
@media (max-width: 600px) {
	.lumo-topbar__in { min-height: 34px; gap: 10px; }
	.lumo-topbar__ticker { height: 34px; font-size: 12.5px; }
	.lumo-header__in { min-height: 60px; }
	.lumo-logo__crop { width: 84px; }
	.lumo-hsearch { height: 46px; }
	.lumo-hsearch__icon { width: 40px; }
	.lumo-hsearch input { font-size: 16px; }
	.lumo-hsearch__btn { height: 38px; padding: 0 14px; font-size: 13.5px; }
	.lumo-hact { min-height: 44px; min-width: 44px; justify-content: center; padding: 4px 6px; }
	.lumo-hact--cart { min-width: 0; padding: 4px 12px; }
	.lumo-hsearch__results { left: -4px; right: -4px; max-height: 65vh; border-radius: 16px; }
}
@media (max-width: 360px) {
	.lumo-logo__crop { width: 76px; }
	.lumo-header__burger { width: 48px; }
	.lumo-hact { min-width: 40px; }
	.lumo-hsearch__btn { padding: 0 12px; }
	.lumo-langdd summary { padding: 4px 8px; }
}

/* Menu mobilne (szuflada) */
@media (max-width: 1100px) {
	.lumo-drawer__panel { width: min(400px, 86vw); }
	.lumo-drawer__menu li { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; }
	.lumo-drawer__menu li > a { grid-column: 1; min-width: 0; padding-right: 8px; }
	.lumo-drawer__menu .menu-item-has-children > a { padding-right: 8px; }
	.lumo-drawer__toggle { position: static; grid-column: 2; margin: 0 10px 0 0; border-radius: 12px; }
	.lumo-drawer__toggle:hover { background: var(--lumo-bg-2); }
	.lumo-drawer__menu li > .sub-menu { grid-column: 1 / -1; }
	.lumo-drawer__menu a { font-size: 16.5px; padding-block: 10px; }
	.lumo-drawer__menu .sub-menu a { padding-left: 32px; }
	.lumo-drawer__foot { padding-bottom: max(18px, env(safe-area-inset-bottom)); }
	.lumo-drawer__lang ul { flex-wrap: wrap; }
}
@media (max-width: 360px) {
	.lumo-drawer__menu a { gap: 12px; padding-inline: 18px 6px; font-size: 16px; }
	.lumo-drawer__menu .lumo-menu-picto { width: 38px; height: 38px; }
	.lumo-drawer__head { padding-left: 18px; }
	.lumo-drawer__quick { gap: 6px; padding-inline: 12px; }
	.lumo-drawer__quick a { font-size: 11.5px; }
	.lumo-drawer__foot { padding-inline: 12px; }
}

/* ---------- Strona główna ---------- */

/* Hero */
@media (max-width: 1100px) {
	.lumo-hero__in { gap: 28px; padding-block: 28px 36px; }
	.lumo-hero__facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
	.lumo-hero__facts li { max-width: none; }
}
@media (max-width: 600px) {
	.lumo-hero__title { font-size: 34px; }
	.lumo-hero__text { font-size: 15.5px; margin-bottom: 22px; }
	.lumo-hero__cta .lumo-btn { flex: 1 1 100%; }
	.lumo-hero__facts { gap: 10px; margin-top: 26px; padding-top: 20px; }
	.lumo-hero__facts strong { font-size: 26px; }
	.lumo-hero__facts span { font-size: 12px; }
	.lumo-blob--1 { width: 320px; height: 320px; }
	.lumo-blob--2 { display: none; }
}

/* Kafle kategorii (bento): równa siatka - na tablecie duży kafel loż + 4 kafle 2x2, na telefonie loże na całą szerokość + 2x2 */
@media (max-width: 1100px) {
	.lumo-bento { grid-template-columns: repeat(4, minmax(0, 1fr)); grid-template-rows: none; grid-auto-rows: 200px; min-height: 0; gap: 12px; }
	.lumo-bento__item--big { grid-column: span 2; grid-row: span 2; }
	.lumo-bento__item { min-width: 0; }
	.lumo-bento__item a { min-height: 0; padding: 16px; border-radius: 20px; }
	.lumo-bento__media { inset: 70px 12px 12px 12px; }
	.lumo-bento__media img { object-position: center bottom; }
	.lumo-bento__body { max-width: calc(100% - 52px); }
	.lumo-bento__item--big .lumo-bento__body { max-width: none; }
	.lumo-bento__item--big .lumo-bento__media { inset: 120px 16px 64px 16px; }
	.lumo-bento__item--big a::before { width: 240px; height: 240px; right: -90px; bottom: -110px; border-width: 44px; }
	.lumo-bento__picto { width: 40px; height: 40px; top: 12px; right: 12px; border-radius: 12px; }
	.lumo-bento__picto svg { width: 24px; height: 24px; }
	.lumo-bento__item:not(.lumo-bento__item--big) .lumo-bento__arrow { display: none; }
	.lumo-bento__arrow { left: 16px; bottom: 16px; }
}
@media (max-width: 700px) {
	.lumo-bento { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 168px; gap: 10px; }
	.lumo-bento__item--big { grid-column: 1 / -1; grid-row: auto; }
	.lumo-bento__item--big a { min-height: 0; }
	.lumo-bento__item a { min-height: 0; padding: 14px; border-radius: 18px; }
	.lumo-bento__item--big .lumo-bento__media { inset: 16px 12px 12px 44%; }
	.lumo-bento__item--big .lumo-bento__body { max-width: 56%; }
	.lumo-bento__item--big .lumo-bento__name { font-size: 26px; }
	.lumo-bento__tag { font-size: 11px; padding: 4px 9px; margin-bottom: 8px; }
	.lumo-bento__media { inset: 62px 10px 10px 10px; }
	.lumo-bento__body { max-width: none; }
	.lumo-bento__name { font-size: 18px; }
	.lumo-bento__count { font-size: 12px; }
	.lumo-bento__picto { display: none; }
	.lumo-bento__arrow { left: 14px; bottom: 14px; width: 38px; height: 38px; }
}
@media (max-width: 360px) {
	.lumo-bento { grid-auto-rows: 150px; gap: 8px; }
	.lumo-bento__item a { padding: 12px; }
	.lumo-bento__item--big .lumo-bento__media { left: 48%; }
	.lumo-bento__item--big .lumo-bento__body { max-width: 60%; }
	.lumo-bento__item--big .lumo-bento__name { font-size: 22px; }
	.lumo-bento__tag { font-size: 10.5px; }
	.lumo-bento__name { font-size: 16.5px; }
	.lumo-bento__media { top: 56px; }
}

/* Pasek kategorii: na tablecie i telefonie równa siatka zamiast przewijanego paska (ucięte ostatnie kółko) */
@media (max-width: 1100px) {
	/* Wszystkie kategorie w jednym równym rzędzie (bez osieroconego ostatniego kafla w nowym wierszu) */
	.lumo-catstrip__list { grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 6px; overflow: visible; padding: 0; }
	.lumo-catstrip__list a { padding: 8px 2px; }
	.lumo-catstrip__img { width: min(92px, 100%); height: auto; aspect-ratio: 1; }
	.lumo-catstrip__count { right: calc(50% - 50px); top: 4px; }
}
@media (max-width: 600px) {
	.lumo-catstrip { padding-top: 28px; }
	.lumo-catstrip__list { grid-auto-flow: row; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px 2px; }
	.lumo-catstrip__list a { gap: 6px; padding: 6px 2px; border-radius: 14px; }
	.lumo-catstrip__img { width: min(72px, 100%); height: auto; aspect-ratio: 1; }
	.lumo-catstrip__img img { padding: 7px; }
	.lumo-catstrip__img--fill img { padding: 0; }
	.lumo-catstrip__name { font-size: 12.5px; overflow-wrap: anywhere; }
	.lumo-catstrip__count { right: 4px; top: 4px; min-width: 22px; height: 20px; padding: 0 6px; font-size: 10.5px; line-height: 20px; }
}

/* Pasek haseł */
@media (max-width: 600px) {
	.lumo-marquee { padding-block: 12px; margin-top: 20px; }
	.lumo-marquee span { font-size: 18px; }
	.lumo-marquee i { width: 16px; height: 16px; border-width: 4px; }
}

/* Bestsellery: zakładki i karuzela */
@media (max-width: 1100px) {
	.lumo-products-tabs .lumo-section__head--row { display: grid; gap: 16px; }
	.lumo-tabs__nav--pills { max-width: 100%; justify-self: start; }
	.lumo-tabs__nav--pills .lumo-tabs__tab { flex: none; white-space: nowrap; }
}
@media (max-width: 780px) {
	.lumo-rail ul.products li.product { flex: 0 0 min(280px, 64vw); }
	.lumo-tabs__nav--pills { margin-inline: calc(var(--lumo-gutter) * -1); padding-inline: var(--lumo-gutter); border-radius: 0; background: transparent; gap: 6px; }
	.lumo-tabs__nav--pills .lumo-tabs__tab { padding: 9px 16px; background: var(--lumo-bg-2); border-radius: 999px; }
}
@media (max-width: 360px) {
	.lumo-rail ul.products li.product { flex-basis: 72vw; }
}

/* Zalety */
@media (max-width: 600px) {
	.lumo-usps { padding-block: 36px; }
	.lumo-usps__grid { gap: 10px; }
	.lumo-usp-item { padding: 16px; gap: 14px; border-radius: 16px; }
	.lumo-usp-item__icon { width: 46px; height: 46px; border-radius: 14px; }
	.lumo-usp-item h3 { font-size: 16px; }
}

/* Konfigurator (ciemna sekcja): karty z ceną i tkaninami nie mogą wystawać poza ekran */
@media (max-width: 900px) {
	.lumo-config-promo__media { width: 100%; max-width: 460px; margin-inline: auto; }
	.lumo-config-promo__stage { width: 100%; border-radius: 28px; }
	.lumo-config-promo__card--price { left: 12px; top: 12px; }
	.lumo-config-promo__card--fabric { right: 12px; bottom: 12px; }
}
@media (max-width: 600px) {
	.lumo-config-promo__stage { padding: 14% 6% 18%; }
	.lumo-config-promo__card { padding: 10px 14px; border-radius: 14px; }
	.lumo-config-promo__card strong { font-size: 18px; }
	.lumo-config-promo__card--fabric { gap: 8px; font-size: 12.5px; left: 12px; right: auto; max-width: calc(100% - 24px); }
	.lumo-config-promo__dots i { width: 20px; height: 20px; }
	.lumo-ring--promo { width: 240px; height: 240px; right: -90px; top: 20px; border-width: 40px; }
	.lumo-config-promo__steps li { gap: 14px; padding: 14px 16px; }
	.lumo-config-promo__steps span { width: 36px; height: 36px; font-size: 16px; }
	.lumo-config-promo__steps strong { font-size: 16px; }
	.lumo-config-promo__steps p { font-size: 14px; }
	.lumo-config-promo__actions .lumo-btn { width: 100%; }
}

/* Wzorniki tkanin na stronie głównej */
@media (max-width: 600px) {
	.lumo-fabrics__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
}
@media (max-width: 360px) {
	.lumo-fabrics__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* Opinie: na tablecie 2 kolumny, na telefonie przewijane karty zamiast bardzo długiej listy */
@media (max-width: 600px) {
	.lumo-reviews__grid { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 12px; margin-inline: calc(var(--lumo-gutter) * -1); padding: 4px var(--lumo-gutter) 12px; scrollbar-width: none; }
	.lumo-reviews__grid::-webkit-scrollbar { display: none; }
	.lumo-reviews__grid > * { flex: 0 0 84%; scroll-snap-align: center; }
	.lumo-review { padding: 22px 20px 20px; border-radius: 20px; }
}

/* Teksty SEO, porady, CTA */
@media (max-width: 900px) {
	.lumo-seo { gap: 24px; }
}
@media (max-width: 600px) {
	.lumo-posts { grid-template-columns: minmax(0, 1fr); gap: 20px; }
	.lumo-cta__in { gap: 20px; }
	.lumo-cta__actions, .lumo-cta__actions .lumo-btn { width: 100%; }
	.lumo-cta::before { width: 260px; height: 260px; border-width: 44px; right: -110px; top: -120px; }
}

/* Newsletter i stopka */
@media (max-width: 600px) {
	.lumo-newsletter__card { padding: 24px 18px; border-radius: 22px; }
	/* Menu stopki w dwóch kolumnach zamiast jednej bardzo długiej listy */
	.lumo-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 16px; }
	.lumo-footer__brand { grid-column: 1 / -1; }
	.lumo-footer__col:last-child:nth-child(even) { grid-column: 1 / -1; }
	/* Dół stopki: wybór języka, pod nim copyright (na samym dole) */
	.lumo-footer__bottom { flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: 14px; }
	.lumo-footer__lang { order: 1; }
	.lumo-footer__copy { order: 2; }
}
@media (max-width: 420px) {
	.lumo-footer__usps { grid-template-columns: minmax(0, 1fr); }
}

/* Dymek "Masz pytanie?" - mniejszy, żeby nie zasłaniał przycisków kart */
@media (max-width: 600px) {
	.lumo-chat { right: 12px; bottom: max(12px, env(safe-area-inset-bottom)); }
}

/* ---------- Okruszki i nagłówki stron ---------- */

@media (max-width: 600px) {
	.lumo-crumbs { padding-top: 14px; font-size: 12.5px; }
	.lumo-crumbs .sep, .lumo-crumbs .separator { margin: 0 5px; }
	.lumo-page-head { padding-block: 16px 20px; }
	.lumo-page-head__title { font-size: 31px; }
	.lumo-page-head__picto { width: 56px; height: 56px; border-radius: 16px; margin-bottom: 10px; }
	.lumo-page-head__picto svg { width: 32px; height: 32px; }
}

/* Ikony boksów z Elementora (np. Kontakt): ikona w środku kółka, nie obok */
.lumo-prose .elementor-icon-box-icon .elementor-icon { display: grid; place-items: center; width: 100%; height: 100%; font-size: 20px; line-height: 1; color: var(--lumo-ink); }
.lumo-prose .elementor-icon-box-icon svg { width: 20px; height: 20px; fill: currentColor; }

/* Treść stron (Elementor z importu, tabele, obrazki) */
@media (max-width: 780px) {
	.lumo-prose { overflow-wrap: break-word; }
	.lumo-prose a[href^="mailto:"], .lumo-prose .elementor-icon-box-description { overflow-wrap: anywhere; }
	.lumo-prose .elementor-icon-box-wrapper { align-items: center; }
	.lumo-prose .elementor-icon-box-icon { width: 44px; height: 44px; }
	.lumo-prose .elementor-icon-box-description { font-size: 15px; }
	.lumo-prose table { display: block; overflow-x: auto; }
	.lumo-prose [class*="elementor-column"], .lumo-prose .elementor-container { width: 100% !important; max-width: 100% !important; flex-wrap: wrap; }
}

/* ---------- Sklep, kategorie ---------- */

/* Siatka produktów: 3 kolumny na tablecie (768), 2 na telefonie */
@media (max-width: 1000px) {
	.woocommerce ul.products, .lumo-catalog ul.products, .lumo-catalog .woocommerce ul.products, .woocommerce ul.products.columns-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px 12px; }
}
@media (max-width: 600px) {
	.woocommerce ul.products, .lumo-catalog ul.products, .lumo-catalog .woocommerce ul.products, .woocommerce ul.products.columns-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 8px; }
}
@media (max-width: 1000px) {
	.woocommerce ul.products li.product { min-width: 0; padding: 6px 6px 10px; border-radius: 16px; }
	.lumo-card__media { border-radius: 12px; margin-bottom: 10px; }
	.lumo-card__badges { top: 12px; left: 12px; }
	.lumo-card__badges .lumo-badge:nth-child(n+2) { display: none; }
	.lumo-fav { top: 12px; right: 12px; width: 34px; height: 34px; }
	.lumo-card__title { font-size: 15px !important; }
	li.product .price { font-size: 16px; }
	li.product .lumo-cfgbtn { gap: 8px; padding-inline: 10px; }
	li.product .lumo-cfgbtn .lumo-icon { display: none; }
	li.product .lumo-cfgbtn .lumo-cfgbtn__txt { font-size: 14px; }
}
@media (max-width: 600px) {
	.lumo-card__cat { margin: 0 4px 3px; font-size: 10px; letter-spacing: .08em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
	.lumo-card__title { font-size: 14px !important; margin: 0 4px 6px; }
	li.product .price { margin: 0 4px 6px; font-size: 15px; line-height: 1.3; }
	li.product .price .lumo-price-from small { font-size: 11.5px; }
	li.product .lumo-price-quote { font-size: 13.5px; }
	/* Ikona zegara spadała do osobnej linii nad "Realizacja: ..." - na telefonie sam tekst */
	.lumo-card__meta { gap: 4px 8px; margin: 0 4px 10px; font-size: 11.5px; line-height: 1.35; }
	.lumo-card__meta > .lumo-icon { display: none; }
	.lumo-card__meta > .lumo-icon + span { margin-left: 0; }
	.lumo-card__cfg .lumo-icon { width: 13px; height: 13px; }
	li.product .button, li.product .lumo-btn { min-height: 40px; padding: 8px 10px; font-size: 13.5px; }
	li.product .lumo-cfgbtn .lumo-cfgbtn__txt { font-size: 13.5px; }
	.lumo-fav { width: 32px; height: 32px; top: 10px; right: 10px; }
	.lumo-badge { padding: 4px 8px; font-size: 10.5px; }
	.lumo-card__badges { top: 10px; left: 10px; }
}
/* 1.13.0 (klient: „mobilnie lista produktów wymaga znacznej poprawy”): równe karty, pełne nazwy, przyciski w jednej linii na dole karty */
@media (max-width: 600px) {
	.woocommerce ul.products li.product { display: flex; flex-direction: column; padding: 6px 6px 8px; }
	.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link, .woocommerce ul.products li.product .lumo-card__link { display: flex; flex-direction: column; flex: 1 1 auto; }
	.lumo-card__cat { display: none; }
	.lumo-card__title { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; min-height: 0; margin: 2px 4px 6px; font-size: 13.5px !important; line-height: 1.35 !important; white-space: normal; text-overflow: clip; }
	li.product .price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 6px; margin: auto 4px 8px; font-size: 15px; font-weight: 600; }
	li.product .price del { order: -1; flex-basis: 100%; font-size: 12px; font-weight: 400; opacity: .7; }
	li.product .price ins { text-decoration: none; }
	li.product .price .lumo-price-from--var del { flex-basis: auto; }
	.lumo-card__meta { display: none; }
	li.product .button, li.product .lumo-btn { width: 100%; min-height: 38px; margin-top: 0; padding: 7px 8px; border-radius: 12px; font-size: 12.5px; line-height: 1.2; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; justify-content: center; }
	li.product .lumo-cfgbtn { gap: 6px; }
	li.product .lumo-cfgbtn .lumo-cfgbtn__sw { display: none; }
	li.product .lumo-cfgbtn .lumo-cfgbtn__txt { font-size: 12.5px; }
	.lumo-card__badges .lumo-badge { padding: 3px 8px; font-size: 10px; }
	.lumo-toolbar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.lumo-toolbar__filters, .lumo-toolbar__filters > button, .lumo-toolbar .woocommerce-ordering, .lumo-toolbar .woocommerce-ordering select { width: 100%; max-width: none; }
	.lumo-toolbar .woocommerce-ordering { justify-self: stretch; }
	.lumo-toolbar .woocommerce-ordering select { min-height: 44px; padding-inline: 14px 34px; font-size: 13.5px; text-overflow: ellipsis; }
}
@media (max-width: 360px) {
	.woocommerce ul.products li.product { padding: 5px 5px 8px; border-radius: 14px; }
	.lumo-card__title { font-size: 13.5px !important; }
	li.product .lumo-cfgbtn { gap: 6px; padding-inline: 6px; }
	li.product .lumo-cfgbtn .lumo-cfgbtn__sw { width: 24px; }
	li.product .lumo-cfgbtn .lumo-cfgbtn__sw i { width: 12px; height: 12px; }
	li.product .lumo-cfgbtn .lumo-cfgbtn__sw i:nth-child(2) { left: 6px; }
	li.product .lumo-cfgbtn .lumo-cfgbtn__sw i:nth-child(3) { left: 12px; }
}

/* Pasek narzędzi: Filtry + sortowanie w jednym rzędzie, liczba wyników pod spodem */
@media (max-width: 1000px) {
	.lumo-toolbar { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 10px; }
	.lumo-toolbar__filters { grid-column: 1; grid-row: 1; }
	.lumo-toolbar .woocommerce-ordering { grid-column: 2; grid-row: 1; margin: 0; justify-self: end; max-width: 100%; }
	.lumo-toolbar .woocommerce-ordering select { width: 100%; max-width: 280px; }
	.lumo-toolbar .woocommerce-result-count { grid-column: 1 / -1; grid-row: 2; font-size: 13px; }
	.lumo-toolbar > :only-child { grid-column: 1 / -1; }
}
@media (max-width: 600px) {
	.lumo-toolbar .woocommerce-ordering { justify-self: stretch; }
	.lumo-toolbar .woocommerce-ordering select { max-width: none; }
	.lumo-subcats { margin-inline: calc(var(--lumo-gutter) * -1); padding-inline: var(--lumo-gutter); margin-bottom: 20px; }
	.lumo-subcats a { padding: 8px 14px 8px 10px; font-size: 14px; }
	.lumo-filters { width: min(360px, 92vw); }
	.woocommerce-pagination ul.page-numbers { flex-wrap: wrap; justify-content: center; }
}

/* ---------- Karta produktu ---------- */

@media (max-width: 960px) {
	/* 1fr = minmax(auto, 1fr): galeria (flexslider) i formularz rozpychały kolumnę - na 320 px strona miała 420 px szerokości */
	.lumo-product__grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
	.lumo-product__gallery, .lumo-product__right, .lumo-product__tabs { min-width: 0; }
	.lumo-product__tabs { margin-top: 12px; }
	.woocommerce-tabs ul.tabs { top: calc(var(--lumo-header-h) + 50px); }
}
@media (max-width: 600px) {
	.lumo-product { padding-top: 8px; }
	.woocommerce-product-gallery .flex-viewport, .woocommerce-product-gallery__image { border-radius: 20px; }
	.woocommerce-product-gallery .flex-control-thumbs { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; margin-top: 8px; }
	.woocommerce-product-gallery .flex-control-thumbs li { border-radius: 10px; }
	.woocommerce-product-gallery__trigger { top: 10px; right: 10px; width: 40px; height: 40px; }
	.lumo-product__summary { padding: 18px 16px; border-radius: 20px; }
	.lumo-product__summary .product_title { font-size: 25px; }
	.lumo-product__summary > .price { padding: 12px 16px; border-radius: 14px; font-size: 24px; }
	.lumo-product__summary .woocommerce-product-details__short-description { font-size: 15px; }
	.lumo-product__summary form.cart { gap: 8px; }
	.lumo-product__summary form.cart .quantity { flex: none; }
	.lumo-product__summary form.cart .quantity .qty { width: 76px; min-height: 54px; }
	.lumo-product__summary form.cart .single_add_to_cart_button { min-width: 0; min-height: 54px; padding-inline: 16px; font-size: 15.5px; }
	.lumo-buy .lumo-btn--lg { min-height: 54px; font-size: 16px; }
	.lumo-warranty { width: 100%; font-size: 13px; line-height: 1.35; border-radius: 18px; }
	.lumo-samples-link { border-radius: 16px; font-size: 13.5px; text-align: center; }
	.lumo-usp { grid-template-columns: minmax(0, 1fr); font-size: 13px; }
	.lumo-usp li { padding: 10px; }
	.lumo-help { padding: 14px; }
	.woocommerce-tabs ul.tabs { margin-inline: calc(var(--lumo-gutter) * -1); padding: 6px var(--lumo-gutter); border-radius: 0; margin-bottom: 20px; }
	.woocommerce-tabs ul.tabs li a { padding: 8px 14px; font-size: 13.5px; }
	.woocommerce-Tabs-panel { font-size: 15px; line-height: 1.7; }
	.lumo-desc__toggle { white-space: nowrap; }
}
@media (max-width: 360px) {
	.lumo-product__summary { padding: 16px 12px; }
	.lumo-product__summary form.cart .quantity .qty { width: 64px; }
	.woocommerce-product-gallery .flex-control-thumbs { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

/* ---------- Koszyk, zamówienie, konto ---------- */

/* Pusty koszyk: blok "Nowe w sklepie" układał się w jedną kolumnę z ogromnymi zdjęciami */
@media (max-width: 1000px) {
	.wc-block-grid .wc-block-grid__products, .wp-block-woocommerce-empty-cart-block ul.wc-block-product-template, .wp-block-woocommerce-empty-cart-block ul.wp-block-woocommerce-product-template { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 0 0 32px; padding: 0; list-style: none; }
	.wp-block-woocommerce-empty-cart-block li.wc-block-product { width: auto !important; max-width: none; min-width: 0; margin: 0; padding: 6px 6px 12px; border: 1px solid var(--lumo-line); border-radius: 16px; background: #fff; font-size: 14px; }
	.wp-block-woocommerce-empty-cart-block li.wc-block-product img { aspect-ratio: 1; object-fit: contain; padding: 7%; border-radius: 12px; background: var(--lumo-card-bg); mix-blend-mode: multiply; }
	.wc-block-grid .wc-block-grid__product { flex: none; width: auto; max-width: none; min-width: 0; margin: 0; padding: 6px 6px 12px; border: 1px solid var(--lumo-line); border-radius: 16px; background: #fff; }
	.wc-block-grid__product-image { border-radius: 12px; overflow: hidden; background: var(--lumo-card-bg); margin-bottom: 8px; }
	.wc-block-grid__product-image img { aspect-ratio: 1; object-fit: contain; padding: 7%; mix-blend-mode: multiply; }
	.wc-block-grid__product-title { font-family: var(--lumo-font-display); font-size: 14px; font-weight: 600; line-height: 1.3; text-decoration: none; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
	.wc-block-grid__product-link { text-decoration: none; }
	.wc-block-grid__product-price { font-size: 14px; }
	.wc-block-grid__product .wp-block-button__link, .wc-block-grid__product .add_to_cart_button { font-size: 13px; padding: 8px 14px; }
}
@media (max-width: 600px) {
	.wc-block-grid .wc-block-grid__products, .wp-block-woocommerce-empty-cart-block ul.wc-block-product-template, .wp-block-woocommerce-empty-cart-block ul.wp-block-woocommerce-product-template { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 8px; }
	.wc-block-cart__empty-cart__title, .wp-block-woocommerce-empty-cart-block h2 { font-size: 22px; }
}

@media (max-width: 600px) {
	.woocommerce-cart table.cart td, .woocommerce-cart table.cart th { padding: 10px 8px; }
	.woocommerce-cart table.cart td.actions .coupon { display: flex; flex-wrap: wrap; gap: 8px; float: none; width: 100%; }
	.woocommerce-cart table.cart td.actions .coupon .input-text { flex: 1 1 140px; min-width: 0; width: auto; }
	.woocommerce-cart table.cart td.actions > .button { width: 100%; margin-top: 8px; }
	.woocommerce-checkout .woocommerce, .woocommerce-account .woocommerce { min-width: 0; }
	.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select { font-size: 16px; }
}

/* ---------- Konfigurator loży (kształt, wymiary, rysunek) ---------- */
@media (max-width: 860px) {
	.lumo-cfg__preview.has-plan { display: flex; flex-direction: column; gap: 0; padding: 14px 16px; overflow: visible; align-items: stretch; }
	.lumo-cfg__preview.has-plan .lumo-cfg__viewtabs { margin-bottom: 10px; }
	.lumo-cfg__preview.has-plan .lumo-draw figure { padding: 8px 8px 4px; }
	.lumo-cfg__preview.has-plan .lumo-cfg__summary { display: none; }
	.lumo-cfg__preview.has-plan .lumo-cfg__image img[data-cfg-photo] { max-height: 300px; }
}
@media (max-width: 600px) {
	.lumo-shapes { gap: 6px; }
	.lumo-shape__box { padding: 10px 4px; }
	.lumo-shape__name { font-size: 11.5px; }
	.lumo-dims--row { gap: 8px; }
	.lumo-dim__label { font-size: 12.5px; }
	.lumo-dim input { padding: 0 10px; }
	.lumo-collections__nav { flex-wrap: nowrap; overflow-x: auto; margin-inline: -16px; padding: 0 16px 4px; scrollbar-width: none; }
	.lumo-collections__chip { flex: none; }
}

/* Strona Próbniki: jedna kolumna, „Twoje próbniki” jako pasek na dole ekranu */
@media (max-width: 1100px) {
	.lumo-sp__layout { grid-template-columns: minmax(0, 1fr); gap: 0; padding-bottom: 90px; }
	.lumo-sp__basket { position: fixed; z-index: 60; left: 12px; right: 12px; bottom: 12px; top: auto; grid-template-columns: minmax(0, 1fr) auto; gap: 4px 14px; align-items: center; padding: 12px 12px 12px 18px; border-radius: 16px; box-shadow: var(--lumo-shadow-lg); }
	.lumo-sp__bhead h2 { font-size: 16px; }
	.lumo-sp__list, .lumo-sp__note, .lumo-sp__hint { display: none; }
	.lumo-sp__sum { grid-column: 1; grid-row: 2; padding: 0; border: 0; font-size: 12.5px; }
	.lumo-sp__sum div { justify-content: flex-start; }
	.lumo-sp__basket .lumo-btn { grid-column: 2; grid-row: 1 / span 2; width: auto; }
	body:has(.lumo-sp__basket) .lumo-chat { bottom: 96px; }
}
@media (max-width: 900px) {
	.lumo-sp__cards { grid-template-columns: minmax(0, 1fr); gap: 10px; margin-bottom: 26px; }
	.lumo-sp__cards li { grid-row: auto; grid-template-rows: none; padding: 16px; }
	.lumo-sp__chead { margin-bottom: 12px; }
	.lumo-sp__ico { width: 38px; height: 38px; border-radius: 10px; }
	.lumo-sp__cards .lumo-sp__price { font-size: 21px; }
	.lumo-sp__cards .lumo-sp__sub { min-height: 0; margin-top: 6px; }
	.lumo-sp__cards .lumo-sp__desc { margin-top: 12px; padding-top: 10px; }
}
@media (max-width: 600px) {
	.lumo-sp__lead { font-size: 15.5px; }
	.lumo-sp__kinds { flex-wrap: nowrap; }
	.lumo-sp__kinds .lumo-tabs__tab { flex: 1; padding: 10px 12px; font-size: 14px; }
	.lumo-sp__groups { flex-wrap: nowrap; overflow-x: auto; margin-inline: -16px; padding: 0 16px 4px; scrollbar-width: none; }
	.lumo-sp__groups .lumo-tabs__tab { flex: none; }
	.lumo-sp__main .lumo-swatches__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
	.lumo-sp__basket .lumo-btn { padding-inline: 16px; font-size: 14px; }
}

/* Koszyk / zamówienie / konto (1.11.0) - tablet 768 i telefon do 300 px */
@media (max-width: 960px) {
	.lumo-cart, .lumo-co { grid-template-columns: minmax(0, 1fr); }
	.lumo-cart__side, .lumo-co__side { position: static; }
	.lumo-co__side { order: -1; }
	.lumo-co-review__items { max-height: none; }
	/* Na tablecie/telefonie podsumowanie zamówienia nad formularzem, zwijane (main.js dodaje .is-collapsed) */
	.lumo-co-summary.is-collapsible .lumo-co-summary__head { cursor: pointer; margin-bottom: 0; }
	.lumo-co-summary.is-collapsible:not(.is-collapsed) .lumo-co-summary__head { margin-bottom: 16px; }
	.lumo-co-summary.is-collapsed #order_review, .lumo-co-summary.is-collapsed .lumo-coupon, .lumo-co-summary.is-collapsed .lumo-co-summary__trust { display: none; }
	.lumo-co-summary__toggle { display: inline-flex !important; align-items: center; gap: 8px; margin-left: auto; font-weight: 700; font-size: 17px; }
	.lumo-co-summary__toggle::after { content: ""; width: 8px; height: 8px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg) translateY(-2px); transition: transform .25s; }
	.lumo-co-summary:not(.is-collapsed) .lumo-co-summary__toggle::after { transform: rotate(-135deg); }
	.lumo-co-summary.is-collapsible .lumo-co-summary__head > .lumo-link { display: none; }
	.lumo-shophead__trust li:last-child { margin-left: 0; }
}
@media (max-width: 760px) {
	.lumo-shophead { margin-top: 10px; padding: 18px 18px 0; border-radius: 20px; gap: 14px; }
	.lumo-shophead__title { font-size: 34px; }
	.lumo-shophead__sub { font-size: 14.5px; }
	.lumo-shophead__trust { margin-inline: -18px; padding: 12px 18px; gap: 8px 16px; font-size: 12.5px; }
	.lumo-shophead__trust li:nth-child(3) { display: none; }
	.lumo-shophead__ring { width: 150px; border-width: 26px; left: auto; right: -70px; top: -60px; bottom: auto; }
	/* Kroki: same kółka z kreskami, podpis tylko przy bieżącym kroku */
	.lumo-shophead__steps { justify-self: stretch; width: 100%; }
	.lumo-steps { width: 100%; justify-content: space-between; padding: 6px 8px; font-size: 13px; }
	.lumo-steps li { flex: 1 1 auto; min-width: 0; }
	.lumo-steps li:first-child { flex: 0 0 auto; }
	.lumo-steps li + li::before { flex: 1 1 auto; width: auto; min-width: 6px; margin: 0 4px; }
	.lumo-steps em { display: none; }
	.lumo-steps .is-current em { display: inline; padding: 0 6px 0 6px; }
	.lumo-steps__n { width: 28px; height: 28px; font-size: 12px; flex: none; }

	/* Rząd 2: ilość po lewej, kwota po prawej - oba w jednym obszarze „bar”, bez wąskich kolumn */
	.lumo-cart__item { grid-template-columns: 84px minmax(0, 1fr) 36px; grid-template-areas: "thumb info rm" "bar bar bar"; gap: 12px 14px; padding: 12px; border-radius: 18px; }
	.lumo-cart__thumb img { width: 84px; height: 84px; border-radius: 12px; }
	.lumo-cart__name { font-size: 16px; }
	.lumo-cart__remove { align-self: start; }
	.lumo-cart__remove a.remove { width: 36px !important; height: 36px !important; }
	.lumo-cart__qty { grid-area: bar; justify-self: start; }
	.lumo-cart__subtotal { grid-area: bar; justify-self: end; align-self: center; white-space: nowrap; }
	.lumo-cart__item::after { content: ""; grid-area: bar; align-self: start; height: 1px; margin-top: -6px; background: var(--lumo-line); }
	.lumo-cart__side .wc-proceed-to-checkout .checkout-button { font-size: 16px; padding-inline: 18px; }
	.lumo-qty { height: 42px; }
	.lumo-qty button { width: 34px; height: 34px; }

	.lumo-co-step { border-radius: 20px; }
	.lumo-co-step__head { padding: 16px; gap: 4px 12px; }
	.lumo-co-step__n { width: 34px; height: 34px; }
	.lumo-co-step__body { padding: 0 16px 18px; }
	.lumo-co-step__recap { margin-left: 46px; }
	.lumo-co .woocommerce-billing-fields__field-wrapper, .lumo-co .woocommerce-shipping-fields__field-wrapper { grid-template-columns: minmax(0, 1fr); }
	.lumo-co .form-row-first, .lumo-co .form-row-last, .lumo-co #billing_city_field, .lumo-co #shipping_city_field, .lumo-co #billing_postcode_field, .lumo-co #shipping_postcode_field { grid-column: 1; }
	.lumo-co-step__nav { flex-direction: column-reverse; align-items: stretch; }
	.lumo-co-step__nav .lumo-btn { width: 100%; margin-left: 0; }
	.lumo-co-step__nav .lumo-link { align-self: center; }
	.lumo-co .lumo-inv-toggle label.checkbox::after { display: none; }
	.lumo-co #place_order { min-height: 58px; font-size: 17px; }
	.lumo-co-summary { padding: 16px; border-radius: 20px; }
	.lumo-co-summary__title { font-size: 19px; }
}
@media (max-width: 380px) {
	.lumo-shophead { padding: 16px 14px 0; }
	.lumo-shophead__trust { margin-inline: -14px; padding-inline: 14px; }
	.lumo-steps { padding: 5px 6px; }
	.lumo-steps__n { width: 24px; height: 24px; font-size: 11px; }
	.lumo-steps .is-current em { font-size: 12px; padding: 0 2px 0 5px; }
	.lumo-cart__item { grid-template-columns: 64px minmax(0, 1fr) 32px; padding: 10px; gap: 12px 10px; }
	.lumo-cart__thumb img { width: 64px; height: 64px; }
	.lumo-cart__name { font-size: 15px; }
	.lumo-cart__subtotal { font-size: 15.5px; }
	.lumo-coupon__row { flex-wrap: wrap; }
	.lumo-coupon__row .lumo-btn { flex: 1 1 100%; }
	.lumo-co-step__head, .lumo-co-step__body { padding-inline: 12px; }
	.lumo-co-step__recap { margin-left: 0; }
	.lumo-co-review__item { grid-template-columns: 56px minmax(0, 1fr); }
	.lumo-co-review__thumb, .lumo-co-review__thumb img { width: 56px; height: 56px; }
	.lumo-co-review__price { grid-column: 2; }
	.lumo-co-opt { padding: 14px 12px; gap: 10px; }
}

/* Przycisk koszyka (1.12.0) - na tablecie/telefonie bez kółka pod ikoną */
@media (max-width: 1100px) {
	.lumo-hact--cart { min-height: 44px; padding: 4px 12px; overflow: visible; }
	.lumo-hact--cart::after { display: none; }
	.lumo-hact--cart .lumo-hact__icon { width: auto; height: auto; background: none; }
	.lumo-hact--cart .lumo-cart-count { top: -7px; right: -9px; }
}

/* 1.13.0 (klient: „logo za duże o 15%, hamburger za duży i za gruby, kółko koszyka za duże, max 2 skróty”) */
@media (max-width: 1100px) {
	.lumo-logo__crop { width: 90px; } /* 1.25.4: +10% (klient 02.11) */
	.lumo-header__burger { width: 42px; height: 42px; margin-left: -8px; border-radius: 12px; }
	.lumo-burger { gap: 5px; width: 22px; }
	.lumo-burger i { height: 1.75px; }
	.lumo-hact--cart { width: 40px; min-width: 40px; height: 40px; min-height: 40px; padding: 0; justify-content: center; }
	.lumo-hact--cart .lumo-icon { width: 18px; height: 18px; }
	.lumo-hact--cart .lumo-cart-count { top: -4px; right: -5px; min-width: 17px; height: 17px; font-size: 10px; line-height: 17px; }
	.lumo-hact--search { min-width: 40px; min-height: 40px; }
	.lumo-drawer__quick { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; padding: 14px 16px 4px; }
	.lumo-drawer__quick a { display: flex; align-items: center; justify-items: start; gap: 10px; padding: 8px 12px 8px 8px; font-size: 14px; text-align: left; }
	.lumo-drawer__quick span { width: 32px; height: 32px; flex: none; }
	.lumo-drawer__quick span .lumo-icon { width: 17px; height: 17px; }
	.lumo-drawer__menu .lumo-menu-picto--icon .lumo-icon { width: 20px; height: 20px; }
}
@media (max-width: 600px) {
	.lumo-logo__crop { width: 79px; }
}
@media (max-width: 360px) {
	.lumo-logo__crop { width: 72px; }
	.lumo-header__burger { width: 40px; }
	.lumo-drawer__quick a { font-size: 13px; }
}

/* ==========================================================================
   1.14.0 (31.10, poprawki klienta)
   ========================================================================== */

/* Cena na liście produktów na telefonie mniejsza o 2 px (15 → 13 px) */
@media (max-width: 600px) {
	li.product .price { font-size: 13px; }
	li.product .price del { font-size: 11px; }
	li.product .price .lumo-price-from small { font-size: 10.5px; }
	li.product .lumo-price-quote { font-size: 12px; }
}

/* Koszyk w nagłówku na tablecie/telefonie (klient: „dramat”): bez czarnego kółka, ikona jak lupa, licznik w rogu nie ucięty */
@media (max-width: 1100px) {
	.lumo-hact--cart, .lumo-hact--cart:hover { width: 42px; min-width: 42px; height: 42px; min-height: 42px; padding: 0; overflow: visible; border-radius: 12px; background: transparent; color: var(--lumo-ink); box-shadow: none; transform: none; }
	.lumo-hact--cart .lumo-hact__icon { position: relative; display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; background: transparent; }
	.lumo-hact--cart .lumo-icon { width: 22px; height: 22px; }
	.lumo-hact--cart .lumo-cart-count { top: 2px; right: 0; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 999px; background: var(--lumo-accent); color: var(--lumo-on-accent); font-size: 10.5px; font-weight: 700; line-height: 18px; box-shadow: 0 0 0 2px #fff; }
	.lumo-hact--cart .lumo-hact__txt { display: none; }
	.lumo-hact--search .lumo-icon { width: 22px; height: 22px; }
}

/* Zamówienie na telefonie: podsumowanie zawsze rozwinięte, czytelne rozmiary do 300 px */
@media (max-width: 960px) {
	.lumo-co-summary__toggle { display: none !important; }
	.lumo-co-summary__head > .lumo-link { display: inline-flex !important; }
	.lumo-co-summary__head { margin-bottom: 14px; cursor: default; }
}
@media (max-width: 600px) {
	.lumo-co-summary__title { font-size: 18px; }
	.lumo-co-review__item { grid-template-columns: 60px minmax(0, 1fr) auto; gap: 12px; }
	.lumo-co-review__thumb, .lumo-co-review__thumb img { width: 60px; height: 60px; }
	.lumo-co-review__name { font-size: 14px; }
	.lumo-co-review__price { font-size: 14px; }
	.lumo-co-review__totals { font-size: 14px; }
	.lumo-co-review__totals .order-total td { font-size: 22px; }
	.lumo-co-step__title, .lumo-co-step__head h2 { font-size: 18px; }
	.lumo-co .form-row label { font-size: 13.5px; }
	.lumo-co .form-row input.input-text, .lumo-co .form-row textarea, .lumo-co .form-row select, .lumo-co .select2-container .select2-selection--single { min-height: 48px; padding: 10px 14px; font-size: 15px; }
	.lumo-co .woocommerce-terms-and-conditions-wrapper label.checkbox { font-size: 13.5px; }
	.lumo-qc__title { font-size: 20px; }
	.lumo-qc__item { grid-template-columns: 52px minmax(0, 1fr); gap: 10px; }
	.lumo-qc__price { grid-column: 2; font-size: 14px; }
	.lumo-qc__name { font-size: 14px; }
}
@media (max-width: 380px) {
	.lumo-co-review__item { grid-template-columns: 52px minmax(0, 1fr); gap: 10px; }
	.lumo-co-review__thumb, .lumo-co-review__thumb img { width: 52px; height: 52px; }
}

/* ==========================================================================
   1.15.0 (31.10, poprawki klienta)
   ========================================================================== */

/* Ile kafli w rzędzie (klient): warianty/tkaniny na karcie produktu max 6, Próbniki max 7, Wzorniki max 10, telefon 2.
   minmax(max(min, 1/N szerokości)) = nigdy więcej niż N w rzędzie, mniej gdy kontener wąski. */
.lumo-varpills--img, .lumo-product__summary .lumo-swatches__grid, .lumo-cfg .lumo-swatches__grid {
	grid-template-columns: repeat(auto-fill, minmax(max(72px, calc((100% - 5 * 8px) / 6)), 1fr)); gap: 8px;
}
.lumo-sp__main .lumo-swatches__grid { grid-template-columns: repeat(auto-fill, minmax(max(112px, calc((100% - 6 * 14px) / 7)), 1fr)); gap: 14px; }
.lumo-prose .lumo-library .lumo-swatches__grid { grid-template-columns: repeat(auto-fill, minmax(max(96px, calc((100% - 9 * 12px) / 10)), 1fr)); gap: 16px 12px; }
@media (max-width: 600px) {
	.lumo-varpills--img, .lumo-product__summary .lumo-swatches__grid, .lumo-cfg .lumo-swatches__grid,
	.lumo-sp__main .lumo-swatches__grid, .lumo-prose .lumo-library .lumo-swatches__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.lumo-sp__main .lumo-swatch__sample { min-height: 40px; font-size: 13px; }
}
/* Długie listy kolorów: przeglądarka nie maluje paneli poza ekranem (płynniejsze przewijanie Wzorników, Próbników, konfiguratora) */
.lumo-collections__panel, .lumo-library .lumo-tabs__panel, .lumo-sp__main .lumo-tabs__panel { content-visibility: auto; contain-intrinsic-size: auto 900px; }
.lumo-swatch__img img, .lumo-varpill__img img, .lumo-ps__shot img { background: var(--lumo-bg-2); }

/* Strona Próbniki na telefonie: dolny pasek w jednym rzędzie (tytuł + licznik | przycisk), nie zasłania dymka czatu */
@media (max-width: 600px) {
	.lumo-sp__basket { left: 10px; right: 10px; bottom: 10px; grid-template-columns: minmax(0, 1fr) auto; gap: 2px 12px; padding: 10px 10px 10px 16px; border-radius: 16px; }
	.lumo-sp__bhead { display: flex; align-items: baseline; gap: 8px; min-width: 0; }
	.lumo-sp__bhead h2 { margin: 0; font-size: 15px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
	.lumo-sp__count { flex: none; font-size: 13px; }
	.lumo-sp__sum { display: none !important; }
	.lumo-sp__basket .lumo-btn { grid-column: 2; grid-row: 1; min-height: 42px; padding: 0 16px; font-size: 13.5px; white-space: nowrap; }
	body:has(.lumo-sp__basket) .lumo-chat { bottom: 80px; }
}

/* Nagłówek mobilny (klient): większy odstęp hamburger - logo, lupa bliżej koszyka */
@media (max-width: 1100px) {
	.lumo-header__in { column-gap: 14px; }
	.lumo-header__actions { gap: 0; }
	.lumo-header__actions .lumo-hact { min-width: 40px; padding-inline: 4px; }
	.lumo-header__actions .lumo-hide-lg { display: none; }
}

/* Elementy przyklejone: stała odległość od góry (pod pełnym nagłówkiem). 1.19.0 (klient): chowane menu ich nie przesuwa. */
@media (min-width: 1101px) {
	.lumo-filters { top: calc(var(--lumo-stick) + 16px); max-height: calc(100vh - var(--lumo-stick) - 32px); }
	.lumo-cart__side { top: calc(var(--lumo-stick) + 16px); }
	.lumo-sp__basket, .lumo-helpdoc__nav, .lumo-contact-layout__form { top: calc(var(--lumo-stick) + 20px); }
	/* 1.26.1 (klient): sticky przy samej górze okna, bez odstępu na menu */
	.lumo-article__aside, .lumo-share--rail { top: calc(var(--lumo-stick) + 20px); }
}
/* 1.20.0 (klient): prawa kolumna karty produktu NIE jest sticky. */
.lumo-product__right { position: static; }
/* 1.20.0 (klient: „psuje się przy opisie sticky”): zakładki pod nagłówkiem zostawiały pas, w którym przewijał się opis
   (nagłówek chowa się w dół). Teraz przyklejone do samej góry okna, z białym marginesem - nagłówek, gdy wraca, nachodzi
   na nie z wierzchu (z-index), więc zakładki nie skaczą. */
.woocommerce-tabs ul.tabs { top: calc(var(--lumo-admin-h, 0px) + 8px); box-shadow: 0 0 0 8px #fff; }
/* 1.18.0 (klient): spis dokumentów (regulamin, polityki...) nie jedzie za chowanym menu - stała odległość od góry
   (pod pełnym nagłówkiem), więc nie przeskakuje, gdy menu się wysuwa. */
@media (min-width: 1101px) {
	/* 1.26.11 (klient: „paskudne odstępy”): bez miejsca na menu, jak reszta sticky (--lumo-stick) */
	.lumo-helpdoc__nav { top: calc(var(--lumo-stick) + 20px); transition: none; }
}

/* Stopka na tablecie i telefonie: wszystko nad copyrightem, copyright na samym dole (pod nim miejsce na dymek czatu) */
@media (max-width: 1100px) {
	.lumo-footer__bottom { flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: 14px; padding-bottom: 96px; }
	.lumo-footer__lang { order: 1; }
	.lumo-footer__copy { order: 2; }
	.lumo-footer__by { display: block; margin-top: 4px; }
	.lumo-footer__by::before { display: none; }
}

@media (max-width: 380px) {
	.lumo-co-review__thumb, .lumo-co-review__thumb img { width: 52px; height: 52px; }
	.lumo-co-review__price { grid-column: 2; }
	.lumo-co-summary { padding: 14px; }
	.lumo-co-summary__title { font-size: 17px; }
	.lumo-co-step__title, .lumo-co-step__head h2 { font-size: 16.5px; }
	.lumo-co-step__body { padding-inline: 12px; }
	.lumo-co #place_order { font-size: 15.5px; }
	.lumo-shophead__title { font-size: 26px; }
	.lumo-steps .is-current em { font-size: 11.5px; }
	.lumo-cart__name { font-size: 14px; }
	.lumo-cart__subtotal { font-size: 14.5px; }
	.lumo-qc__title { font-size: 18px; }
}

/* 1.16.0: zdjęcia w kartach - mniejszy oddech na wąskich kafelkach; bestsellery strony głównej (5 kol.) */
@media (max-width: 1000px) {
	.woocommerce ul.products li.product { padding: 0 0 8px; border-radius: 0; }
	.lumo-card__media img, .lumo-card__alt { padding: 10px; }
	.lumo-card__media--full img, .lumo-card__media--full .lumo-card__alt { padding: 0; }
}
@media (max-width: 1100px) {
	.woocommerce.lumo-rail ul.products.columns-5 { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px 12px; }
	.woocommerce.lumo-rail ul.products.columns-5 li.product:nth-child(n+10) { display: none; }
}
@media (max-width: 780px) {
	.woocommerce.lumo-rail ul.products.columns-5 { display: flex; }
	.woocommerce.lumo-rail ul.products.columns-5 li.product:nth-child(n+10) { display: block; }
}
@media (max-width: 600px) {
	.lumo-card__media img, .lumo-card__alt { padding: 8px; }
}

/* 1.17.0 (01.11, przegląd 300 i 768 px) */
/* Podsumowanie koszyka: wiersz „etykieta | kwota” także ≤780 px (tabela responsywna WC rozbijała go na 2 linie); bez „Oblicz koszty wysyłki” */
.woocommerce .lumo-cart__side .cart_totals table.shop_table tr.shipping { display: none; }
@media (max-width: 780px) {
	.woocommerce .lumo-cart__side .cart_totals table.shop_table tbody tr { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 12px 0; border-top: 0; }
	.woocommerce .lumo-cart__side .cart_totals table.shop_table tbody tr.order-total { align-items: baseline; }
	.woocommerce .lumo-cart__side .cart_totals table.shop_table tbody td { display: block; padding: 0 !important; text-align: right !important; }
	.woocommerce .lumo-cart__side .cart_totals table.shop_table tbody td::before { content: none; }
}
/* Komunikaty WC: kropka przy 1. linii tekstu, gdy przycisk spada pod tekst; bez czarnej ramki po automatycznym fokusie */
.woocommerce-notices-wrapper :focus, .woocommerce-message:focus, .woocommerce-info:focus, .woocommerce-error:focus, .woocommerce-NoticeGroup:focus { outline: none; }
@media (max-width: 600px) {
	.woocommerce-message, .woocommerce-info, .woocommerce-error { align-items: flex-start; padding: 13px 14px 13px 46px; font-size: 14.5px; }
	.woocommerce-message::before, .woocommerce-info::before, .woocommerce-error::before { top: 13px; left: 14px; margin-top: 0; }
	.woocommerce-message .button, .woocommerce-info .button { margin-left: 0; }
}
/* Zamówienie: „Edytuj koszyk” w jednej linii obok „Podsumowanie” */
.lumo-co-summary__head > .lumo-link { white-space: nowrap; }
@media (max-width: 400px) {
	.lumo-co-summary__head { gap: 8px; }
	.lumo-co-summary__head > .lumo-link { font-size: 13.5px; }
}
/* Strona główna 300-380 px: strzałka dużego kafla nachodziła na „22 produktów” (cały kafel i tak jest linkiem) */
@media (max-width: 380px) {
	.lumo-bento__item--big .lumo-bento__arrow { display: none; }
}
/* Karuzele: przyciąganie kart z odstępem od krawędzi (bez scroll-padding 1. karta dosuwała się do brzegu ekranu) */
@media (max-width: 780px) {
	.lumo-rail ul.products { scroll-padding-inline: var(--lumo-gutter); }
}
/* Kafle kategorii 701-1100 px: liczba produktów w jednej linii (łamała się pod zdjęcie) */
@media (min-width: 701px) and (max-width: 1100px) {
	.lumo-bento__count { white-space: nowrap; }
	.lumo-bento__item:not(.lumo-bento__item--big) .lumo-bento__body { max-width: calc(100% - 44px); }
	.lumo-bento__item:not(.lumo-bento__item--big) .lumo-bento__name { font-size: 18px; }
	.lumo-bento__item:not(.lumo-bento__item--big) .lumo-bento__picto { width: 34px; height: 34px; }
	.lumo-bento__item:not(.lumo-bento__item--big) .lumo-bento__picto svg { width: 20px; height: 20px; }
}

/* Ikonki przy punktach: stały rozmiar (przy 2 liniach tekstu flex je ściskał) */
.lumo-newsletter__perks li > svg, .lumo-newsletter__perks .lumo-icon, .lumo-shophead__trust .lumo-icon { flex: none; }

/* Kontakt: długie adresy e-mail rozpychały kolumnę poza ekran (1fr → minmax) */
@media (max-width: 1100px) {
	.lumo-contact-layout { grid-template-columns: minmax(0, 1fr); }
	.lumo-contact-layout__info .lumo-feature p, .lumo-contact-layout__info .lumo-feature a { overflow-wrap: anywhere; }
}
@media (max-width: 360px) {
	.lumo-contact-layout__info .lumo-feature { padding: 14px 12px 14px 60px; }
	.lumo-contact-layout__info .lumo-feature::before { left: 12px; top: 14px; }
	.lumo-contact-layout__info .lumo-feature p { font-size: 14px; }
}

/* 1.18.0: kolory na karcie tkaniny - tablet 6, telefon 4 w rzędzie (kafle z „+” w rogu, bez przycisków pod spodem) */
@media (min-width: 601px) and (max-width: 1100px) {
	.lumo-product__summary .lumo-fabric-pick .lumo-swatches__grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
	.lumo-product__summary .lumo-fabric-pick .lumo-swatches__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px 8px; }
	.lumo-fabric-pick .lumo-swatch__sample { top: 4px; right: 4px; width: 26px; height: 26px; }
	.lumo-fabric-pick .lumo-swatch__name { font-size: 12px; }
}

/* 1.21.0 (klient: „mobilnie tragedia” - bez uciętych kart i zakładek, kompaktowo pod 768 i 300 px) */
/* Bestsellery na stronie głównej: siatka zamiast karuzeli - 3 w rzędzie (601-780), 2 w rzędzie (telefon), bez ucinania */
@media (max-width: 780px) {
	.woocommerce.lumo-rail ul.products, .woocommerce.lumo-rail ul.products.columns-5 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px 12px; overflow: visible; scroll-snap-type: none; margin-inline: 0; padding: 0; }
	.woocommerce.lumo-rail ul.products li.product { flex: none; min-width: 0; }
	.woocommerce.lumo-rail ul.products.columns-5 li.product:nth-child(n+10) { display: none; }
}
@media (max-width: 600px) {
	.woocommerce.lumo-rail ul.products, .woocommerce.lumo-rail ul.products.columns-5 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 10px; }
	.woocommerce.lumo-rail ul.products.columns-5 li.product:nth-child(n+7) { display: none; }
	.woocommerce.lumo-rail ul.products li.product .button, .woocommerce.lumo-rail ul.products li.product .lumo-cfgbtn { min-height: 40px; padding: 8px 10px; font-size: 13px; gap: 6px; }
	.woocommerce.lumo-rail ul.products li.product .lumo-cfgbtn__sw { display: none; }
}
/* Zakładki kategorii nad bestsellerami: zawijane do kolejnych rzędów (telefon: 2 kolumny jedna pod drugą), nic nie ucieka w prawo */
@media (max-width: 780px) {
	.lumo-products-tabs .lumo-tabs__nav--pills { flex-wrap: wrap; overflow: visible; margin-inline: 0; padding: 0; gap: 8px; }
}
@media (max-width: 600px) {
	.lumo-products-tabs .lumo-tabs__nav--pills { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; }
	.lumo-products-tabs .lumo-tabs__nav--pills .lumo-tabs__tab { width: 100%; padding: 10px 8px; font-size: 14px; text-align: center; white-space: normal; }
	.lumo-products-tabs .lumo-tabs__nav--pills .lumo-tabs__tab:first-child:nth-last-child(odd) { grid-column: 1 / -1; }
}
/* Slidery produktów (podobne, polecane): całe karty - 3 (601-780) i 2 (telefon) na szerokość, bez ucinania ostatniej */
@media (max-width: 780px) {
	.woocommerce .lumo-pslider ul.products { grid-auto-columns: calc((100% - 2 * 12px) / 3); gap: 12px !important; }
}
@media (max-width: 600px) {
	.woocommerce .lumo-pslider ul.products { grid-auto-columns: calc((100% - 10px) / 2); gap: 10px !important; }
}
/* Nagłówek kategorii do 780 px bez kolażu zdjęć (na 768 px małe miniatury w dużych kafelkach, a lista produktów była nisko) */
@media (max-width: 780px) {
	.lumo-shophero__media { display: none; }
}
/* Menu mobilne 1.21.0 (klient: mniejsza czcionka o 2 px, języki nad kontaktem, „Zadzwoń”, widoczny „Doradca”, większy WhatsApp) */
@media (max-width: 1100px) {
	.lumo-drawer__label { margin: 16px 20px 4px; }
	.lumo-drawer__menu a { gap: 12px; padding: 7px 8px 7px 18px; font-size: 14.5px; font-weight: 600; letter-spacing: -.005em; }
	.lumo-drawer__menu .lumo-menu-picto { width: 38px; height: 38px; border-radius: 11px; flex: none; }
	.lumo-drawer__menu .lumo-menu-picto svg { width: 24px; height: 24px; }
	.lumo-drawer__menu > li + li { border-top: 1px solid #f1ece2; }
	.lumo-drawer__menu .current-menu-item > a, .lumo-drawer__menu .current-menu-ancestor > a { color: var(--lumo-accent-ink); }
	.lumo-drawer__menu .current-menu-item > a .lumo-menu-picto { background: var(--lumo-accent-soft); }
	.lumo-drawer__menu .sub-menu { padding: 4px 0 6px; border-radius: 0; }
	.lumo-drawer__menu .sub-menu li + li { border-top: 0; }
	.lumo-drawer__menu .sub-menu a { padding: 6px 8px 6px 30px; font-size: 13.5px; font-weight: 500; }
	.lumo-drawer__menu .sub-menu .lumo-menu-picto { width: 32px; height: 32px; }
	.lumo-drawer__menu .sub-menu .lumo-menu-picto svg { width: 20px; height: 20px; }
	.lumo-drawer__toggle { width: 38px; height: 38px; margin-right: 12px; }
	.lumo-drawer__foot { grid-template-columns: minmax(0, 1fr) auto; gap: 12px 10px; padding-top: 14px; }
	.lumo-drawer__lang { grid-column: 1 / -1; }
	.lumo-drawer__lang ul { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; flex-wrap: nowrap; }
	.lumo-drawer__lang a { justify-content: center; padding: 7px 8px; font-size: 13px; }
	.lumo-drawer__call { gap: 12px; min-height: 56px; padding: 6px 18px 6px 8px; }
	.lumo-drawer__callico { display: grid; place-items: center; flex: none; width: 40px; height: 40px; border-radius: 50%; background: var(--lumo-accent); color: var(--lumo-on-accent); }
	.lumo-drawer__call span:not(.lumo-drawer__callico) { font-size: 16px; font-weight: 600; line-height: 1.15; }
	.lumo-drawer__call small { font-size: 12px; font-weight: 500; color: var(--lumo-accent); letter-spacing: .02em; }
	.lumo-drawer__wa { width: 56px; height: 56px; }
	.lumo-drawer__wa .lumo-icon { width: 28px; height: 28px; }
}
@media (max-width: 360px) {
	.lumo-drawer__menu a { padding-left: 14px; font-size: 14px; }
	.lumo-drawer__menu .lumo-menu-picto { width: 34px; height: 34px; }
	.lumo-drawer__foot { padding-inline: 12px; }
	.lumo-drawer__call { padding-right: 12px; }
}
/* Karta „Konfigurator loży” na zdjęciu: mieści się w ramce na 300 px */
@media (max-width: 600px) {
	.lumo-config-promo__card--price { max-width: calc(100% - 24px); }
	.lumo-config-promo__card--price strong { font-size: 16px; }
}

/* ---------- 1.26.1 (klient): koszyk i zamówienie na telefonie (sprawdzone 300 i 390 px) ---------- */
/* Napisy na przyciskach wyśrodkowane także, gdy łamią się na 2 linie */
.lumo-btn, .woocommerce .button, .single_add_to_cart_button, #place_order, .checkout-button { text-align: center; }
/* „Większe zamówienie dla lokalu?” - link do lewej */
.lumo-cart-quote > div { min-width: 0; }
.lumo-cart-quote .lumo-link { width: auto; justify-content: flex-start; text-align: left; }
.lumo-cart-quote .lumo-link .lumo-icon { flex: none; margin-left: 0; }
/* Ceny końcowe o kilka px mniejsze */
.lumo-co-review__totals .order-total td { font-size: 22px; }
.lumo-cart__side .cart_totals .order-total td { font-size: 21px !important; }
/* Lista produktów w podsumowaniu: bez poziomego paska przewijania */
.lumo-co-review__items { overflow-x: hidden; }
.lumo-co-review__name, .lumo-cart__info { min-width: 0; overflow-wrap: anywhere; }
.lumo-co .woocommerce-form__label-for-checkbox, .lumo-co .woocommerce-terms-and-conditions-checkbox-text { min-width: 0; overflow-wrap: anywhere; }
@media (max-width: 768px) {
	.lumo-co-review__totals .order-total td { font-size: 19px; }
	.lumo-co-review__totals .order-total th { font-size: 15px; }
	.lumo-cart__side .cart_totals .order-total td { font-size: 19px !important; }
	.lumo-cart__side .cart_totals .order-total th { font-size: 15px !important; }
	.lumo-cart__items { gap: 16px; }
}
/* Podziękowanie / szczegóły zamówienia (też w Moim koncie): tabela mieści się w ekranie */
@media (max-width: 600px) {
	.woocommerce-order-details table.shop_table { width: 100%; table-layout: fixed; }
	.woocommerce-order-details table.shop_table th, .woocommerce-order-details table.shop_table td { padding: 12px; font-size: 14px; overflow-wrap: anywhere; }
	.woocommerce-order-details table.shop_table thead th:first-child, .woocommerce-order-details table.shop_table tfoot th { width: 55%; }
	.woocommerce-order-details table.shop_table .product-total, .woocommerce-order-details table.shop_table thead th:last-child, .woocommerce-order-details table.shop_table tfoot td { text-align: right; }
	.woocommerce .woocommerce-order-details table.shop_table td { white-space: normal; }
	.woocommerce .woocommerce-order-details table.shop_table tfoot tr td { text-align: right; }
	.woocommerce .woocommerce-order-details table.shop_table tfoot th { width: 45%; }
	.woocommerce .woocommerce-order-details table.shop_table tfoot tr:last-child th, .woocommerce .woocommerce-order-details table.shop_table tfoot tr:last-child td { font-size: 15px; }
	.woocommerce-order-details .wc-item-meta { margin: 6px 0 0; padding: 0; list-style: none; }
	.woocommerce-order-details .wc-item-meta li { margin: 0 0 4px; }
	.woocommerce-order-details .wc-item-meta strong, .woocommerce-order-details .wc-item-meta p { display: block; margin: 0; }
}
@media (max-width: 480px) {
	/* Cechy wariantu pod sobą: nazwa cechy, pod nią wartość */
	.lumo-cart__info dl.variation, .lumo-co-review__name dl.variation, .lumo-sidecart__info dl.variation, .lumo-qc__info dl.variation { grid-template-columns: minmax(0, 1fr); gap: 0; }
	.lumo-cart__info dl.variation dd, .lumo-co-review__name dl.variation dd, .lumo-sidecart__info dl.variation dd, .lumo-qc__info dl.variation dd { margin: 0 0 4px; color: var(--lumo-ink-2); }
	.lumo-co-summary__head { flex-wrap: wrap; row-gap: 6px; }
	.lumo-co-review__item { align-items: start; }
	.lumo-cart__side .wc-proceed-to-checkout .checkout-button { padding-inline: 16px; font-size: 15px; }
}
@media (max-width: 360px) {
	.lumo-co-review__totals .order-total td, .lumo-cart__side .cart_totals .order-total td { font-size: 17px !important; }
}

/* ==========================================================================
   1.26.4 (02.11, wpis 9613): poprawki mobilne
   ========================================================================== */

/* Pasek górny: bez „…” - dłuższy komunikat przechodzi do drugiej linii; bez wyboru języka (jest w menu mobilnym) */
@media (max-width: 1100px) {
	.lumo-topbar__lang { display: none !important; }
	.lumo-topbar__ticker, .lumo-topbar__in { height: auto; min-height: 40px; }
	.lumo-topbar__ticker li { white-space: normal; line-height: 1.3; }
	.lumo-topbar__ticker span { overflow: visible; text-overflow: clip; }
}

/* Nagłówek: lupa bliżej koszyka, licznik koszyka w rogu (nie zasłania torby) */
@media (max-width: 1100px) {
	.lumo-header__actions { gap: 0; }
	.lumo-header__actions .lumo-hact--search { min-width: 38px; width: 38px; padding-inline: 0; }
	.lumo-hact--cart, .lumo-hact--cart:hover { width: 38px; min-width: 38px; }
	.lumo-hact--cart .lumo-hact__icon { width: 38px; }
	.lumo-hact--cart .lumo-cart-count { top: -1px; right: -5px; min-width: 16px; height: 16px; padding: 0 4px; font-size: 10px; line-height: 16px; box-shadow: 0 0 0 1.5px #fff; }
}

/* Wyszukiwarka na telefonie = okienko nad przyciemnionym tłem (klik w tło / Esc zamyka, main.js), pole niższe o 2 px */
@media (max-width: 1100px) {
	.lumo-header.is-search-open { z-index: 300; }
	/* tło na .lumo-header__main (ma własny z-index 3 - okienko i X muszą być w tym samym kontekście warstw) */
	.lumo-header.is-search-open .lumo-hact--search { position: relative; z-index: 1002; background: #fff; }
	.lumo-header.is-search-open .lumo-header__main::before { content: ""; position: fixed; inset: 0; z-index: 1000; background: rgba(22, 21, 19, .5); backdrop-filter: blur(2px); animation: lumo-fade .25s var(--lumo-ease); cursor: pointer; }
	.lumo-header.is-search-open .lumo-hsearch { position: fixed; z-index: 1001; top: calc(var(--lumo-admin-h, 0px) + 128px); left: 16px; right: 16px; width: auto; margin: 0; height: 44px; box-shadow: 0 0 0 10px #fff, 0 30px 60px rgba(22, 21, 19, .3); }
	.lumo-header.is-search-open .lumo-hsearch__btn { height: 36px; }
	.lumo-header.is-search-open .lumo-hsearch__results { top: calc(100% + 18px); left: -10px; right: -10px; max-height: calc(100vh - var(--lumo-admin-h, 0px) - 180px); }
}

/* Galeria produktu: mniejsze strzałki miniatur, nie zasłaniają połowy miniatury */
@media (max-width: 600px) {
	.lumo-pg__tnav { width: 26px; height: 26px; margin-top: -13px; border-width: 1.5px; }
	.lumo-pg__tnav svg { width: 14px; height: 14px; }
	.lumo-pg__tnav.is-prev { left: -10px; }
	.lumo-pg__tnav.is-next { right: -10px; }
}

/* Formularze na wąskich ekranach: kolumny minmax(0, 1fr) - treść nie rozpycha karty poza ekran */
@media (max-width: 1100px) {
	.lumo-ask { grid-template-columns: minmax(0, 1fr); }
	.lumo-ask__lead { overflow-wrap: break-word; }
	.lumo-form, .lumo-form .lumo-field, .lumo-form :is(input, select, textarea) { min-width: 0; max-width: 100%; }
}
@media (max-width: 600px) {
	.lumo-ask { padding: 20px; }
	.lumo-ask .lumo-form.lumo-contact { padding: 20px 16px; }
	.lumo-grid2 { grid-template-columns: minmax(0, 1fr); }
	.lumo-contact-switch__nav { grid-template-columns: minmax(0, 1fr); }
	.lumo-contact-switch__nav button { padding: 10px 12px; }
	.lumo-contact-switch__nav strong { font-size: 14.5px; }
}

/* Akapity treści na telefonie 16 px (wpisy, opisy produktów, podstrony, kontakt) - także pierwszy akapit („lead”) */
@media (max-width: 768px) {
	.lumo-prose, .lumo-prose :is(p, li), .lumo-article__content, .lumo-article__content :is(p, li), .woocommerce-Tabs-panel, .woocommerce-Tabs-panel :is(p, li) { font-size: 16px; line-height: 1.7; }
	.lumo-article__content > p:first-child, .lumo-article__content > .elementor .elementor-widget-text-editor:first-of-type > p:first-child,
	.lumo-prose > .elementor > .e-con:first-child .elementor-widget-text-editor:first-of-type > p:first-child,
	.lumo-contact-layout__info .lumo-col > p:first-child, .lumo-contact-layout__info .lumo-sec:first-child > p:first-child { font-size: 16px; }
	.lumo-article__lead { font-size: 16px; }
}

/* ---------- 1.26.5 (klient): hero na telefonie - najpierw kafelki kategorii, potem tytuł i przyciski;
   karty na zdjęciu konfiguratora o 2 px mniejsze; zdjęcia w listach produktów zaokrąglone ---------- */
@media (max-width: 768px) {
	.lumo-hero__in > .lumo-bento { order: -1; }
}
@media (max-width: 600px) {
	.lumo-config-promo__card small { font-size: 10px; }
	.lumo-config-promo__card--price strong { font-size: 14px; }
	.lumo-config-promo__card--fabric { font-size: 10.5px; }
}
/* zaokrąglenie przycina obszar samego zdjęcia (bez oddechu = padding karty) */
.lumo-card__media img, .lumo-card__alt { clip-path: inset(15px round 10px); }
.lumo-card__media--full img, .lumo-card__media--full .lumo-card__alt { clip-path: none; }
@media (max-width: 1000px) {
	.lumo-card__media img, .lumo-card__alt { clip-path: inset(10px round 8px); }
	.lumo-card__media--full img, .lumo-card__media--full .lumo-card__alt { clip-path: none; }
}
@media (max-width: 600px) {
	.lumo-card__media img, .lumo-card__alt { clip-path: inset(8px round 8px); }
	.lumo-card__media--full img, .lumo-card__media--full .lumo-card__alt { clip-path: none; }
}

/* 1.26.11 (klient: „uważaj na sticky, w wielu miejscach paskudne odstępy”): wszystkie przyklejone elementy przy samej
   górze okna (--lumo-stick = tylko pasek admina) na KAŻDEJ szerokości - stare reguły liczyły jeszcze miejsce na menu
   (nagłówek 84 + belka 54 px), a menu się chowa, więc zostawała pusta dziura. Nagłówek, gdy wraca, nachodzi na nie z wierzchu. */
.lumo-helpdoc__nav, .lumo-contact-layout__form, .lumo-sp__basket, .lumo-article__aside, .lumo-share--rail,
.woocommerce-account .woocommerce-MyAccount-navigation, .lumo-product__left { top: calc(var(--lumo-stick) + 20px); }
.lumo-cart__side { top: calc(var(--lumo-stick) + 16px); }
@media (min-width: 1001px) {
	.lumo-filters { top: calc(var(--lumo-stick) + 16px); max-height: calc(100vh - var(--lumo-stick) - 32px); }
}

/* ---------- 1.26.13 (klient 03.11): cechy pozycji (koszyk boczny, koszyk, zamówienie, podziękowanie, Moje konto) ----------
   Nazwa cechy mała nad wartością, bloki obok siebie i zawijane. Markup: woocommerce/cart/cart-item-data.php (dl.lumo-meta > div)
   i filtr woocommerce_display_item_meta (ul.wc-item-meta.lumo-meta > li) w woocommerce.php. */
dl.variation.lumo-meta, ul.wc-item-meta.lumo-meta { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 8px 20px; margin: 8px 0 10px; padding: 0; list-style: none; font-size: 13px; }
dl.variation.lumo-meta > .lumo-meta__item, ul.wc-item-meta.lumo-meta > li { display: flex; flex-direction: column; gap: 1px; min-width: 0; max-width: 100%; margin: 0; }
dl.variation.lumo-meta > .lumo-meta__item > dt, ul.wc-item-meta.lumo-meta > li > .wc-item-meta-label { display: block; margin: 0; font-size: 11.5px; font-weight: 400; line-height: 1.3; color: var(--lumo-muted); }
dl.variation.lumo-meta > .lumo-meta__item > dd, ul.wc-item-meta.lumo-meta > li > p { display: block; margin: 0; font-size: 13px; font-weight: 500; line-height: 1.35; color: var(--lumo-ink-2); overflow-wrap: anywhere; }
dl.variation.lumo-meta > .lumo-meta__item > dd p { display: block; margin: 0; }
.lumo-sidecart__info dl.variation.lumo-meta, .lumo-qc__info dl.variation.lumo-meta, .lumo-co-review__name dl.variation.lumo-meta { gap: 6px 16px; margin: 6px 0 8px; }
.lumo-sidecart__info dl.variation.lumo-meta > .lumo-meta__item > dd, .lumo-qc__info dl.variation.lumo-meta > .lumo-meta__item > dd, .lumo-co-review__name dl.variation.lumo-meta > .lumo-meta__item > dd { font-size: 12.5px; }
.lumo-sidecart__info dl.variation.lumo-meta > .lumo-meta__item > dt, .lumo-qc__info dl.variation.lumo-meta > .lumo-meta__item > dt, .lumo-co-review__name dl.variation.lumo-meta > .lumo-meta__item > dt { font-size: 11px; }
