/* Zielony Olej Hurt: drobiazgi zakupów (koszyk, kasa, produkt, stopka). Ładowane na każdej stronie.
 * Arkusz motywu (diviplantshop/assets/css/woo.css) daje text-transform: capitalize etykietom kasy, opisom
 * płatności, zgodom i tytułom produktów: „Przeczytałem/Am I Akceptuję Warunki I Zasady”, „Olej Z Krokosza”.
 * Po polsku wielka litera stoi tylko na początku zdania i w nazwach własnych. */
body .woocommerce form .form-row label,
body.woocommerce-checkout #payment ul.payment_methods li,
body #payment .form-row.place-order .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p,
body #payment .woocommerce-terms-and-conditions-checkbox-text,
body .et_pb_wc_title h1,
body .related.products h2,
body .woocommerce-loop-product__title,
body .et_pb_wc_related_products h2{text-transform:none!important}

/* Komunikaty sklepu (błąd w kasie, „dodano do koszyka”) szły WERSALIKAMI: dwa zdania wielkimi literami czyta się jak krzyk */
body .woocommerce .woocommerce-error,
body .woocommerce .woocommerce-message,
body .woocommerce .woocommerce-info{text-transform:none!important}

/* Kasa: firma i NIP obok siebie. Opis pod NIP-em zwykłym tekstem: WooCommerce pokazuje opisy pól jako
 * niebieski dymek dopiero po kliknięciu w pole, a tu informacja ma być widoczna od razu. */
body.woocommerce-checkout #billing_nip_field .description{display:block!important;position:static;margin:4px 0 0;padding:0;background:none;color:#4a5642;font-size:14px;line-height:1.45}
body.woocommerce-checkout #billing_nip_field .description::before{content:none;display:none}

/* Koszyk: podpowiedź progu cenowego pod nazwą produktu (zo-hurt-progi) */
.zoh-koszyk-prog{margin-top:4px;font-size:15px;font-weight:700;line-height:1.4;color:#2f4d19}

/* Przycisk wyboru punktu odbioru (wtyczka Apaczka) miał jaskrawą zieleń spoza palety sklepu */
body #apaczka_pl_geowidget_classic,
body #apaczka_pl_geowidget_classic.button.alt{background:#fff!important;color:#3d6422!important;border:2px solid #4c7a2a!important;border-radius:2px!important;text-transform:uppercase!important;box-shadow:none!important;font:700 15px/1.2 Nunito,sans-serif!important;letter-spacing:.02em!important;text-transform:none!important;padding:12px 20px!important;min-height:44px}
body #apaczka_pl_geowidget_classic:hover,
body #apaczka_pl_geowidget_classic:focus-visible{background:#4c7a2a!important;color:#fff!important}

/* Stopka: opis firmy wyjustowany w wąskiej kolumnie robił dziury między słowami */
.et-l--footer .et_pb_blurb_description{text-align:left!important}

/* Przycisk „do góry” na telefonie i tablecie zasłaniał ceny w cenniku i przycisk „Przejdź do płatności” */
@media (max-width:980px){.et_pb_scroll_top{display:none!important}}
/* Informacja o opakowaniach transportowych na stronie produktu (prośba klientki 20.10.2026) */
.zoh-opakowania{margin:0 0 20px;padding:14px 16px;border:1px solid #a3a89c;border-left:4px solid #4c7a2a;border-radius:2px;background:#f6f9f2;color:#33402b;font-size:14px;line-height:1.55;text-transform:none;letter-spacing:normal}
.zoh-opakowania__tytul{display:block;margin:0 0 4px;color:#1f2a1a;font-size:15px;font-weight:700;text-transform:none}
.zoh-opakowania p{margin:0!important;padding:0!important;font-size:14px;line-height:1.55;text-transform:none}
/* Przycisk menu na telefonie: ikona 32 px, pole dotyku 44 px (dopełnienie znosi ujemny margines, ikona stoi w miejscu) */
.et_pb_menu .mobile_nav .mobile_menu_bar{padding:6px;margin:-6px}
/* ---------- Czytelność koszyka, kasy, stopki i opisu produktu (pomiar 21.10.2026: w koszyku i kasie połowa napisów
 * miała 11–13 px, w stopce 10 px; zieleń #5d8834 na bieli 4,17:1). Style z detalu (fragment WPCode 101595, motyw)
 * zostają w bazie nietknięte, hurt je nadpisuje. ---------- */
#shipping_method li,#shipping_method li label,.woocommerce-shipping-methods li label{font-size:15px!important;line-height:1.45!important}
#shipping_method li .amount,.woocommerce-shipping-methods li .amount,#shipping_method li bdi{font-size:15px!important}
.zo-shipping-header,.zo-shipping-header strong{font-size:15px!important;line-height:1.4!important}
.zo-header-note{font-size:14px!important;color:#4a5642!important}
.zo-pickup-addr{font-size:14px!important;line-height:1.45!important;color:#3a4733!important}
.woocommerce-cart-form table.shop_table thead th,.woocommerce table.shop_table thead th{font-size:14px!important;letter-spacing:.02em!important}
.cart_totals table th,.cart_totals table td,.cart_totals table td .amount,#order_review table.shop_table th,#order_review table.shop_table td,
#order_review table.shop_table td .amount,#order_review .product-quantity{font-size:15px!important;line-height:1.45!important}
#order_review table.shop_table tr.order-total th,#order_review table.shop_table tr.order-total td .amount,.cart_totals tr.order-total th,.cart_totals tr.order-total .amount{font-size:18px!important}
.woocommerce-billing-fields>h3,.woocommerce-additional-fields>h3,#order_review_heading,.woocommerce-shipping-fields #ship-to-different-address,.cart_totals>h2{font-size:21px!important;line-height:1.3!important;letter-spacing:normal!important;text-transform:none!important}
#ship-to-different-address label,#ship-to-different-address span{font-size:16px!important;text-transform:none!important}
.woocommerce-cart-form .amount,.cart_totals .amount,#order_review .amount,.et_pb_wc_related_products .price,.et_pb_wc_related_products .price .amount{color:#2f4d19!important}
.woocommerce-cart-form .zoh-cena-poj,.et_pb_wc_related_products .zoh-cena-poj{font-size:16px}
/* opis produktu (z detalu): plakietki 13 px biało na #5d8834 → 14 px na ciemniejszej zieleni (5,1:1) */
.pdesc__badge{font-size:14px!important;background-color:#4c7a2a!important}
/* stopka: opis firmy i prawa autorskie miały 10 px, numer konta 12 px */
.et-l--footer .et_pb_blurb_description,.et-l--footer .et_pb_blurb_description p,.et-l--footer .et_pb_text p{font-size:14px!important;line-height:1.6!important}
.et-l--footer .et_pb_button{font-size:14px!important}
/* Motyw detalu ustawia rozmiary w koszyku i kasie regułami z !important i wyższą szczegółowością
 * (np. „.woocommerce-cart .cart_totals ul#shipping_method li label” 12 px na telefonie), więc tu ta sama
 * szczegółowość plus „html body”. Sprawdzone 21.10.2026 regułami dopasowanymi do elementów. */
html body.woocommerce-cart table.shop_table.cart thead th{font-size:14px!important}
html body.woocommerce-cart .cart_totals ul#shipping_method li label,html body.woocommerce-cart .cart_totals ul#shipping_method li label .amount,
html body.woocommerce-checkout #order_review ul#shipping_method li label,html body.woocommerce-checkout #order_review ul#shipping_method li label .amount{font-size:15px!important;line-height:1.45!important}
html body.woocommerce-cart .cart_totals table th,html body.woocommerce-cart .cart_totals table td{font-size:15px!important}
html body.woocommerce-cart .cart_totals h2,html body.woocommerce-checkout .woocommerce-billing-fields>h3,
html body.woocommerce-checkout .woocommerce-additional-fields h3,html body.woocommerce-checkout h3#order_review_heading{font-size:21px!important;line-height:1.3!important;letter-spacing:normal!important;text-transform:none!important}
/* nagłówki kasy jedną barwą (były #555, #333 i szare pudełko) */
html body.woocommerce-checkout .woocommerce-billing-fields>h3,html body.woocommerce-checkout .woocommerce-additional-fields h3,
html body.woocommerce-checkout h3#order_review_heading,html body.woocommerce-checkout #ship-to-different-address,
html body.woocommerce-checkout #ship-to-different-address label,html body.woocommerce-checkout #ship-to-different-address span{color:#1f2a1a!important}
html body.woocommerce-cart button[name="update_cart"]{font-size:15px!important;background-color:#4c7a2a!important;color:#fff!important}
html body.woocommerce-cart .cart_totals tr.order-total .amount,html body.woocommerce-cart .cart_totals tr.order-total th{color:#2f4d19!important}
html body.woocommerce-checkout #payment ul.payment_methods li label{font-size:16px!important}
html body.woocommerce-checkout #payment div.payment_box,html body.woocommerce-checkout #payment div.payment_box p{font-size:15px!important;line-height:1.5!important}
html body.woocommerce-checkout .woocommerce-privacy-policy-text p,html body.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text{font-size:14px!important;line-height:1.5!important}
html body.woocommerce-cart .cart_totals table.shop_table tr th,html body.woocommerce-cart .cart_totals table.shop_table tr td{font-size:15px!important}
html body #shipping_method li .zo-pickup-addr,html body .woocommerce-shipping-methods li .zo-pickup-addr{font-size:14px!important;line-height:1.45!important;color:#3a4733!important}
html body.woocommerce-checkout #payment #place_order{font-size:16px!important}
/* kwoty i nagłówki w zieleni #5d8834 (4,17:1) → ciemniejsza zieleń; tekst zgody szary 4,02:1 → #4a5642 */
html body.woocommerce-cart .cart_totals ul#shipping_method li .amount,html body.woocommerce-checkout #order_review ul#shipping_method li .amount,
html body.woocommerce-cart .woocommerce-cart-form .amount{color:#2f4d19!important}
/* nagłówki tabel koszyka i zamówienia: biel na #5d8834 (4,17:1) → biel na #3d6422 (ok. 7:1) */
html body.woocommerce-checkout #order_review table.shop_table thead th,html body.woocommerce-cart table.shop_table.cart thead th{color:#fff!important;background-color:#3d6422!important}
html body.woocommerce-checkout #order_review table.shop_table tbody .product-quantity,html body.woocommerce-checkout #order_review table.shop_table tbody .product-total .amount{color:#2f4d19!important}
html body.woocommerce-checkout .woocommerce-privacy-policy-text p,html body.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text{color:#4a5642!important}
html body.woocommerce-checkout .woocommerce-privacy-policy-text a,html body.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text a{color:#2f4d19!important}
/* zakładki opisu produktu: aktywna biel na #5d8834 → na #4c7a2a (5,1:1) */
html body .et_pb_wc_tabs .et_pb_tabs_controls li.et_pb_tab_active{background-color:#4c7a2a!important}
html body .et_pb_wc_tabs .et_pb_tabs_controls li.et_pb_tab_active a{background-color:transparent!important}
html body .facet--sidebar .facet__links a{color:#2f4d19!important}
/* boczny pasek kategorii (wtyczka ZO Kategorie): 12–13 px */
html body .facet--sidebar .facet__title{font-size:16px!important}
html body .facet--sidebar .facet__links a{font-size:15px!important;line-height:1.4!important}
/* strona produktu na telefonie: zdjęcie niższe, żeby cena i „Do koszyka” weszły na pierwszy ekran (krytyk 21.10.2026) */
@media (max-width:767px){
  html body.single-product .woocommerce-product-gallery__image img.wp-post-image,html body.single-product .woocommerce-product-gallery__image img{max-height:220px!important;width:auto!important;margin:0 auto!important;object-fit:contain}
  /* dwa zdjęcia (butelka 5 L, kanister): przesuwa się je palcem, rząd miniatur tylko wydłużał stronę */
  html body.single-product .woocommerce-product-gallery .flex-control-thumbs{display:none!important}
  /* nazwa produktu stoi już w banerze na górze strony; drugi tytuł pod zdjęciem odsuwał cenę z pierwszego ekranu */
  html body.single-product .et_pb_wc_title{display:none!important}
  /* mniejsze odstępy między kartą zdjęcia a kartą zamówienia: cena wchodzi na pierwszy ekran także przy 375×667 */
  html body.single-product .et_pb_column:has(.et_pb_wc_images){margin-bottom:12px!important;padding-bottom:12px!important}
  html body.single-product .et_pb_column:has(.zoh-zamow-modul){padding-top:14px!important}
  html body.single-product .zoh-zamow{padding-top:12px}
}
/* „Dostawa i Płatność”: na szerokim ekranie dwie kolumny (czytelnosc.py: akapity po 151 znaków w wierszu) */
@media (min-width:1100px){
  .shipping-payment{column-count:2;column-gap:56px}
  .shipping-payment h3,.shipping-payment h4{break-after:avoid}
  .shipping-payment p,.shipping-payment li,.shipping-payment ul,.shipping-payment address{break-inside:avoid}
}
/* przyciski koszyka i kasy wersalikami, jak „DODAJ DO KOSZYKA” w detalu (Paweł 21.10.2026) */
html body.woocommerce-checkout #payment #place_order,html body.woocommerce-cart button[name="update_cart"],html body.woocommerce-cart .wc-proceed-to-checkout .checkout-button{text-transform:uppercase!important;letter-spacing:1px!important;border-radius:2px!important}
/* górny pasek nagłówka od 981 px: motyw (klasa dct_m_col2) dawał trzem kolumnom równą szerokość (184–230 px),
 * hasło łamało się na 2–4 linie, a pasek miał 95–115 px; tak samo w detalu. W hurcie proporcje 1/4, 1/2, 1/4
 * i teksty w jednej linii. */
@media (min-width:981px){
  html body .et-l--header .et_pb_row_0_tb_header>.et_pb_column_0_tb_header,html body .et-l--header .et_pb_row_0_tb_header>.et_pb_column_2_tb_header{width:25%!important}
  html body .et-l--header .et_pb_row_0_tb_header>.et_pb_column_1_tb_header{width:50%!important}
  html body .et-l--header .et_pb_row_0_tb_header .et_pb_column *{white-space:nowrap}
}
/* ---------- Bateria na hurcie 21.10.2026 ----------
 * Zieleń sklepu (#5d8834, zmienna --color-1 z ustawień motywu) pod białym napisem dawała 4,17:1: pasek menu,
 * „NATURALNIE” w górnym pasku, kafle i przyciski strony „Kontakt”, „Wróć do sklepu”. Ten sam odcień o stopień
 * ciemniej (#4c7a2a, 5,09:1), ten od plakietki HURT i paska koszyka. Detal zostaje nietknięty. */
html:root{--color-1:#4c7a2a}
html body .dct_blurb_cnt::before{background-color:#4c7a2a!important}
html body #page-container button.copylink,html body #page-container .et_pb_contact_form .et_pb_contact_submit.et_pb_button,
html body.woocommerce-cart #page-container a.button.wc-backward{background-color:#4c7a2a!important;border-color:#4c7a2a!important;color:#fff!important}
html body #page-container button.copylink:hover,html body #page-container button.copylink:focus-visible,
html body #page-container .et_pb_contact_form .et_pb_contact_submit.et_pb_button:hover,
html body.woocommerce-cart #page-container a.button.wc-backward:hover{background-color:#3d6422!important;border-color:#3d6422!important;color:#fff!important}
/* menu: najechanie gasiło napis do 70 % krycia, biel na zieleni spadała poniżej 4,5:1; teraz zmienia się tylko barwa */
html body .et-l--header .et-menu>li>a:hover,html body .et-l--header .et-menu>li>a:focus-visible{opacity:1!important;color:#fff6c2!important}
/* telefon w nagłówku: cały blok jest odnośnikiem, a po najechaniu nic się nie zmieniało */
html body .et-l--header .et_clickable:hover .mini-contact__phone{color:#2f4d19!important}
/* „Sprawdź” pod podobnymi produktami: po najechaniu biel na przezroczystym tle, napis znikał (2,31:1) */
html body #page-container li.product a.button:hover,html body #page-container li.product a.button:focus-visible{background-color:#4c7a2a!important;border-color:#4c7a2a!important;color:#fff!important}
html body li.product a.woocommerce-LoopProduct-link{color:#1f2a1a}
/* zakładki opisu: nieaktywna po najechaniu zmienia barwę i tło */
html body .et_pb_wc_tabs .et_pb_tabs_controls li:not(.et_pb_tab_active) a:hover{color:#2f4d19!important}
html body .et_pb_wc_tabs .et_pb_tabs_controls li:not(.et_pb_tab_active):hover{background-color:#eef3e8!important}
/* lupa galerii: biała tarcza na białym zdjęciu (obrys 1:1) */
html body .woocommerce-product-gallery__trigger{border:1px solid #7d916c!important}
@media (max-width:980px){
  /* stopka: odnośniki po 24 px wysokości jeden pod drugim; pole dotyku 44 px */
  html body .et-l--footer .et_pb_button_module_wrapper .et_pb_button{display:inline-flex!important;align-items:center;min-height:44px;padding-top:0!important;padding-bottom:0!important}
  /* okruszki w banerze: pole dotyku 44 px bez zmiany wysokości banera */
  html body .dct_header .et_pb_blurb_description a{display:inline-block;padding:11px 0;margin:-11px 0}
}

/* obwódki ramek informacyjnych z detalu: 1,13–1,41:1 na bieli, granica ramki niewidoczna; próg 2:1 (#a3a89c, 2,43:1) */
html body.single-product .et-l--body .et_pb_with_border,html body .et_pb_wc_tabs,html body .bankbox,
html body .et_pb_wc_related_products li.product,html body .equip__card,html body .equip,html body .bankbox__number{border-color:#a3a89c!important}
/* zdjęcia butelek mają już ramkę modułu albo karty; własna obwódka #eee (1,16:1) dawała drugą, niewidoczną ramkę */
html body.single-product .woocommerce-product-gallery img,html body .et_pb_wc_related_products li.product img{border:0!important}
/* prośba o ograniczenie ruchu: wejścia Divi (logo w stopce, et_pb_animation_top) czekały na przewinięcie z kryciem 0;
 * przy tej prośbie są widoczne od razu i bez ruchu (ruch.py, macierz.py 21.10.2026) */
@media (prefers-reduced-motion:reduce){html body .et-waypoint[class*="et_pb_animation_"]:not([class*="et_pb_animation_off"]){opacity:1!important;animation:none!important;transform:none!important}}
/* pasek menu: tło sekcji nagłówka i modułu menu jest wpisane w ustawieniach Divi wprost (#5d8834), nie zmienną.
 * Na stronach sklepu Divi poprzedza swoje reguły „.et-db #et-boc .et-l” (1,4,0), więc druga wersja ma body.et-db #et-boc (1,4,2). */
html body .et-l--header .et_pb_section.et_pb_section_2_tb_header,html body .et-l--header .et_pb_section.et_pb_section_3_tb_header,
html body .et-l--header .et_pb_menu.et_pb_menu_1_tb_header,
html body.et-db #et-boc .et-l--header .et_pb_section.et_pb_section_2_tb_header,html body.et-db #et-boc .et-l--header .et_pb_section.et_pb_section_3_tb_header,
html body.et-db #et-boc .et-l--header .et_pb_menu.et_pb_menu_1_tb_header{background-color:#4c7a2a!important}
html body.et-db #et-boc .et-l--header .et-menu>li>a:hover,html body.et-db #et-boc .et-l--header .et-menu>li>a:focus-visible{opacity:1!important;color:#fff6c2!important}
html body.et-db #et-boc .et-l--header .et_clickable:hover .mini-contact__phone{color:#2f4d19!important}
@media (max-width:980px){
  html body.et-db #et-boc .et-l--footer .et_pb_button_module_wrapper .et_pb_button{display:inline-flex!important;align-items:center;min-height:44px;padding-top:0!important;padding-bottom:0!important}
  html body.et-db #et-boc .dct_header .et_pb_blurb_description a{display:inline-block;padding:11px 0;margin:-11px 0}
}
/* ---------- Druga bateria 21.10.2026 (po wersalikach i menu) ---------- */
/* odnośniki, których widoczną treść niesie dziecko (logo ze znakiem HURT, ikona telefonu, ikony stopki, lupa galerii),
 * miały barwę domyślną motywu #2ea3f2 (2,75:1); teraz ciemna jak tekst, a najechanie coś zmienia */
html body .et-l--header .et_pb_image_0_tb_header a,html body .et-l--header .et_pb_blurb_0_tb_header a{color:#1f2a1a}
html body .et-l--header .et_pb_image_0_tb_header a img{transition:opacity .2s}
html body .et-l--header .et_pb_image_0_tb_header a:hover img{opacity:.85}
html body .et-l--header .et_pb_blurb_0_tb_header:hover .et_pb_module_header a,html body .et-l--header .et_pb_blurb_0_tb_header:hover .et-pb-icon{color:#2f4d19!important}
html body .et-l--footer .et_pb_social_media_follow a.icon{color:#fff}
html body .woocommerce-product-gallery__trigger{color:#1f2a1a!important}
html body .woocommerce-product-gallery__trigger:hover,html body .woocommerce-product-gallery__trigger:focus-visible{background-color:#eef3e8!important}
/* koszyk w pasku menu: po najechaniu jaśniejsza nakładka obniżała biel do 4,38:1; teraz ciemniejsza */
html body .et-l--header a.zol-cart:hover,html body .et-l--header a.zol-cart:focus-visible{background-color:rgba(0,0,0,.14)!important}
/* zakładki opisu: najechanie także na aktywnej */
html body .et_pb_wc_tabs .et_pb_tabs_controls li a:hover{text-decoration:underline;text-underline-offset:4px}
/* okruszki w banerze: najechanie */
html body .dct_header .et_pb_blurb_description a:hover{text-decoration:underline;text-underline-offset:3px}
/* „Sprawdź” pod podobnymi produktami: obwódka klikalnego 3:1 (była 1,8:1) */
html body #page-container li.product a.button{border-color:#7d916c!important}
/* „Współpraca”: sześć kart na całą szerokość dawało 137 znaków w wierszu (czytelnosc.py); od 1100 px karty w dwóch
 * kolumnach, wstęp w dwóch szpaltach, ta sama szerokość sekcji.
 * Od 13.11.2026 tylko pojemnik z co najmniej dwiema kartami: na „Maszynach i urządzeniach” każdy .equip ma JEDNĄ kartę
 * w połowie wiersza i siatka zostawiała jej pół kolumny (293 px karty obok 300 px pustego miejsca). */
@media (min-width:1100px){
  html body .equip:has(>.equip__card~.equip__card){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
  html body .equip:has(>.equip__card~.equip__card)>*:not(.equip__card){grid-column:1/-1}
  html body .equip:has(>.equip__card~.equip__card)>.equip__lede{column-count:2;column-gap:24px}
  html body .equip>.equip__lede:empty{display:none}
}
/* pary zdjęć maszyn (13.11.2026, rzędy z klasą zoh-foto-para): w połówkach wiersza pionowe zdjęcie PSD 15-30 miało 816 px
 * obok poziomego 459 px, a dwa pionowe zdjęcia filtra 919 i 1205 px. Obie fotografie jednej wysokości, w proporcji pliku
 * (bez docinania), para na środku; 38vw trzyma najszerszą parę (2,08 szerokości na wysokość) w rzędzie od 768 px
 * (przy 768: 640 px pary; przy 40vw wystawała 6 px poza rząd). Na tablecie Divi stawiał je jedno pod drugim po 882 px szerokości (1600 px
 * wysokości filtra), na telefonie pionowe zdjęcie do 480 px wysokości, w proporcji, na środku. */
@media (max-width:767px){
  html body .zoh-foto-para .et_pb_image{text-align:center}
  html body .zoh-foto-para .et_pb_image img{display:block;margin:0 auto;width:auto!important;height:auto!important;max-width:100%!important;max-height:480px}
}
@media (min-width:768px){
  html body .et_pb_row.zoh-foto-para{display:flex!important;justify-content:center;align-items:center;gap:32px}
  html body .et_pb_row.zoh-foto-para>.et_pb_column{width:auto!important;margin:0!important;flex:0 0 auto}
  html body .zoh-foto-para .et_pb_image,html body .zoh-foto-para .et_pb_image_wrap{display:block;margin:0!important}
  html body .zoh-foto-para .et_pb_image img{display:block;height:min(560px,38vw)!important;width:auto!important;max-width:none!important}
}
/* odnośniki w prozie (13.11.2026): telefon i e-mail w „Dostawa i Płatność” miały niebieski Divi #2ea3f2, 2,75:1 na bieli
 * (niewidoczne.py). Tylko akapit i komórka BEZ klasy, link BEZ klasy, poza ciemnymi sekcjami strony głównej: przyciski,
 * lista modeli i „Większe ilości…” mają własne barwy. Podkreślenie, bo sama barwa nie odróżnia linku od tekstu. */
:where(#main-content) .et_pb_section:not(.zoh-s--wspolpraca):not(.zoh-s--kontakt) .et_pb_text_inner :is(p,td):not([class])>a:not([class]){color:#3d6422;text-decoration:underline;text-underline-offset:3px}
:where(#main-content) .et_pb_section:not(.zoh-s--wspolpraca):not(.zoh-s--kontakt) .et_pb_text_inner :is(p,td):not([class])>a:not([class]):hover{color:#1f2a1a}
/* strona podziękowania po zamówieniu (13.11.2026, zrzut Pawła z zamówienia próbnego): motyw daje nagłówkowi tabeli
 * i wierszowi „Metoda płatności” tło #292929, a późniejsza reguła tego samego arkusza przemalowuje napisy na #232323
 * (1,08:1, wartość płatności 1,95:1). Biały tekst dokładnie w tych komórkach (14,7:1). */
html body .woocommerce .woocommerce-order .woocommerce-order-details .shop_table thead tr th,
html body .woocommerce .woocommerce-order .woocommerce-order-details .shop_table tfoot tr:last-child th,
html body .woocommerce .woocommerce-order .woocommerce-order-details .shop_table tfoot tr:last-child td,
html body .woocommerce .woocommerce-order .woocommerce-order-details .shop_table tfoot tr:last-child td *{color:#fff!important}
/* formularz Kontaktu: Divi chowa etykiety pól przez display:none, więc pola nie miały nazwy dla czytnika (nazwy.py);
 * etykieta zostaje niewidoczna, ale czytelna dla czytnika (placeholder dalej podpowiada wzrokowo) */
html body .et_pb_contact_form_label{display:block!important;position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
@media (max-width:980px){
  /* pola dotyku 44 px: odnośniki w oknie zgody (38 px), lupa galerii (38 px), ikony stopki (36 px), „Sprawdź” (36 px),
   * „Kopiuj numer konta” (30 px), e-mail i telefon w treści stron (24–35 px) */
  html body .woocommerce-product-gallery__trigger{width:44px!important;height:44px!important;line-height:44px!important}
  html body .et-l--footer .et_pb_social_media_follow a.icon{padding:9px!important}
  html body #page-container li.product a.button{min-height:44px;display:inline-flex!important;align-items:center;justify-content:center}
  html body button.copylink{min-height:44px}
  html body #main-content a[href^="mailto:"],html body #main-content a[href^="tel:"],html body .dct_blurb_cnt .et_pb_module_header a{display:inline-block;padding-top:10px;padding-bottom:10px;margin-top:-10px;margin-bottom:-10px}
  /* zdjęcie na telefonie: dotknięcie łapało warstwę powiększenia zamiast zdjęcia; powiększenie zostaje pod lupą */
  html body .woocommerce-product-gallery .zoomImg{display:none!important}
}
/* znak HURT w logo na telefonie: odnośnik logo z barwą domyślną motywu (1,85:1); ikona telefonu w nagłówku: najechanie */
html body .et-l--header a:has(.zoh-hurt-znak){color:#1f2a1a}
html body .et-l--header .et_pb_blurb_0_tb_header a:hover{color:#2f4d19!important}
/* galeria produktu przed startem suwaka (13.11.2026): drugie zdjęcie stało miniaturą pod pierwszym (310 zamiast 220 px),
   a przy starcie suwaka na jedną klatkę pod nim (448 px): blok zamówienia skakał dwa razy, CLS 0,11. Do chwili, gdy suwak
   ustawi slajdom float, kolejne zdjęcia nie zajmują miejsca. */
.woocommerce-product-gallery .woocommerce-product-gallery__image:nth-child(n+2):not([style*="float"]){position:absolute!important;visibility:hidden!important}
/* logo w zielonym nagłówku telefonu i tabletu (13.11.2026): oliwkowa kreska na zieleni #4c7a2a miała 1,07:1, czyli
   znaku praktycznie nie było widać. Ta sama kreska w bieli 5,09:1, jak znaczek HURT obok. Komputer i detal bez zmian. */
.et-l--header .et_pb_section_2_tb_header .et_pb_menu__logo img,
.et-l--header .et_pb_section_3_tb_header .et_pb_menu__logo img{filter:brightness(0) invert(1)}
/* tytuł produktu (H1) na telefonie (13.11.2026): Divi wyłączał moduł na telefonie, bo nazwę pokazuje baner, więc strona
   produktu na telefonie nie miała ani jednego H1 dla czytników i robotów. Moduł zostaje, ale niewidoczny na ekranie. */
@media (max-width:767px){
  html body #page-container .et_pb_module.et_pb_wc_title{display:block!important;position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0!important}
}
/* filmy YouTube jako podgląd z przyciskiem (13.11.2026): odtwarzacz ładuje się dopiero po kliknięciu */
html body .zoh-yt{position:relative;display:block;width:100%;aspect-ratio:16/9;margin:0;padding:0;border:0;border-radius:0;background:#000;cursor:pointer;overflow:hidden;font:inherit;color:#fff;box-shadow:none;-webkit-appearance:none;appearance:none}
html body .zoh-yt img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;opacity:.9;transition:opacity .2s}
html body .zoh-yt__graj{position:absolute;left:50%;top:50%;width:72px;height:50px;margin:-25px 0 0 -36px;border-radius:14px;background:rgba(20,20,20,.82);transition:background-color .2s}
html body .zoh-yt__graj::after{content:"";position:absolute;left:29px;top:15px;border-style:solid;border-width:10px 0 10px 17px;border-color:transparent transparent transparent #fff}
html body .zoh-yt:hover img{opacity:1}
html body .zoh-yt:hover .zoh-yt__graj,html body .zoh-yt:focus-visible .zoh-yt__graj{background:#3d6422}
html body .zoh-yt:focus-visible{outline:3px solid #3d6422;outline-offset:3px}
html body .zoh-yt__ramka{display:block;width:100%;height:auto;aspect-ratio:16/9;border:0}
/* odnośnik logo w zielonym nagłówku telefonu: barwa jak widoczny napis HURT (biel, 5,09:1); ciemna #1f2a1a dawała
   pomiarom 2,94:1 dla tekstu, którego nikt nie widzi (stany.py, 13.11.2026) */
html body .et-l--header .et_pb_section_2_tb_header a:has(.zoh-hurt-znak),
html body .et-l--header .et_pb_section_3_tb_header a:has(.zoh-hurt-znak){color:#fff}
