/* WorldMarathoner 2026: sekcje zbudowane w Divi 5. Kolory, fonty, przyciski i odstępy sekcji są w opcjach Divi
   (kolory globalne, presety WMM); tutaj tylko to, czego Divi nie ma w opcjach modułów. Zaokrąglenia: 10 px. */

/* Odstępy w kolumnach: Divi poniżej 981 px dokłada modułom i kolumnom margines 30 px, tu odstępy daje siatka. */
.wmm-sec .et_pb_module { margin-bottom: 0; }
.wmm-col > * + * { margin-top: 18px; }
@media (max-width: 980px) { .wmm-sec .et_pb_column { margin-bottom: 0; } }
.wmm-sec .et_pb_text p:last-child { padding-bottom: 0; }
/* Kolejne wiersze w jednej sekcji (np. nagłówek, e-booki, pakiety) */
.wmm-sec .et_pb_row + .et_pb_row { margin-top: 24px; }
/* Moduły ułożone przez Grupę we flexie mają odstęp z opcji grupy, nie z marginesu */
.wmm-sec .et_pb_group > * + * { margin-top: 0; }

/* Nagłówek sekcji: tytuł i wstęp po lewej, przycisk po prawej */
.wmm-sec .et_pb_module.wmm-sekcja-glowa { margin-bottom: 32px; }
.wmm-sec .wmm-sekcja-glowa + * { margin-top: 0; }
.wmm-sekcja-glowa__tekst { max-width: 62ch; }
.wmm-sekcja-wstep p { margin: 0; }

/* Kolumna obok najnowszych: numer startowy i lista kolejnych wpisów */
.wmm-col-numer .wmm-kolejne__tytul { margin-top: 28px !important; padding-top: 22px; border-top: 1px solid #dbe3ea; }
.wmm-col-numer .wmm-kolejne__tytul h3 { font-size: 17px !important; }
.wmm-col-numer .wmm-kolejne { margin-top: 6px !important; }
@media (max-width: 980px) { .wmm-col-numer { margin-top: 12px; } .wmm-col-numer .wmmp-lista { display: grid; grid-template-columns: 1fr 1fr; column-gap: 24px; } .wmm-col-numer .wmmp-lista > li:nth-last-child(2) { border-bottom: 0; } }
@media (max-width: 600px) { .wmm-col-numer .wmmp-lista { grid-template-columns: 1fr; } .wmm-col-numer .wmmp-lista > li:nth-last-child(2) { border-bottom: 1px solid #dbe3ea; } }

/* Etykiety i listy */
.wmm-pill { display: inline-block; padding: 2px 10px; border-radius: 6px; background: #e6edf2; color: #29495e; font-size: 12px; font-weight: 600; line-height: 1.6; }
.wmm-pill--niebieski { background: #0b6fa3; color: #fff; }
.wmm-sec .wmm-lista-check, .wmm-sec .wmm-biegi, .wmm-s-stopka .wmm-stopka__lista ul { list-style: none !important; padding: 0 !important; }
.wmm-sec .wmm-lista-check li, .wmm-sec .wmm-biegi li, .wmm-s-stopka .wmm-stopka__lista li { list-style: none !important; }
.wmm-lista-check { display: flex; flex-direction: column; gap: 8px; margin: 0; padding: 0; list-style: none; font-size: 14px; }
.wmm-lista-check li { position: relative; padding-left: 26px; line-height: 1.45; }
.wmm-lista-check li::before { content: ""; position: absolute; left: 0; top: 2px; width: 17px; height: 17px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231496d2' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 4.5 4.5L19 7'/%3E%3C/svg%3E") center / contain no-repeat; }
.wmm-lista-check--opis b { display: block; color: #1e3140; font-weight: 600; }
.wmm-lista-check--opis span { color: #5f7383; }
.wmm-cena p { font-size: 28px; font-weight: 700; line-height: 1.1; color: #1e3140; }
.wmm-cena--tekst p { font-size: 21px; }
.wmm-uwaga p { font-size: 12px; }
.wmm-sec .wmm-uwaga { margin-top: 14px !important; }

/* E-booki i pakiety: karty z cieniem */
.wmm-ebook, .wmm-pakiet { box-shadow: 0 18px 40px -24px rgba(30, 49, 64, .45); overflow: hidden; }
.wmm-ebook .wmm-ebook__obraz, .wmm-ebook .wmm-ebook__obraz .et_pb_image_wrap { height: 100%; margin: 0; }
.wmm-ebook__obraz img { width: 100%; height: 100%; object-fit: cover; }
.wmm-ebook__tresc { padding: 24px; margin-top: 0 !important; }
.wmm-sec .wmm-ebook__tresc > * { margin-top: 0; }
.wmm-ebook__dol { margin-top: auto !important; padding-top: 6px; }
.wmm-ebook__pill p { margin: 0; }
.wmm-pakiet { border: 2px solid transparent; }
.wmm-pakiet--hot { border-color: #1496d2; }
.wmm-sec .wmm-pakiet > * { margin-top: 0; }
.wmm-sec .wmm-pakiet > .wmm-cena { margin: 2px 0 6px; }
.wmm-sec .wmm-pakiet > .et_pb_button_module_wrapper { margin-top: auto !important; padding-top: 10px; }
.wmm-pakiet .et_pb_button { display: block; width: 100%; text-align: center; }
.wmm-pakiet__wyroznik p { margin: 0; }
@media (max-width: 1150px) { .wmm-sec .et_pb_row.wmm-row-ebooki { grid-template-columns: 1fr !important; } }
@media (max-width: 767px) { .wmm-ebook__obraz img { aspect-ratio: 3 / 2; } }

/* Ciemne karty (kawa, współpraca): szerokość treści strony, nie wiersza z marginesami bocznymi */
.wmm-sec .et_pb_row.wmm-kawa, .wmm-sec .et_pb_row.wmm-wspolpraca { width: calc(100% - 64px) !important; max-width: 1320px !important; }
@media (max-width: 980px) { .wmm-sec .et_pb_row.wmm-kawa, .wmm-sec .et_pb_row.wmm-wspolpraca { width: calc(100% - 48px) !important; } }
@media (max-width: 767px) { .wmm-sec .et_pb_row.wmm-kawa, .wmm-sec .et_pb_row.wmm-wspolpraca { width: calc(100% - 32px) !important; } }

/* Kawa: zdjęcie do krawędzi karty */
.wmm-sec .et_pb_row.wmm-kawa { padding: 0 !important; overflow: hidden; }
.wmm-kawa__tekst { padding: clamp(24px, 4vw, 52px); align-self: center; }
.wmm-kawa__zdjecie, .wmm-kawa__zdjecie .wmm-kawa__obraz, .wmm-kawa__zdjecie .et_pb_image_wrap { height: 100%; margin: 0; }
.wmm-kawa__obraz img { width: 100%; height: 100%; min-height: 280px; object-fit: cover; object-position: 60% 25%; }
@media (max-width: 767px) { .wmm-kawa__zdjecie { order: -1; } .wmm-kawa__obraz img { min-height: 0; aspect-ratio: 4 / 3; } }

/* O mnie */
.wmm-omnie__obraz img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 10px; }
.wmm-biegi { display: flex; flex-wrap: wrap; gap: 10px; margin: 0; padding: 0; list-style: none; }
.wmm-biegi li { padding: 8px 14px; border: 1px solid #dbe3ea; border-radius: 10px; background: #fff; text-align: center; line-height: 1.3; }
.wmm-biegi b { display: block; font-size: 14px; color: #1e3140; }
.wmm-biegi span { font-weight: 700; color: #0b6fa3; }

/* Współpraca: gradient (Divi nie ma gradientu w presecie wiersza tej sekcji) */
.wmm-sec .et_pb_row.wmm-wspolpraca { padding: clamp(24px, 4vw, 48px) !important; background-image: linear-gradient(120deg, #0b6fa3, #29495e); }

/* FAQ: pytania rozdzielone linią */
.wmm-faq .et_pb_toggle { margin: 0 !important; padding: 18px 0; border: 0; border-bottom: 1px solid #dbe3ea; border-radius: 0; background: transparent; }
.wmm-faq .et_pb_toggle_title { padding-right: 36px; }

/* Formularz kontaktowy */
.wmm-kontakt__form { box-shadow: 0 18px 40px -24px rgba(30, 49, 64, .45); }
.wmm-form input.input, .wmm-form textarea.input, .wmm-form select { width: 100%; padding: 12px 14px !important; border: 1px solid #dbe3ea !important; border-radius: 10px !important; background: #fff !important; color: #1e3140 !important; font: 16px/1.5 'Poppins', sans-serif !important; }
.wmm-form input.input:focus, .wmm-form textarea.input:focus, .wmm-form select:focus { outline: 2px solid #2ea3f2; outline-offset: 1px; }
.wmm-form .et_contact_bottom_container { margin-top: 8px; }
.wmm-form .et_pb_contact_submit { padding: 13px 24px !important; border: 0 !important; border-radius: 10px !important; background: #0b6fa3 !important; color: #fff !important; font: 600 15px/1.3 'Poppins', sans-serif !important; }
.wmm-form .et_pb_contact_submit:hover { background: #29495e !important; }
.wmm-form .et_pb_contact_submit::after { display: none; }

/* Stopka: Marka | Maratony (dwie kolumny listy) | Strona | Kontakt; na telefonie marka i maratony na całą szerokość */
.wmm-s-stopka a { color: #9fb3c2; text-decoration: none; }
.wmm-s-stopka a:hover { color: #fff; }
.wmm-stopka__logo img { width: auto; height: 52px; filter: brightness(0) invert(1); }
.wmm-stopka__marka > * + * { margin-top: 16px; }
.wmm-stopka__lista .wmm-stopka__tytul { margin: 0 0 14px; padding: 0; font-size: 15px; font-weight: 600; color: #fff; }
.wmm-stopka__lista ul { display: flex; flex-direction: column; gap: 9px; margin: 0; padding: 0; list-style: none; font-size: 14px; line-height: 1.45; }
.wmm-stopka__maratony .wmm-stopka__lista ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-flow: column; grid-template-rows: repeat(5, auto); column-gap: 24px; row-gap: 9px; }
.wmm-stopka__ikony a { display: inline-flex; align-items: center; gap: 10px; overflow-wrap: anywhere; }
.wmm-stopka__ikony svg { flex: none; color: #2ea3f2; }
/* Na komputerze kolumny 1-3 na dwa wiersze, w czwartej kontakt, pod nim przycisk kawy */
@media (min-width: 981px) {
	.wmm-stopka > .wmm-stopka__marka, .wmm-stopka > .wmm-stopka__maratony, .wmm-stopka > .et_pb_column:nth-child(3) { grid-row: 1 / span 2; }
	.wmm-stopka > .wmm-stopka__kontakt, .wmm-stopka > .wmm-stopka__kawa-kol { grid-column: 4; }
}
.wmm-stopka__social .wmmp-social--kafle a { border-color: rgba(255, 255, 255, .18); background: transparent; color: #fff; }
.wmm-stopka__social .wmmp-social--kafle a:hover, .wmm-stopka__social .wmmp-social--kafle a:focus-visible { border-color: #fff; background: #fff; color: #1e3140; }
.wmm-stopka__dol p { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px 24px; margin-top: 40px; padding-top: 20px; border-top: 1px solid #34495a; font-size: 13px; }
.wmm-stopka__prawne { display: inline-flex; flex-wrap: wrap; gap: 6px 20px; }
.wmm-stopka__dol p > span:last-child a { text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 980px) { .wmm-stopka__marka, .wmm-stopka__kawa-kol { grid-column: 1 / -1; } }
/* Telefon: jedna kolumna, każda lista pozycja pod pozycją (długie nazwy maratonów nie łamią się w połowie), przycisk kawy
   bliżej dolnej kreski */
@media (max-width: 767px) {
	.wmm-sec .et_pb_row.wmm-stopka { grid-template-columns: minmax(0, 1fr); }
	.wmm-stopka > .et_pb_column { grid-column: 1 / -1; }
	.wmm-stopka__maratony .wmm-stopka__lista ul { display: flex; flex-direction: column; }
	.wmm-stopka__dol p { flex-direction: column; align-items: flex-start; margin-top: 4px; }
}

/* Kontakt: e-mail i logotypy maratonów pod wstępem */
.wmm-kontakt__mail a { color: #0b6fa3; font-weight: 600; }
.wmm-sec .wmm-logotypy { margin-top: 32px !important; }
/* Logotypy 7 maratonów (pliki 410x140, siatka 8 kolumn w opcjach grupy): 4 w rzędzie, 3 wyśrodkowane pod spodem;
   telefon (6 kolumn): 2 + 3 + 2 */
.wmm-logotypy > .wmm-logotyp { grid-column: span 2; margin: 0 !important; }
.wmm-logotypy > .wmm-logotyp:nth-child(5) { grid-column: 2 / span 2; }
@media (max-width: 767px) {
	.wmm-logotypy > .wmm-logotyp, .wmm-logotypy > .wmm-logotyp:nth-child(5) { grid-column: auto / span 3; }
	.wmm-logotypy > .wmm-logotyp:nth-child(n+3):nth-child(-n+5) { grid-column: auto / span 2; }
}
/* Wyrównanie wielkości na oko: pliki mają różne puste marginesy (Boston wąska tarcza, Londyn szeroki znak) */
.wmm-logotyp--chicago img, .wmm-logotyp--tokyo img { transform: scale(.9); }
.wmm-logotyp--london img { transform: scale(.82); }
.wmm-logotyp--sydney img { transform: scale(1.3); }
.wmm-logotyp--boston img { transform: scale(1.6); }
.wmm-logotyp img { width: 100%; height: auto; filter: brightness(0) saturate(100%) invert(24%) sepia(17%) saturate(1200%) hue-rotate(163deg) brightness(92%); opacity: .7; }

/* Gwiazdki: na telefonie mniejsze koło */
@media (max-width: 767px) { .wmm-s-gwiazdki .wmmp-gwiazdki { gap: 24px; } }

/* Najnowsze wpisy: wstęp i link tekstowy zamiast tytułu i przycisku */
.wmm-sec .et_pb_module.wmm-najnowsze-glowa { margin-bottom: 22px; }
.wmm-sec .wmm-najnowsze-glowa + * { margin-top: 0; }
.wmm-glowna-h1 h1 { margin: 0; padding: 0; }
.wmm-link-wiecej a { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; color: #0b6fa3; white-space: nowrap; text-decoration: none; }
.wmm-link-wiecej a:hover { color: #29495e; }

/* ---------- Szablon wpisu ---------- */
/* Nagłówek wpisu: poświata na granatowym tle sekcji (Divi nie łączy koloru tła z dwoma gradientami w jednej sekcji) */
.wmm-s-wpis-glowa, .wmm-s-arch-glowa { background-image: radial-gradient(circle at 88% 12%, rgba(46, 163, 242, .22), transparent 42%), radial-gradient(circle at 0% 100%, rgba(41, 73, 94, .85), transparent 55%); }

/* Treść do 820 px, kolumna boczna przy prawej krawędzi (jak treść nagłówka strony) */
.wmm-sec .et_pb_row.wmm-row-wpis { justify-content: space-between; }
.wmm-wpis-glowna > * + * { margin-top: 36px; }
.wmm-wpis-bok > * + * { margin-top: 28px; }
.wmm-bok-tytul h2 { margin: 0; padding: 0 0 10px; border-bottom: 1px solid #dbe3ea; font-size: 17px !important; }
.wmm-wpis-bok .wmmp-liczby { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.wmm-wpis-bok .wmmp-liczba { padding: 12px 14px; }
.wmm-wpis-bok .wmmp-liczba b { font-size: 18px; }
/* E-booki przyklejone przy przewijaniu tylko wtedy, gdy mieszczą się w wysokości okna */
@media (min-width: 981px) and (min-height: 720px) { .wmm-bok-przyklejony { position: sticky; top: 92px; } .admin-bar .wmm-bok-przyklejony { top: 124px; } }
@media (min-width: 768px) and (max-width: 980px) { .wmm-wpis-bok { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; align-items: start; } .wmm-wpis-bok > * + * { margin-top: 0; } }
@media (max-width: 980px) { .wmm-wpis-bok { margin-top: 16px; } }

/* Treść wpisu: listy, cytaty, tabele, obrazki (krój, rozmiary i kolory w opcjach modułu Treść wpisu) */
.wmm-tresc h2, .wmm-tresc h3, .wmm-tresc h4 { margin-top: 1.4em; padding-bottom: .45em; text-wrap: balance; }
.wmm-tresc > :first-child { margin-top: 0; }
.wmm-tresc p { padding-bottom: 1.1em; }
.wmm-tresc strong { color: #1e3140; font-weight: 600; }
.wmm-tresc a { text-underline-offset: 3px; }
.wmm-tresc ul:not([class]) { padding: 0 0 1.1em; list-style: none; }
.wmm-tresc ul:not([class]) > li { position: relative; margin-bottom: 6px; padding-left: 24px; list-style: none; }
.wmm-tresc ul:not([class]) > li::before { content: ""; position: absolute; left: 6px; top: .78em; width: 7px; height: 7px; border-radius: 50%; background: #1496d2; }
.wmm-tresc ol:not([class]) { padding: 0 0 1.1em 1.4em; }
.wmm-tresc ol:not([class]) > li { margin-bottom: 6px; padding-left: 4px; }
.wmm-tresc ol:not([class]) > li::marker { color: #0b6fa3; font-weight: 700; }
.wmm-tresc img { height: auto; border-radius: 10px; }
.wmm-tresc figure, .wmm-tresc .wp-caption { max-width: 100%; margin: 28px 0; }
.wmm-tresc figcaption, .wmm-tresc .wp-caption-text { margin-top: 8px; font-size: 13px; color: #5f7383; text-align: center; }
/* Cytaty: tło i zaokrąglenie zamiast paska z boku (od 22.10 także opis produktu, moduł Opis WooCommerce) */
.wmm-tresc blockquote { margin: 28px 0; padding: 22px 24px; border: 0 !important; border-radius: 10px; background: #eef3f6; }
.wmm-tresc blockquote::before { content: "\201C"; display: block; height: 30px; margin-bottom: 4px; font: 700 56px/1 'Poppins', sans-serif; color: #1496d2; }
.wmm-tresc hr { height: 1px; margin: 32px 0; border: 0; background: #dbe3ea; }
.wmm-tresc iframe, .wmm-tresc video { max-width: 100%; border-radius: 10px; }
.wmm-tresc table th { background: #29495e; color: #fff; font-weight: 600; text-align: left; }
.wmm-tresc table th, .wmm-tresc table td { padding: 10px 14px; border: 0; border-bottom: 1px solid #dbe3ea; font-size: 15px; line-height: 1.5; vertical-align: top; }
.wmm-tresc table tr:last-child td { border-bottom: 0; }
/* Ramki z paskiem z jednego boku w treściach wpisów: tło i zaokrąglenie zostają, pasek nie (tylko wyświetlanie, treść w bazie bez zmian) */
.wmm-tresc [style*="border-left"] { border-left: 0 !important; border-radius: 10px !important; }
/* Wyjustowane akapity we wpisach: justowanie z treści Bartka także na telefonie (blokada z 20.10 zdjęta 25.10) */
/* Menu na telefonie: kategorie (Recenzje butów) są już kafelkami nad listą, link z menu WordPressa ukryty, na komputerze bez zmian (25.10) */
.wmmp-szuflada .menu-item-object-category { display: none; }
/* Zajawka w nagłówku wpisu wyjustowana jak treść (25.10) */
.wmmp-wpis-glowa__zajawka { text-align: justify; text-justify: inter-word; }

/* Karta „postaw kawę” pod treścią */
.wmm-wpis-kawa { overflow: hidden; box-shadow: 0 18px 40px -24px rgba(30, 49, 64, .45); }
.wmm-wpis-kawa__tekst { align-self: center; padding: clamp(22px, 3.5vw, 34px); }
.wmm-sec .wmm-wpis-kawa__tekst > * { margin-top: 0; }
.wmm-wpis-kawa__tekst h2 { margin: 0; padding: 0; }
.wmm-wpis-kawa__obraz, .wmm-wpis-kawa__obraz .et_pb_image_wrap { height: 100%; margin: 0 !important; }
.wmm-wpis-kawa__obraz img { width: 100%; height: 100%; min-height: 220px; object-fit: cover; object-position: 60% 25%; }
@media (max-width: 767px) { .wmm-wpis-kawa__obraz { order: -1; } .wmm-wpis-kawa__obraz img { min-height: 0; aspect-ratio: 16 / 9; } }

/* Ramka autora: zdjęcie, pod nim profile po dwa w rzędzie (na telefonie profile obok zdjęcia) */
.wmm-autor__obraz img { width: 132px; aspect-ratio: 4 / 5; object-fit: cover; object-position: 50% 40%; border-radius: 10px; }
.wmm-autor__profile .wmmp-social--kafle { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; width: 132px; }
.wmm-autor__profile .wmmp-social--kafle a { width: auto; }
.wmm-autor__etykieta p { font-size: 13px; font-weight: 600; color: #0b6fa3; }
.wmm-autor__imie h2 { margin: 0; padding: 0; }
.wmm-sec .wmm-autor__btn { margin-top: 6px; }
@media (max-width: 767px) {
	.wmm-autor__lewa { flex-direction: row !important; align-items: center !important; column-gap: 16px; }
	.wmm-autor__obraz img { width: 104px; }
	.wmm-autor__profile .wmmp-social--kafle { width: 96px; }
}

/* ---------- Archiwum: kategoria, blog, wyniki wyszukiwania ---------- */
.wmm-arch-glowna { min-width: 0; }
/* Najchętniej czytane w kolumnie bocznej (wpis i archiwum): jedna kolumna, mniejsze numery */
.wmm-wpis-bok .wmmp-ranking { grid-template-columns: minmax(0, 1fr); }
.wmm-wpis-bok .wmmp-ranking a { grid-template-columns: 26px 52px minmax(0, 1fr); gap: 12px; padding: 10px 0; }
.wmm-wpis-bok .wmmp-ranking a::before { font-size: 24px; }
.wmm-wpis-bok .wmmp-ranking .wmmp-okladka { width: 52px; }
.wmm-wpis-bok .wmmp-ranking b { font-size: 14px; }
.wmm-wpis-bok .wmmp-ranking li:last-child { border-bottom: 0; }

/* ---------- Nagłówki stron na granacie (Kontakt, Sklep) i strona Kontakt ---------- */
.wmm-kontakt-h1 h1 { margin: 0; padding: 0; }
.wmm-kontakt-wstep { max-width: 62ch; }
/* Divi daje modułom w kolumnie pełnej szerokości margines 2,75% szerokości (selektor mocniejszy niż .wmm-sec .et_pb_module) */
.wmm-s-arch-glowa .et_pb_column.et_block_column .et_pb_module { margin-bottom: 0; }
.wmm-hero-etykieta p { font-size: 13px; font-weight: 600; color: #2ea3f2; }
.wmm-sec .wmm-hero-etykieta + * { margin-top: 6px; }
.wmm-hero-wstep { max-width: 72ch; }
.wmm-kontakt__tytul h2 { margin: 0; padding: 0; }
.wmm-kontakt__lewa > .wmm-kontakt__tytul:not(:first-child) { margin-top: 36px; }
.wmm-kontakt__lewa .wmmp-liczby { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.wmm-kontakt__lewa > .wmm-kontakt__faq { margin-top: 36px; }
/* Tablet i telefon: na stronie Kontakt formularz na górze (na stronie głównej sekcja bez zmian) */
@media (max-width: 980px) { .wmm-kontakt__lewa + .wmm-kontakt__form { order: -1; } }

/* ---------- Podstrony O mnie i Współpraca ---------- */
.wmm-sec .wmm-hero-przyciski { margin-top: 26px; }
@media (max-width: 980px) { .wmm-strona-glowa__foto { max-width: 380px; } }
.wmm-sekcja-wstep { max-width: 72ch; }
.wmm-sec .wmm-sekcja-wstep + *, .wmm-sec .wmm-sekcja-tytul + .wmm-karty, .wmm-sec .wmm-sekcja-tytul + .wmm-zrzuty { margin-top: 32px; }
.wmm-sekcja-tytul h2 { margin: 0; padding: 0; }
.wmm-karta h3 { margin: 0; padding: 0; }
.wmm-karta p { font-size: 15px; line-height: 1.65; }
.wmm-karta { box-shadow: 0 18px 40px -30px rgba(30, 49, 64, .45); }
.wmm-karty--papier > .wmm-karta { background-color: #f3f6f9 !important; box-shadow: none; }
/* Seria WMM na granacie: białe logotypy z panelu maratonów */
.wmm-seria__karta { padding: 22px; border: 1px solid rgba(255, 255, 255, .14); border-radius: 10px; background: rgba(255, 255, 255, .04); }
.wmm-seria__logo img { width: auto; max-width: 100%; height: 56px; object-fit: contain; filter: brightness(0) invert(1); }
.wmm-seria__karta a { color: #fff; text-decoration: none; }
.wmm-seria__karta a:hover { text-decoration: underline; }
.wmm-sec .wmm-seria__koniec { max-width: 72ch; margin-top: 28px; }
/* Zasięgi na granacie: kafelki z panelu (Liczby, grupa „statystyki”) */
.wmm-s-zasiegi .wmmp-liczby { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.wmm-s-zasiegi .wmmp-liczba { padding: 18px 20px; border: 0; background: rgba(255, 255, 255, .08); color: #fff; }
.wmm-s-zasiegi .wmmp-liczba b { font-size: clamp(24px, 2.6vw, 34px); }
.wmm-s-zasiegi .wmmp-liczba small { font-size: 13px; color: #c9d6df; }
.wmm-s-zasiegi .wmmp-liczba .wmmp-ikona { color: #2ea3f2; }
@media (max-width: 767px) { .wmm-s-zasiegi .wmmp-liczby { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* Zrzuty statystyk */
.wmm-zrzut__obraz img { width: 100%; border-radius: 10px; background: #fff; box-shadow: 0 18px 40px -26px rgba(30, 49, 64, .45); }
.wmm-zrzut__podpis p { font-size: 13px; font-weight: 600; color: #5f7383; }
.wmm-sec .wmm-starty { margin-top: 28px; }
.wmm-spolecznosc__koniec p { font-size: 17px; color: #1e3140; }

/* ---------- Produkt (moduły WooCommerce Divi; kroje i kolory tekstu w opcjach modułów) ---------- */
.wmm-produkt__okruszki, .wmm-produkt__okruszki a { color: #c9d6df !important; font-size: 13px; }
.wmm-produkt__okruszki a:hover { color: #fff !important; }
.wmm-produkt__tytul h1 { margin: 0; padding: 0; text-wrap: balance; }
.wmm-produkt__wstep p:last-child { padding-bottom: 0; }
.wmm-produkt__cena del { margin-right: 8px; font-size: .55em; font-weight: 500; opacity: .55; }
.wmm-produkt__cena ins { text-decoration: none; }
/* Dodaj do koszyka: wybór wersji i przycisk */
.wmm-produkt__koszyk table.variations { margin: 0 0 12px; border: 0; }
.wmm-produkt__koszyk table.variations th, .wmm-produkt__koszyk table.variations td { display: block; padding: 0 0 6px; border: 0; text-align: left; }
.wmm-produkt__koszyk label { font-size: 13px; font-weight: 600; text-transform: none; letter-spacing: 0; }
.wmm-s-produkt-glowa .wmm-produkt__koszyk label, .wmm-s-produkt-glowa .wmm-produkt__koszyk .reset_variations, .wmm-s-produkt-glowa .woocommerce-variation-price { color: #c9d6df; }
/* Lista wyboru wersji: biała z własną strzałką (Divi dawał szare tło i drugą strzałkę) */
#page-container .wmm-produkt__koszyk table.variations select { -webkit-appearance: none; appearance: none; width: 100%; max-width: 420px; height: 48px; padding: 0 44px 0 14px; border: 1px solid #dbe3ea; border-radius: 10px; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2329495e' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center / 16px; color: #1e3140; font: 500 15px 'Poppins', sans-serif; }
/* Divi dokłada trójkąt w span:after wokół listy (skryptem), przy własnej strzałce zbędny */
.wmm-produkt__koszyk table.variations td.value span::after { display: none !important; }
.wc-price-history { font-size: 12px; line-height: 1.4; }
.wmm-s-produkt-glowa .wc-price-history { color: #9fb3c2; }
.wmm-produkt__koszyk .reset_variations { margin-left: 8px; font-size: 12px; }
.wmm-produkt__koszyk .quantity { display: none !important; }
/* Zdjęcie produktu i plakietka promocji */
.wmm-produkt__obraz img { border-radius: 10px; box-shadow: 0 30px 60px -28px rgba(0, 0, 0, .65); }
/* Plakietka promocji: kolor przycisków zamiast pomarańczu z ustawień WooCommerce motywu (#ef8f61 z !important) */
#page-container span.onsale { top: 14px !important; left: 14px !important; padding: 5px 12px !important; border: 0 !important; border-radius: 8px !important; background: #0b6fa3 !important; color: #fff !important; font: 600 13px/1.4 'Poppins', sans-serif !important; letter-spacing: 0; text-transform: none; }
@media (max-width: 980px) { .wmm-produkt__prawa { order: -1; max-width: 420px; } }
/* Treść i karta zakupu pod nią */
.wmm-produkt__tresc > * + * { margin-top: 40px; }
.wmm-produkt__cta h2 { margin: 0; padding: 0; }
.wmm-sec .wmm-produkt__cta > * { margin-top: 0; }
/* Inne produkty ([wmm_inne_produkty]): karty z miniaturą, rodzajem, nazwą i ceną */
.wmm-inne { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; margin: 0 !important; padding: 0 !important; list-style: none !important; }
.wmm-inne li { margin: 0; padding: 0; list-style: none !important; }
.wmm-inne__karta { display: flex; flex-direction: column; height: 100%; overflow: hidden; border-radius: 10px; background: #fff; color: #1e3140 !important; text-decoration: none !important; box-shadow: 0 18px 40px -28px rgba(30, 49, 64, .5); transition: transform .15s, box-shadow .15s; }
.wmm-inne__karta:hover { transform: translateY(-3px); box-shadow: 0 24px 46px -26px rgba(30, 49, 64, .55); }
.wmm-inne__obraz img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; }
.wmm-inne__tresc { display: flex; flex: 1; flex-direction: column; align-items: flex-start; gap: 8px; padding: 16px 18px 18px; }
.wmm-inne__tresc b { font-size: 15px; font-weight: 600; line-height: 1.35; }
.wmm-inne__cena { margin-top: auto; padding-top: 4px; font-size: 18px; font-weight: 700; color: #0b6fa3; }
.wmm-inne__cena del { margin-right: 4px; font-size: .75em; font-weight: 500; color: #5f7383; }
.wmm-inne__cena ins { text-decoration: none; }
.wmm-inne__wycena { font-size: 15px; }
.wmm-inne__cena .wc-price-history { display: block; margin-top: 4px; font-size: 11px; font-weight: 400; line-height: 1.4; color: #5f7383; }
@media (max-width: 980px) { .wmm-inne { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px) { .wmm-inne { gap: 12px; } .wmm-inne__tresc { padding: 12px 12px 14px; } .wmm-inne__tresc b { font-size: 14px; } }
.wmm-sec .wmm-sekcja-tytul + .wmm-produkt__inne { margin-top: 24px; }

/* ---------- Sklep, produkty, FAQ (22.10) ---------- */
/* Kotwice (#ebooki, #pakiety, tematy FAQ): sekcja nie chowa się pod przyklejonym nagłówkiem */
.wmm-sec[id] { scroll-margin-top: 88px; }
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }

/* Przełącznik waluty ([wmm_waluta]): kody walut w jednym przełączniku; na granacie domyślnie, na jasnym tle wmm-waluta--jasna */
.wmm-waluta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; }
.wmm-waluta__etykieta { font-size: 13px; font-weight: 600; line-height: 1.3; color: #c9d6df; }
.wmm-waluta .wcml_currency_switcher { margin: 0; }
.wmm-waluta ul { display: inline-flex; gap: 4px; margin: 0 !important; padding: 4px !important; border: 1px solid rgba(255, 255, 255, .22); border-radius: 10px; background: rgba(255, 255, 255, .06); list-style: none !important; }
.wmm-waluta li { margin: 0 !important; padding: 0 !important; list-style: none !important; }
.wmm-waluta li > button, .wmm-waluta li > a { display: block; min-width: 50px; min-height: 34px; padding: 6px 10px !important; border: 0 !important; border-radius: 7px !important; background: transparent !important; color: #c9d6df !important; font: 600 13px/1.6 'Poppins', sans-serif !important; letter-spacing: .03em; text-align: center; text-decoration: none; cursor: pointer; transition: background-color .15s, color .15s; }
.wmm-waluta li > button:hover, .wmm-waluta li > a:hover { background: rgba(255, 255, 255, .14) !important; color: #fff !important; }
.wmm-waluta li > button:focus-visible, .wmm-waluta li > a:focus-visible { outline: 2px solid #2ea3f2; outline-offset: 2px; }
.wmm-waluta .wcml-cs-active-currency > button, .wmm-waluta .wcml-cs-active-currency > a { background: #fff !important; color: #1e3140 !important; cursor: default; }
.wmm-waluta--jasna .wmm-waluta__etykieta { color: #5f7383; }
.wmm-waluta--jasna ul { border-color: #dbe3ea; background: #fff; }
.wmm-waluta--jasna li > button, .wmm-waluta--jasna li > a { color: #29495e !important; }
.wmm-waluta--jasna li > button:hover, .wmm-waluta--jasna li > a:hover { background: #e6edf2 !important; color: #1e3140 !important; }
.wmm-waluta--jasna .wcml-cs-active-currency > button, .wmm-waluta--jasna .wcml-cs-active-currency > a { background: #29495e !important; color: #fff !important; }
@media (max-width: 767px) { .wmm-waluta ul { display: flex; width: 100%; } .wmm-waluta li { flex: 1; } .wmm-waluta__etykieta { width: 100%; } }

/* Ceny z WooCommerce w kartach ([wmm_cena]): promocja jako przekreślona cena obok, historia cen (Omnibus) drobnym drukiem */
.wmm-cena .wmm-cena__kwota { margin: 0; padding: 0; font-size: 28px; font-weight: 700; line-height: 1.15; color: #1e3140; }
.wmm-cena del { margin-right: 6px; font-size: .55em; font-weight: 500; color: #5f7383; }
.wmm-cena ins { text-decoration: none; }
.wmm-cena .wc-price-history, .wmm-cena small { display: block; margin-top: 4px; font-size: 11px; font-weight: 400; line-height: 1.4; color: #5f7383; }

/* Nagłówek sklepu i FAQ: skróty do modułów (kotwice) i waluta po prawej */
.wmm-sklep-glowa__prawa > * + * { margin-top: 18px; }
.wmm-skroty__lista { display: grid; gap: 10px; }
.wmm-skrot { display: flex; align-items: center; gap: 14px; padding: 14px 16px; border: 1px solid rgba(255, 255, 255, .14); border-radius: 10px; background: rgba(255, 255, 255, .05); color: #fff !important; text-decoration: none !important; transition: background-color .15s, border-color .15s; }
.wmm-skrot:hover, .wmm-skrot:focus-visible { border-color: rgba(255, 255, 255, .4); background: rgba(255, 255, 255, .1); }
.wmm-skrot__nr { flex: none; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 10px; background: #0b6fa3; font-size: 14px; font-weight: 700; }
.wmm-skrot__tekst { display: flex; flex: 1; flex-direction: column; min-width: 0; line-height: 1.35; }
.wmm-skrot__tekst b { font-size: 16px; font-weight: 600; color: #fff; }
.wmm-skrot__tekst span { font-size: 13px; color: #c9d6df; }
.wmm-skrot svg { flex: none; color: #2ea3f2; transition: transform .15s; }
.wmm-skrot:hover svg { transform: translateY(2px); }

/* Moduły sklepu (E-booki, Pakiety) i grupy FAQ: etykieta z numerem nad tytułem */
.wmm-sklep-etykieta p { display: inline-flex; align-items: center; gap: 10px; margin: 0; font-size: 13px; font-weight: 600; color: #0b6fa3; }
.wmm-sklep-etykieta__nr { display: inline-grid; place-items: center; min-width: 30px; height: 30px; padding: 0 6px; border-radius: 8px; background: #29495e; color: #fff; }
.wmm-s-sklep-modul + .wmm-s-sklep-modul { border-top: 1px solid #dbe3ea; }
.wmm-pill--jasny { background: rgba(255, 255, 255, .12); color: #fff; }

/* Pytania przed zakupem (sklep): przyciski po prawej, drugi z obrysem */
.wmm-sklep-pytania h2 { margin: 0; padding: 0; }
.wmm-sklep-pytania__prawa { display: flex; justify-content: flex-end; }
@media (max-width: 980px) { .wmm-sklep-pytania__prawa { justify-content: flex-start; } }
@media (max-width: 767px) { .wmm-sklep-pytania__przyciski { width: 100%; } }
/* Preset przycisku białego ma kolor z !important i selektorem z #page-container: tu mocniejszy selektor */
#page-container .et_pb_section .et_pb_button.wmm-btn--obrys { border: 1px solid rgba(255, 255, 255, .6) !important; background: transparent !important; color: #fff !important; }
#page-container .et_pb_section .et_pb_button.wmm-btn--obrys:hover { border-color: #fff !important; background: rgba(255, 255, 255, .1) !important; color: #fff !important; }

/* Produkt: cena z walutą w jednym wierszu, karta zakupu z linkiem do modułu sklepu */
.wmm-produkt__rodzaj p { margin: 0; }
.wmm-sec .wmm-produkt__rodzaj + * { margin-top: 10px; }
.wmm-produkt__cena-wiersz { padding: 14px 0; border-top: 1px solid rgba(255, 255, 255, .12); border-bottom: 1px solid rgba(255, 255, 255, .12); }
.wmm-produkt__cena-wiersz .wmm-produkt__cena { margin: 0 !important; }
.wmm-produkt__cta .wmm-link-wiecej { padding-top: 4px; }
/* Zajrzyj do środka: flipbook dFlip z produktu w ramce okna przeglądarki; bez flipbooka sekcja się nie wyświetla */
.wmm-s-podglad:not(:has(.wmm-przegladarka)) { display: none; }
.wmm-podglad__glowa { align-items: center !important; text-align: center; }
.wmm-podglad__glowa .wmm-sekcja-wstep { margin-inline: auto; }
.wmm-sec .wmm-podglad > .wmm-podglad__okno { margin-top: 32px; }
.wmm-przegladarka { max-width: 1120px; margin: 0 auto; overflow: hidden; border: 1px solid #dbe3ea; border-radius: 10px; background: #fff; box-shadow: 0 34px 70px -42px rgba(30, 49, 64, .6); }
.wmm-przegladarka__pasek { display: flex; align-items: center; gap: 16px; padding: 11px 16px; border-bottom: 1px solid #dbe3ea; background: #eef3f6; }
.wmm-przegladarka__kropki { display: flex; flex: none; gap: 7px; }
.wmm-przegladarka__kropki i { width: 11px; height: 11px; border-radius: 50%; background: #f0776c; }
.wmm-przegladarka__kropki i:nth-child(2) { background: #f3c15b; }
.wmm-przegladarka__kropki i:nth-child(3) { background: #6cc36f; }
.wmm-przegladarka__adres { flex: 1; max-width: 520px; margin: 0 auto; padding: 5px 14px; overflow: hidden; border-radius: 7px; background: #fff; color: #5f7383; font-size: 13px; line-height: 1.5; text-align: center; white-space: nowrap; text-overflow: ellipsis; }
.wmm-przegladarka__pasek::after { content: ""; flex: none; width: 47px; }
.wmm-przegladarka__okno { padding: clamp(10px, 2.5vw, 28px); background: linear-gradient(180deg, #f3f6f9, #e6edf2); }
@media (max-width: 767px) { .wmm-przegladarka__pasek::after { display: none; } }

/* Koszyk i zamówienie: nagłówek z krokami zakupu i walutą, przyciski WooCommerce jak w całej stronie */
.wmm-hero-etykieta a { color: inherit; text-decoration: none; }
.wmm-hero-etykieta a:hover { text-decoration: underline; }
/* Kroki na środku nagłówka, waluta przy prawej krawędzi (na tablecie i telefonie pod tytułem, kroki dalej na środku) */
.wmm-koszyk-glowa__srodek { display: flex; justify-content: center; }
@media (min-width: 981px) { .wmm-koszyk-glowa__prawa .wmm-waluta { justify-content: flex-end; } }
.wmm-kroki__lista { justify-content: center; display: flex; flex-wrap: wrap; gap: 8px; margin: 0 !important; padding: 0 !important; list-style: none !important; }
.wmm-kroki__krok { display: flex; margin: 0; padding: 0; list-style: none !important; }
.wmm-kroki__etap { display: inline-flex; align-items: center; gap: 8px; padding: 5px 14px 5px 5px; border: 1px solid rgba(255, 255, 255, .18); border-radius: 10px; color: #c9d6df !important; font-size: 14px; font-weight: 600; line-height: 1.4; text-decoration: none !important; }
.wmm-kroki__nr { display: inline-grid; place-items: center; width: 26px; height: 26px; border-radius: 7px; background: rgba(255, 255, 255, .1); font-size: 13px; }
.wmm-kroki__krok.is-teraz .wmm-kroki__etap { border-color: #fff; background: #fff; color: #1e3140 !important; }
.wmm-kroki__krok.is-teraz .wmm-kroki__nr { background: #0b6fa3; color: #fff; }
.wmm-kroki__krok.is-zrobione .wmm-kroki__nr { background: #2ea3f2; color: #fff; }
a.wmm-kroki__etap:hover { border-color: rgba(255, 255, 255, .5); color: #fff !important; }
/* Moduły WooCommerce ze starych układów: pod nagłówkiem, bez nachodzenia na niego (stary układ miał ujemny margines) */
@media (max-width: 767px) { .wmm-kroki__lista { gap: 6px; } .wmm-kroki__etap { padding-right: 10px; font-size: 13px; } }
.wmm-koszyk__komunikat:empty { display: none; }

/* FAQ: temat przyklejony przy przewijaniu, karty e-booków i kontaktu */
@media (min-width: 981px) { .wmm-faq-grupa__glowa { position: sticky; top: 96px; } }
.wmm-faq-row .wmm-faq .et_pb_toggle:first-child { border-top: 1px solid #dbe3ea; }
.wmm-faq-karta { display: flex; flex-direction: column; }
.wmm-faq-karta h2 { margin: 0; padding: 0; }
.wmm-sec .wmm-faq-karta > * + * { margin-top: 12px; }
.wmm-sec .wmm-faq-karta > .et_pb_button_module_wrapper { margin-top: auto; padding-top: 18px; }
.wmm-faq-karta--gradient { background-image: linear-gradient(120deg, #0b6fa3, #29495e); }

/* ---------- Przyciski WooCommerce (produkt, koszyk, zamówienie), 22.10 ----------
   Ustawienia WooCommerce w motywie dawały małe przyciski z wielkimi literami, strzałką po najechaniu i zmianą odstępów
   (przycisk „skakał”). Jeden wygląd jak przyciski Divi WMM: stałe odstępy, bez ikony, zmienia się tylko kolor. */
#page-container .woocommerce .button, #page-container .woocommerce button.button, #page-container .woocommerce a.button, #page-container .woocommerce input.button,
#page-container #place_order, #page-container .wmm-s-koszyk .button, #page-container .single_add_to_cart_button, #page-container .checkout-button {
	display: inline-flex !important; align-items: center; justify-content: center; min-height: 48px; margin: 0; padding: 12px 26px !important; border: 0 !important; border-radius: 10px !important;
	background: #0b6fa3 !important; color: #fff !important; font: 600 15px/1.3 'Poppins', sans-serif !important; letter-spacing: 0 !important; text-transform: none !important; text-decoration: none !important;
	box-shadow: none !important; transition: background-color .15s, color .15s; cursor: pointer;
}
#page-container .woocommerce .button:hover, #page-container .woocommerce button.button:hover, #page-container .woocommerce a.button:hover, #page-container .woocommerce input.button:hover,
#page-container #place_order, #page-container .wmm-s-koszyk .button:hover, #page-container .single_add_to_cart_button:hover, #page-container .checkout-button:hover {
	padding: 12px 26px !important; border: 0 !important; background: #29495e !important; color: #fff !important; letter-spacing: 0 !important;
}
#page-container .woocommerce .button::after, #page-container .woocommerce .button::before, #page-container #place_order, #page-container .wmm-s-koszyk .button::after, #page-container .single_add_to_cart_button::after, #page-container .checkout-button::after { display: none !important; content: none !important; }
#page-container .woocommerce .button.disabled, #page-container .woocommerce .button:disabled, #page-container .wmm-s-koszyk .button:disabled, #page-container .woocommerce button.button:disabled[disabled] { opacity: .45 !important; cursor: not-allowed; }
/* Moduły WooCommerce Divi mają własne reguły przycisków z !important (ikona i odstępy po najechaniu): mocniejszy selektor */
html body #page-container .et_pb_section .et_pb_module .button, html body #page-container .et_pb_section .et_pb_module .button:hover { padding: 12px 26px !important; border: 0 !important; letter-spacing: 0 !important; }
html body #page-container .et_pb_section .et_pb_module .button::after, html body #page-container .et_pb_section .et_pb_module .button:hover::after,
html body #page-container .et_pb_section .et_pb_module .button::before, html body #page-container .et_pb_section .et_pb_module .button:hover::before { display: none !important; content: none !important; opacity: 0 !important; }
/* Na granacie (nagłówek produktu): po najechaniu biały */
#page-container .wmm-s-produkt-glowa .single_add_to_cart_button:not(.disabled):hover { background: #fff !important; color: #1e3140 !important; }
/* Drugorzędne: kupon i aktualizacja koszyka */
#page-container button[name="apply_coupon"], #page-container button[name="update_cart"] { background: #29495e !important; }
#page-container button[name="apply_coupon"]:hover, #page-container button[name="update_cart"]:not(:disabled):hover { background: #1e3140 !important; }
@media (max-width: 767px) { #page-container .woocommerce .button, #page-container #place_order, #page-container .wmm-s-koszyk .button, #page-container .single_add_to_cart_button, #page-container .checkout-button { width: 100%; } }

/* Ultra Marathon (wycena indywidualna): zamiast ceny napis i przycisk do formularza zapytania */
.wmm-produkt__wycena p { margin: 0; padding: 0; color: #fff; font-size: clamp(24px, 2.6vw, 30px); font-weight: 700; line-height: 1.2; }
.wmm-zapytanie__tekst .wmm-link-wiecej { margin-top: 6px; }
/* Karta zakupu produktu: cena i waluta w jednym wierszu na jasnym tle */
.wmm-produkt__cena-wiersz--jasny { border-color: #dbe3ea; }
/* Udostępnianie w nagłówku produktu (na granacie) */
.wmm-produkt__udostepnij .wmmp-udostepnij { padding: 14px 0 0; border: 0; }
.wmm-s-produkt-glowa .wmmp-udostepnij__tytul { color: #c9d6df; font-size: 14px; }
.wmm-s-produkt-glowa .wmmp-udostepnij__btn { border-color: rgba(255, 255, 255, .2); background: transparent; color: #fff; }
.wmm-s-produkt-glowa .wmmp-udostepnij__btn:hover, .wmm-s-produkt-glowa .wmmp-udostepnij__btn:focus-visible { border-color: #fff; background: #fff; color: #1e3140; }
.wmm-s-produkt-glowa .wmmp-udostepnij__komunikat { color: #2ea3f2; }

/* ---------- Koszyk i zamówienie: karty, tabele, pola ---------- */
.wmm-karta-koszyka { box-shadow: 0 18px 40px -30px rgba(30, 49, 64, .45); }
@media (min-width: 981px) { .wmm-koszyk__suma { position: sticky; top: 96px; } }
.wmm-row-komunikaty .woocommerce-message, .wmm-row-komunikaty .woocommerce-info, .wmm-row-komunikaty .woocommerce-error { margin: 0 0 20px !important; padding: 14px 18px !important; border: 0 !important; border-radius: 10px !important; background: #fff !important; color: #1e3140 !important; font: 500 15px/1.5 'Poppins', sans-serif !important; box-shadow: 0 18px 40px -30px rgba(30, 49, 64, .45); }
.wmm-row-komunikaty .woocommerce-message::before, .wmm-row-komunikaty .woocommerce-info::before { color: #0b6fa3 !important; }
.wmm-row-komunikaty .woocommerce-error { color: #b42318 !important; }
.wmm-row-komunikaty .woocommerce-info a, .wmm-row-komunikaty .woocommerce-message a:not(.button) { color: #0b6fa3; font-weight: 600; }
.wmm-s-koszyk h2, .wmm-s-koszyk h3 { margin: 0 0 16px; padding: 0; color: #1e3140; font: 700 20px/1.3 'Poppins', sans-serif; text-transform: none; letter-spacing: 0; }
/* Tabele (produkty w koszyku, podsumowanie, Twoje zamówienie) */
.wmm-s-koszyk table.shop_table { width: 100%; margin: 0 !important; border: 0 !important; border-collapse: collapse; border-radius: 0 !important; background: transparent; font: 400 15px/1.5 'Poppins', sans-serif; color: #22323f; }
.wmm-s-koszyk table.shop_table th, .wmm-s-koszyk table.shop_table td { padding: 14px 10px !important; border: 0 !important; border-bottom: 1px solid #dbe3ea !important; background: transparent !important; vertical-align: middle; text-align: left; }
.wmm-s-koszyk table.shop_table thead th { padding-top: 0 !important; color: #5f7383; font-size: 13px; font-weight: 600; text-transform: none; letter-spacing: 0; }
.wmm-s-koszyk table.shop_table tr:last-child > *, .wmm-s-koszyk table.shop_table tfoot tr:last-child > * { border-bottom: 0 !important; }
.wmm-s-koszyk table.shop_table th:first-child, .wmm-s-koszyk table.shop_table td:first-child { padding-left: 0 !important; }
.wmm-s-koszyk table.shop_table th:last-child, .wmm-s-koszyk table.shop_table td:last-child { padding-right: 0 !important; text-align: right; }
.wmm-s-koszyk .cart_totals table.shop_table th { color: #5f7383; font-size: 14px; font-weight: 500; text-transform: none; letter-spacing: 0; }
.wmm-s-koszyk .order-total th, .wmm-s-koszyk .order-total td, .wmm-s-koszyk .order-total .amount { color: #1e3140 !important; font-size: 18px !important; font-weight: 700 !important; }
.wmm-s-koszyk td.product-name, .wmm-s-koszyk td.product-name a { color: #1e3140; font-weight: 600; text-decoration: none; }
.wmm-s-koszyk td.product-name .variation, .wmm-s-koszyk td.product-name dl { margin: 4px 0 0; font-size: 13px; font-weight: 400; color: #5f7383; }
.wmm-s-koszyk td.product-thumbnail, .wmm-s-koszyk th.product-thumbnail { width: 84px; }
/* Koszyk: każdy produkt sprzedawany po jednej sztuce (functions.php motywu potomnego, woocommerce_is_sold_individually),
   więc bez kolumn Ilość i Kwota i bez przycisku aktualizacji; zostaje usuwanie, miniatura, nazwa i cena */
#page-container .wmm-s-koszyk table.cart .product-quantity, #page-container .wmm-s-koszyk table.cart .product-subtotal, #page-container .wmm-s-koszyk button[name="update_cart"] { display: none !important; }
#page-container .wmm-s-koszyk table.shop_table { width: 100% !important; table-layout: auto; }
.wmm-s-koszyk table.cart td.product-name { width: auto; font-size: 16px; line-height: 1.45; }
.wmm-s-koszyk table.cart td.product-price { width: 1%; white-space: nowrap; color: #1e3140; font-weight: 700; text-align: right; }
.wmm-s-koszyk table.cart th.product-price { text-align: right; }
.wmm-s-koszyk table.cart td.product-quantity, .wmm-s-koszyk table.cart th.product-quantity { text-align: center; }
.wmm-s-koszyk td.product-thumbnail img { display: block; width: 64px !important; height: 64px; object-fit: cover; border-radius: 8px; }
.wmm-s-koszyk td.product-remove, .wmm-s-koszyk th.product-remove { width: 44px; }
.wmm-s-koszyk td.product-remove a.remove { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 8px; background: #f3f6f9; color: #5f7383 !important; font-size: 20px; line-height: 1; text-decoration: none; }
.wmm-s-koszyk td.product-remove a.remove:hover { background: #b42318; color: #fff !important; }
.wmm-s-koszyk td.actions { padding-top: 18px !important; }
.wmm-s-koszyk td.actions .coupon { display: flex; flex-wrap: wrap; gap: 10px; float: left; }
.wmm-s-koszyk td.actions > .button { float: right; }
/* Pola formularzy (kupon, dane, uwagi) */
.wmm-s-koszyk input.input-text, .wmm-s-koszyk input[type="text"], .wmm-s-koszyk input[type="email"], .wmm-s-koszyk input[type="tel"], .wmm-s-koszyk select, .wmm-s-koszyk textarea,
.wmm-s-koszyk .select2-container .select2-selection--single {
	min-height: 48px; padding: 11px 14px !important; border: 1px solid #dbe3ea !important; border-radius: 10px !important; background: #fff !important; color: #1e3140 !important; font: 400 15px/1.5 'Poppins', sans-serif !important; box-shadow: none !important;
}
.wmm-s-koszyk textarea { min-height: 110px; }
.wmm-s-koszyk input:focus, .wmm-s-koszyk select:focus, .wmm-s-koszyk textarea:focus, .wmm-s-koszyk .select2-container--focus .select2-selection--single { outline: 2px solid #2ea3f2; outline-offset: 1px; }
.wmm-s-koszyk .select2-container .select2-selection--single { display: flex; align-items: center; padding: 0 14px !important; }
.wmm-s-koszyk .select2-container .select2-selection__rendered { padding: 0 !important; color: #1e3140 !important; line-height: 1.5 !important; }
.wmm-s-koszyk .select2-container .select2-selection__arrow { top: 50% !important; right: 10px !important; transform: translateY(-50%); }
.wmm-s-koszyk td.actions .coupon input.input-text { width: 200px !important; }
.wmm-s-koszyk .form-row { margin: 0 0 14px !important; padding: 0 !important; }
.wmm-s-koszyk .form-row label { margin-bottom: 6px; color: #1e3140; font: 600 14px/1.4 'Poppins', sans-serif; }
.wmm-s-koszyk .form-row .required { color: #b42318; text-decoration: none; }
.wmm-s-koszyk .woocommerce-billing-fields h3, .wmm-s-koszyk .woocommerce-additional-fields h3, .wmm-s-koszyk #order_review_heading { margin: 0 0 16px !important; font-size: 20px !important; }
.wmm-s-koszyk .woocommerce-additional-fields { margin-top: 12px; padding-top: 22px; border-top: 1px solid #dbe3ea; }
/* Płatność (Twoje zamówienie): metody, zgody, przycisk na całą szerokość karty */
#page-container .wmm-s-koszyk #payment { margin-top: 20px; border-radius: 10px !important; background: #f3f6f9 !important; }
.wmm-s-koszyk #payment ul.payment_methods { padding: 18px 18px 6px !important; border: 0 !important; }
.wmm-s-koszyk #payment ul.payment_methods li { color: #1e3140; font: 600 15px/1.5 'Poppins', sans-serif; }
.wmm-s-koszyk #payment div.payment_box { margin: 10px 0 8px !important; padding: 14px 16px !important; border-radius: 10px !important; background: #fff !important; color: #22323f !important; font: 400 13px/1.6 'Poppins', sans-serif !important; }
.wmm-s-koszyk #payment div.payment_box::before { display: none !important; }
.wmm-s-koszyk #payment div.form-row { padding: 6px 18px 18px !important; }
.wmm-s-koszyk .woocommerce-privacy-policy-text p, .wmm-s-koszyk .woocommerce-terms-and-conditions-wrapper p { font-size: 13px; line-height: 1.6; color: #5f7383; }
.wmm-s-koszyk .woocommerce-form__label-for-checkbox { display: flex !important; gap: 10px; align-items: flex-start; font: 500 14px/1.5 'Poppins', sans-serif; color: #1e3140; }
.wmm-s-koszyk .woocommerce-form__label-for-checkbox input { flex: none; margin-top: 4px; }
.wmm-s-koszyk #place_order { float: none !important; width: 100%; margin-top: 8px !important; font-size: 16px !important; }
.wmm-s-koszyk .wc-proceed-to-checkout { padding: 18px 0 0 !important; }
.wmm-s-koszyk .wc-proceed-to-checkout .checkout-button { width: 100%; margin: 0 !important; font-size: 16px !important; }
.wmm-link-wstecz a { gap: 8px; }
/* Telefon: tabela koszyka jako lista */
@media (max-width: 767px) {
	.wmm-s-koszyk table.shop_table_responsive tr td { padding-left: 0 !important; padding-right: 0 !important; text-align: right !important; }
	.wmm-s-koszyk table.shop_table_responsive tr td::before { float: left; color: #5f7383; font-weight: 600; }
	.wmm-s-koszyk td.actions .coupon { float: none; flex-direction: column; width: 100%; }
	.wmm-s-koszyk td.actions .coupon input.input-text { width: 100% !important; }
	.wmm-s-koszyk td.actions > .button { float: none; margin-top: 10px !important; }
	/* Nazwa produktu do lewej, bez etykiety „Produkt:”; cena w wierszu z etykietą */
	#page-container .wmm-s-koszyk table.shop_table_responsive td.product-name { padding-top: 4px !important; font-size: 16px; text-align: left !important; }
	.wmm-s-koszyk table.shop_table_responsive td.product-name::before { display: none; }
	.wmm-s-koszyk table.shop_table_responsive td.product-remove { padding-bottom: 0 !important; border-bottom: 0 !important; text-align: left !important; }
	.wmm-s-koszyk table.cart td.product-price { width: auto; }
}

/* ---------- Przyciski na telefonie: zawsze na całą szerokość (zasada od 2026-10-20, cała strona) ----------
   Jedna reguła dla modułów Przycisk, formularza kontaktowego i przycisków wtyczki WMM Portal zamiast ustawień
   w każdym module i presecie; ikonki i linki tekstowe bez zmian. */
@media (max-width: 767px) {
	.et_pb_button_module_wrapper { width: 100%; }
	/* Divi daje modułowi Przycisk max-width: max-content, stąd wyższa szczegółowość. */
	.et_pb_section .et_pb_button_module_wrapper > .et_pb_button.et_pb_module { display: block; width: 100%; max-width: none; box-sizing: border-box; text-align: center; }
	.wmm-form .et_contact_bottom_container { float: none; display: flex; flex-direction: column; align-items: stretch; gap: 12px; width: 100%; }
	.wmm-form .et_pb_contact_submit { width: 100%; margin-left: 0 !important; }
	.wmmp-btn { width: 100%; }
	.wmm-produkt__koszyk .single_add_to_cart_button, .wmm-produkt__koszyk select { width: 100%; }
}
/* Przycisk „Dodaj do koszyka” ma w module Divi własne odstępy po najechaniu: jeszcze mocniejszy selektor */
html body #page-container .et_pb_section .et_pb_module .single_add_to_cart_button.button.alt, html body #page-container .et_pb_section .et_pb_module .single_add_to_cart_button.button.alt:hover { padding: 12px 26px !important; }
