/* © Red Dot. Projekt i wykonanie: Rekoner Sp. z o.o. Wszelkie prawa zastrzeżone. Kopiowanie, modyfikowanie i rozpowszechnianie bez pisemnej zgody zabronione. */
/* Red Dot Team - moduły (jasny styl). Kolory z motywu, z bezpiecznymi wartościami zapasowymi. */
:root {
	--rdt-tlo: var(--wp--preset--color--tlo, #F4F3EF);
	--rdt-papier: var(--wp--preset--color--papier, #FFFFFF);
	--rdt-kamien: var(--wp--preset--color--kamien, #EAE8E2);
	--rdt-linia: var(--wp--preset--color--linia, #D9D6CE);
	--rdt-szary: var(--wp--preset--color--szary, #5B6066);
	--rdt-tekst: var(--wp--preset--color--grafit, #17191C);
	--rdt-akcent: var(--wp--preset--color--akcent, #3A4930);
	--rdt-akcent-ciemny: var(--wp--preset--color--akcent-ciemny, #2B3723);
	--rdt-akcent-jasny: var(--wp--preset--color--akcent-jasny, #E3E8DA);
	--rdt-kropka: var(--wp--preset--color--czerwien, #D2261A);
	--rdt-naglowki: var(--wp--preset--font-family--naglowki, Arial, sans-serif);
	--rdt-ok: #2F7D4A;
	--rdt-uwaga: #B7791F;
	--rdt-blad: #B42318;
	--rdt-na-akcencie: #FFFFFF;
	--rdt-r: 20px;
	--rdt-cien: 0 20px 40px -24px rgba(23, 25, 28, .35);
}

.rdt-meta { color: var(--rdt-szary); font-size: .875rem; margin: 0; }
.rdt-link { font-weight: 600; text-decoration: none; color: var(--rdt-akcent); }
.rdt-link:hover { text-decoration: underline; }
.rdt-szkolenie__data { color: var(--rdt-akcent-ciemny); }
.rdt-przycisk { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; cursor: pointer; border: 0; white-space: nowrap; }
.rdt-przycisk--kontur { background: transparent !important; color: var(--rdt-tekst) !important; border: 1.5px solid var(--rdt-tekst) !important; }
.rdt-pusto { border: 1px dashed var(--rdt-linia); border-radius: 16px; padding: 1.25rem 1.5rem; color: var(--rdt-szary); background: var(--rdt-papier); }
.rdt-pusto p { margin: 0; }
.rdt-box, .rdt-karta-zapisu, .rdt-pusto, .rdt-podpowiedz, .rdt-cta-sklep, .rdt-komunikat, .rdt-szkolenie, .rdt-zawodnik, .rdt-zaproszenie, .rdt-cookies { box-sizing: border-box; }

/* Komunikaty */
.rdt-komunikat { padding: 1rem 1.25rem; margin: 0 0 1.25rem; border-radius: 14px; border: 1px solid; background: var(--rdt-papier); }
.rdt-komunikat--ok { border-color: var(--rdt-ok); background: var(--rdt-papier); }
.rdt-komunikat--info { border-color: var(--rdt-uwaga); background: var(--rdt-papier); }
.rdt-komunikat--blad { border-color: var(--rdt-blad); background: var(--rdt-papier); }

/* Formularze */
.rdt-form__siatka { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 1.25rem; }
.rdt-form__siatka > p { margin: 0 0 1rem; }
.rdt-form__pelne { grid-column: 1 / -1; }
@media (max-width: 640px) { .rdt-form__siatka { grid-template-columns: 1fr; } }
.rdt-form label, .rdt-form__etykieta { display: block; font-size: .875rem; font-weight: 600; margin-bottom: .4rem; }
.rdt-form label span { font-weight: 400; color: var(--rdt-szary); }
.rdt-form input[type=text], .rdt-form input[type=email], .rdt-form input[type=tel], .rdt-form input[type=number], .rdt-form select, .rdt-form textarea {
	width: 100%; box-sizing: border-box; background: var(--rdt-papier); color: var(--rdt-tekst); border: 1px solid var(--rdt-linia); border-radius: 12px; padding: .8rem .95rem; font: inherit; font-size: 1rem; min-height: 50px; transition: border-color .15s, box-shadow .15s;
}
.rdt-form select { appearance: none; background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%); background-position: calc(100% - 20px) 50%, calc(100% - 15px) 50%; background-size: 5px 5px; background-repeat: no-repeat; padding-right: 2.4rem; }
.rdt-form input:focus, .rdt-form select:focus, .rdt-form textarea:focus { outline: none; border-color: var(--rdt-akcent); box-shadow: 0 0 0 4px var(--rdt-akcent-jasny); }
.rdt-form ::placeholder { color: var(--rdt-szary); opacity: .8; }
.rdt-form__checkboxy { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: .5rem 1rem; }
.rdt-form__checkboxy label, .rdt-form__zgoda label { font-weight: 400; display: flex; gap: .6rem; align-items: flex-start; font-size: .9375rem; }
.rdt-form input[type=checkbox] { width: 20px; height: 20px; accent-color: var(--rdt-akcent); flex: none; margin-top: .15rem; }
.rdt-form__zgoda { color: var(--rdt-szary); }
.rdt-pulapka { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }

/* Lista szkoleń */
.rdt-szkolenia { display: grid; gap: .75rem; }
.rdt-szkolenie { display: grid; grid-template-columns: 84px 1fr auto; gap: 1.25rem; align-items: center; background: var(--rdt-papier); border: 1px solid var(--rdt-linia); border-radius: var(--rdt-r); padding: 1rem 1.25rem; transition: box-shadow .2s, transform .2s; }
.rdt-szkolenie:hover { box-shadow: var(--rdt-cien); transform: translateY(-2px); }
.rdt-szkolenie h3 { margin: 0 0 .25rem; font-size: 1.3rem; }
.rdt-szkolenie h3 a { text-decoration: none; color: var(--rdt-tekst); }
.rdt-szkolenie__data { display: flex; flex-direction: column; align-items: center; justify-content: center; background: var(--rdt-akcent-jasny); color: var(--rdt-akcent-ciemny) !important; text-decoration: none; aspect-ratio: 1; border-radius: 16px; font-family: var(--rdt-naglowki); line-height: 1; }
.rdt-szkolenie__dzien { font-size: 2.1rem; font-weight: 700; letter-spacing: -0.03em; }
.rdt-szkolenie__miesiac { font-size: .8rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; margin-top: .2rem; }
.rdt-szkolenie__akcja { display: flex; flex-direction: column; align-items: flex-end; gap: .6rem; }
@media (max-width: 720px) {
	.rdt-szkolenie { grid-template-columns: 64px 1fr; }
	.rdt-szkolenie__dzien { font-size: 1.6rem; }
	.rdt-szkolenie__akcja { grid-column: 1 / -1; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: .6rem 1rem; }
	.rdt-szkolenie__akcja .rdt-stan { white-space: nowrap; }
	.rdt-szkolenie__akcja .rdt-przycisk { margin-left: auto; }
}
.rdt-stan { font-size: .8125rem; font-weight: 600; display: inline-flex; align-items: center; gap: .45rem; margin: 0; }
.rdt-stan::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--rdt-ok); }
.rdt-stan--malo::before, .rdt-stan--rezerwa::before { background: var(--rdt-uwaga); }
.rdt-stan--zamkniete::before { background: var(--rdt-szary); }

/* Box na stronie szkolenia / zawodnika */
.rdt-box { background: var(--rdt-papier); border: 1px solid var(--rdt-linia); border-radius: var(--rdt-r); padding: 1.5rem; margin: 0 0 2rem; }
.rdt-box dl { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 1rem 1.5rem; margin: 0; }
.rdt-box dt { font-size: .75rem; font-weight: 600; text-transform: uppercase; letter-spacing: .1em; color: var(--rdt-szary); }
.rdt-box dd { margin: .25rem 0 0; font-weight: 600; }
.rdt-box dd a { font-weight: 400; color: var(--rdt-akcent); }
.rdt-box__lista { margin-top: 1.25rem; border-top: 1px solid var(--rdt-linia); padding-top: 1rem; }
.rdt-box__lista ul { margin: .5rem 0 0; padding-left: 1.1rem; }
.rdt-box__akcje { display: flex; flex-wrap: wrap; gap: 1.25rem; align-items: center; margin: 1.5rem 0 0; }
.rdt-box--zawodnik { display: grid; grid-template-columns: minmax(0, 240px) 1fr; gap: 1.5rem; }
.rdt-box--zawodnik:not(:has(.rdt-box__foto)) { grid-template-columns: 1fr; }
.rdt-box__foto img { width: 100%; height: auto; display: block; border-radius: 14px; }
@media (max-width: 640px) { .rdt-box--zawodnik { grid-template-columns: 1fr; } }
.rdt-zapis { margin-top: 3rem; padding-top: 2rem; border-top: 1px solid var(--rdt-linia); scroll-margin-top: 110px; }
.rdt-formularz { scroll-margin-top: 110px; }
.rdt-karta-zapisu { background: var(--rdt-papier); border: 1px solid var(--rdt-linia); border-radius: var(--rdt-r); padding: 1.5rem; }

/* Ludzie */
.rdt-zawodnicy { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 1.25rem; }
.rdt-zawodnik h3 { margin: .15rem 0; font-size: 1.3rem; }
.rdt-zawodnik h3 a { text-decoration: none; color: var(--rdt-tekst); }
.rdt-zawodnik__foto { display: block; aspect-ratio: 4 / 5; overflow: hidden; background: var(--rdt-kamien); margin-bottom: .75rem; position: relative; border-radius: 16px; }
.rdt-zawodnik__foto img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.rdt-zawodnik:hover img { transform: scale(1.04); }
.rdt-inicjaly { position: absolute; inset: 0; display: grid; place-items: center; font-family: var(--rdt-naglowki); font-weight: 700; font-size: 3.5rem; color: var(--rdt-akcent); background: var(--rdt-akcent-jasny); letter-spacing: -0.03em; }
.rdt-zawodnik__rola { color: var(--rdt-akcent); font-weight: 600; text-transform: uppercase; letter-spacing: .08em; font-size: .75rem; }
.rdt-zawodnik__opis { color: var(--rdt-szary); font-size: .9375rem; margin: .5rem 0 .75rem; }
.rdt-zawodnicy.rdt-zawodnicy--opis { grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr)); gap: 1rem; }
.rdt-zawodnicy--opis .rdt-zawodnik { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 1.25rem; align-items: start; background: var(--rdt-papier); border: 1px solid var(--rdt-linia); border-radius: var(--rdt-r); padding: 1rem; }
.rdt-zawodnicy--opis .rdt-zawodnik__foto { margin: 0; border-radius: 12px; }
.rdt-zawodnicy--opis .rdt-inicjaly { font-size: 2.4rem; }
.rdt-social-zawodnika { display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; margin: .75rem 0 0; }
.rdt-zawodnicy--opis .rdt-social-zawodnika { margin-top: 0; font-size: .875rem; }
@media (max-width: 560px) {
	.rdt-zawodnicy, .rdt-produkty { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem .75rem; }
	.rdt-zawodnik h3, .rdt-produkt h3 { font-size: 1.05rem; }
	.rdt-zawodnicy.rdt-zawodnicy--opis { grid-template-columns: 1fr; }
	.rdt-zawodnicy--opis .rdt-zawodnik { grid-template-columns: 96px minmax(0, 1fr); gap: .9rem; }
}
.rdt-cta-profil { margin-top: 2.5rem; padding: 1.5rem; border-radius: var(--rdt-r); background: var(--rdt-akcent-jasny); display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; justify-content: space-between; }
.rdt-cta-profil p { margin: 0; font-family: var(--rdt-naglowki); font-weight: 700; font-size: 1.35rem; letter-spacing: -0.01em; }

/* Tabela wyników */
.rdt-tabela-wrap { overflow-x: auto; background: var(--rdt-papier); border: 1px solid var(--rdt-linia); border-radius: var(--rdt-r); }
.rdt-tabela { width: 100%; border-collapse: collapse; font-size: .9375rem; }
.rdt-tabela th { text-align: left; font-size: .75rem; font-weight: 600; text-transform: uppercase; letter-spacing: .08em; color: var(--rdt-szary); border-bottom: 1px solid var(--rdt-linia); padding: .8rem 1rem; }
.rdt-tabela td { border-bottom: 1px solid var(--rdt-linia); padding: .8rem 1rem; vertical-align: top; }
.rdt-tabela tr:last-child td { border-bottom: 0; }
@media (max-width: 640px) {
	.rdt-tabela thead { display: none; }
	.rdt-tabela tr { display: block; border-bottom: 1px solid var(--rdt-linia); padding: .5rem; }
	.rdt-tabela td { display: flex; justify-content: space-between; gap: 1rem; border: 0; padding: .35rem .5rem; }
	.rdt-tabela td::before { content: attr(data-l); color: var(--rdt-szary); font-size: .8125rem; }
}

/* Produkty */
.rdt-produkty { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 1.25rem; }
.rdt-produkt { display: flex; flex-direction: column; gap: .35rem; }
.rdt-produkt h3 { font-size: 1.15rem; margin: 0; }
.rdt-produkt h3 a { text-decoration: none; color: var(--rdt-tekst); }
.rdt-produkt__foto { display: block; aspect-ratio: 1; background: var(--rdt-papier); border: 1px solid var(--rdt-linia); border-radius: 16px; overflow: hidden; margin-bottom: .6rem; }
.rdt-produkt__foto img { width: 100%; height: 100%; object-fit: contain; transition: transform .3s; }
.rdt-produkt:hover .rdt-produkt__foto img { transform: scale(1.04); }
.rdt-produkt__brak-foto { display: block; width: 100%; height: 100%; background: var(--rdt-kamien); }
.rdt-produkt__cta { margin-top: auto; padding-top: .5rem; }
.rdt-odznaka { align-self: flex-start; background: var(--rdt-akcent-jasny); color: var(--rdt-akcent-ciemny); font-weight: 600; font-size: .75rem; padding: .25rem .6rem; border-radius: 999px; }
.rdt-opinia { margin: .25rem 0; border-left: 2px solid var(--rdt-akcent); padding-left: .75rem; font-size: .875rem; color: var(--rdt-szary); }
.rdt-opinia p { margin: 0; }
.rdt-opinia cite { font-style: normal; font-size: .8125rem; }

/* Podpowiedź setupu */
.rdt-podpowiedz { background: var(--rdt-papier); border: 1px solid var(--rdt-linia); border-radius: var(--rdt-r); padding: 1.25rem 1.5rem; }
.rdt-podpowiedz h3 { margin-top: 0; }
.rdt-podpowiedz ul { list-style: none; padding: 0; margin: 0 0 1rem; display: grid; gap: .5rem; }
.rdt-podpowiedz li { display: flex; justify-content: space-between; gap: 1rem; border-bottom: 1px solid var(--rdt-linia); padding-bottom: .5rem; }
.rdt-podpowiedz li a { font-size: .875rem; }

/* CTA do sklepu pod artykułami */
.rdt-cta-sklep { display: flex; flex-wrap: wrap; gap: 1.25rem; justify-content: space-between; align-items: center; margin: 3rem 0 2rem; padding: 1.5rem; background: var(--rdt-akcent-jasny); border-radius: var(--rdt-r); }
.rdt-cta-sklep h2 { margin: .25rem 0; font-size: 1.5rem; }
.rdt-cta-sklep p { margin: 0; }

/* Kontakt */
.rdt-kontakt { list-style: none; padding: 0; margin: 0; display: grid; gap: .5rem; }
.rdt-administrator { background: var(--rdt-papier); border: 1px solid var(--rdt-linia); border-radius: 16px; padding: 1.1rem 1.35rem; }
.rdt-administrator p { margin: 0; line-height: 1.7; }

/* Build #001 */
.rdt-build { margin-block: 1rem 2.5rem; }
.rdt-build__foto { margin: 0; position: relative; }
.rdt-build__foto img { width: 100%; height: auto; display: block; filter: drop-shadow(0 28px 32px rgba(23, 25, 28, .28)); }
.rdt-build__foto figcaption { font-size: .8rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--rdt-szary); text-align: center; margin-top: .75rem; }
.rdt-build__foto a { display: block; }
.rdt-foto img { border-radius: var(--rdt-r); filter: drop-shadow(0 18px 28px rgba(23, 25, 28, .22)); }
.rdt-spec { margin: 1.25rem 0; }
.rdt-spec table { border-collapse: collapse; width: 100%; font-size: .9375rem; }
.rdt-spec td { border: 0; border-bottom: 1px solid var(--rdt-linia); padding: .75rem .5rem .75rem 0; vertical-align: top; }
.rdt-spec td:first-child { font-size: .75rem; font-weight: 600; text-transform: uppercase; letter-spacing: .08em; color: var(--rdt-akcent); width: 34%; padding-top: .85rem; }
.rdt-spec a { color: var(--rdt-akcent); }
/* Buildy Performance */
.rdt-buildy { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1rem; margin: 1.5rem 0; }
.rdt-build-karta { position: relative; background: var(--rdt-papier); border: 1px solid var(--rdt-linia); border-radius: 20px; overflow: hidden; display: flex; flex-direction: column; transition: transform .25s ease, box-shadow .25s ease; }
.rdt-build-karta:hover { transform: translateY(-3px); box-shadow: 0 20px 40px -24px rgba(23, 25, 28, .35); }
.rdt-build-karta__foto { display: block; aspect-ratio: 4 / 3; background: var(--rdt-kamien); overflow: hidden; }
.rdt-build-karta__foto img { width: 100%; height: 100%; object-fit: cover; display: block; }
.rdt-build-karta--gotowy .rdt-build-karta__foto img[src*="build-001"] { object-fit: contain; padding: 8%; box-sizing: border-box; }
.rdt-build-karta__tresc { padding: 1.1rem 1.35rem 1.25rem; display: flex; flex-direction: column; gap: .35rem; flex: 1; }
.rdt-build-karta__tresc h3 { margin: 0; font-size: 1.2rem; }
.rdt-build-karta__tresc h3 a { text-decoration: none; color: inherit; }
.rdt-build-karta__nr { color: var(--rdt-akcent); font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.rdt-build-karta .rdt-link-karty { margin-top: auto; padding-top: .6rem; font-weight: 600; color: var(--rdt-akcent); text-decoration: none; }
.rdt-build-karta .rdt-link-karty::before { content: ""; position: absolute; inset: 0; }
.rdt-build-naglowek { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 2rem; align-items: center; margin-bottom: 2rem; }
.rdt-build-naglowek .rdt-build__foto img { border-radius: var(--rdt-r); }
.rdt-build-naglowek__nr { color: var(--rdt-akcent); font-weight: 700; letter-spacing: .08em; text-transform: uppercase; font-size: .8rem; margin: 0 0 .5rem; }
.rdt-build-naglowek__meta { display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; margin: 0 0 .75rem; font-size: .95rem; }
.rdt-build-naglowek__meta b { color: var(--rdt-szary); font-weight: 600; margin-right: .25rem; }
.rdt-build-naglowek__dla-kogo { color: var(--rdt-szary); margin: 0 0 1rem; }
.rdt-build-naglowek .rdt-spec { margin: 0; }
@media (max-width: 781px) { .rdt-build-naglowek { grid-template-columns: 1fr; } }
.rdt-build__zawodnik { color: var(--rdt-szary); margin: 1.5rem 0 0; }
.rdt-cta-build__przyciski { display: flex; flex-wrap: wrap; gap: .75rem; justify-content: center; }
.rdt-build__inne-naglowek { margin-top: 3rem; }

/* Galeria buildów (zdjęcia z warsztatu i toru) */
.rdt-galeria.wp-block-gallery { gap: 1rem; }
.rdt-galeria.wp-block-gallery .wp-block-image { margin: 0; }
.rdt-galeria.wp-block-gallery .wp-block-image img { border-radius: var(--rdt-r); aspect-ratio: 4 / 3; object-fit: cover; width: 100%; height: auto; }
.wp-block-gallery.rdt-galeria.has-nested-images figure.wp-block-image figcaption.wp-element-caption { position: static; background: none; color: var(--rdt-szary); font-size: .85rem; padding: .5rem 0 0; text-align: left; margin: 0; max-height: none; text-shadow: none; }
.wp-block-gallery.rdt-galeria.has-nested-images figure.wp-block-image { align-self: flex-start; }

/* 5 kluczowych ulepszeń */
.rdt-ulepszenia { gap: 1rem; }
.rdt-ulepszenia .is-style-rdt-karta { padding: 1.35rem; }
.rdt-ulepszenia__nr { font-family: var(--wp--preset--font-family--naglowki, inherit); font-weight: 800; font-size: 2.4rem; line-height: 1; color: var(--rdt-akcent); margin: 0 0 .5rem; letter-spacing: -.03em; }
.rdt-ulepszenia h4 { margin: 0 0 .4rem; font-size: 1.1rem; }
.rdt-ulepszenia p:last-child { margin-bottom: 0; color: var(--rdt-szary); font-size: .95rem; }

.rdt-build__video { margin: 2rem 0 0; }
.rdt-build__video video { width: 100%; height: auto; display: block; background: #000; border-radius: var(--rdt-r); }
.rdt-build__video figcaption { color: var(--rdt-szary); font-size: .875rem; margin-top: .6rem; }
@media (max-width: 781px) { .rdt-spec td:first-child { width: 38%; } }

/* Zaproszenie do sklepu */
.rdt-kategorie { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 185px), 1fr)); gap: .75rem; margin: 1.5rem 0; }
.rdt-kategoria { display: flex; flex-direction: column; gap: .2rem; padding: 1.05rem 1.15rem; background: var(--rdt-papier); border: 1px solid var(--rdt-linia); border-radius: 16px; text-decoration: none; transition: border-color .2s, transform .2s, box-shadow .2s; position: relative; }
.rdt-kategoria::after { content: "↗"; position: absolute; right: 1rem; top: 1rem; color: var(--rdt-akcent); font-weight: 600; }
.rdt-kategoria strong { font-family: var(--rdt-naglowki); font-weight: 650; font-size: 1.08rem; color: var(--rdt-tekst); letter-spacing: -0.01em; }
.rdt-kategoria span { color: var(--rdt-szary); font-size: .85rem; }
.rdt-kategoria:hover { border-color: var(--rdt-akcent); transform: translateY(-2px); box-shadow: var(--rdt-cien); }
.rdt-zaproszenie { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.25rem 2rem; padding: clamp(1.35rem, 3vw, 2.1rem); background: var(--rdt-tekst); color: var(--rdt-tlo); border-radius: 24px; margin-bottom: 3rem; }
.rdt-zaproszenie__tekst { flex: 1 1 420px; }
.rdt-zaproszenie p { margin: 0; }
.rdt-zaproszenie__nad { font-size: .75rem; font-weight: 600; text-transform: uppercase; letter-spacing: .14em; color: var(--rdt-akcent); opacity: .95; }
.rdt-zaproszenie__tytul { font-family: var(--rdt-naglowki); font-weight: 700; font-size: clamp(1.45rem, 3vw, 2rem); line-height: 1.08; letter-spacing: -0.02em; color: var(--rdt-tlo); margin: .3rem 0 .45rem !important; }
.rdt-zaproszenie__opis { color: var(--rdt-tlo); opacity: .8; }
.rdt-zaproszenie .rdt-przycisk { background: var(--rdt-akcent) !important; color: #0F1113 !important; }
.rdt-stopka .rdt-zaproszenie a.rdt-przycisk:hover { text-decoration: none; }

/* Panel (sekcja „Pierwszy krok”) */
.rdt-panel { border-radius: 28px; }

/* Polityka prywatności - dokument */
.rdt-dokument-naglowek { border-bottom: 1px solid var(--rdt-linia); padding-bottom: 1.25rem; margin-bottom: 1.5rem; }
.rdt-dokument-logo { margin: 0; }
.rdt-dokument-meta { color: var(--rdt-szary); font-size: .875rem; margin: 0; }
.rdt-spis { columns: 2; column-gap: 2rem; padding-left: 1.2rem; }
.rdt-spis li { break-inside: avoid; margin-bottom: .35rem; }
@media (max-width: 640px) { .rdt-spis { columns: 1; } }
.rdt-tabela-prawna { overflow-x: auto; }
.rdt-tabela-prawna table { border-collapse: collapse; width: 100%; font-size: .9rem; background: var(--rdt-papier); border-radius: 14px; overflow: hidden; }
.rdt-tabela-prawna th, .rdt-tabela-prawna td { border: 1px solid var(--rdt-linia); padding: .7rem .85rem; text-align: left; vertical-align: top; }
.rdt-tabela-prawna th { background: var(--rdt-kamien); font-size: .75rem; text-transform: uppercase; letter-spacing: .06em; }
h2[id] { scroll-margin-top: 110px; }

/* Baner cookies - mały, w rogu, nie blokuje strony */
.rdt-cookies { position: fixed; z-index: 9999; left: 1rem; bottom: calc(1rem + env(safe-area-inset-bottom, 0px)); width: min(380px, calc(100vw - 2rem)); background: var(--rdt-papier); color: var(--rdt-tekst); border: 1px solid var(--rdt-linia); border-radius: 18px; box-shadow: 0 24px 60px -20px var(--rdt-cien-mocny, rgba(23, 25, 28, .45)); padding: 1.1rem 1.15rem 1rem; font-size: .875rem; line-height: 1.5; }
.rdt-cookies[hidden] { display: none; }
.rdt-cookies p { margin: 0 0 .6rem; }
.rdt-cookies__tytul { font-weight: 700; font-size: .95rem; display: flex; align-items: center; gap: .5rem; }
.rdt-cookies__tekst a { color: var(--rdt-akcent); }
.rdt-cookies__opcje { display: grid; gap: .5rem; margin: .25rem 0 .75rem; padding: .75rem; background: var(--rdt-tlo); border-radius: 12px; }
.rdt-cookies__opcje label { display: flex; gap: .55rem; align-items: flex-start; font-size: .8125rem; }
.rdt-cookies__opcje input { accent-color: var(--rdt-akcent); width: 18px; height: 18px; margin-top: .1rem; flex: none; }
.rdt-cookies__przyciski { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }
.rdt-cookies__btn { font: inherit; font-weight: 600; font-size: .8125rem; padding: .6rem .95rem; border-radius: 999px; border: 1.5px solid var(--rdt-tekst); background: transparent; color: var(--rdt-tekst); cursor: pointer; }
.rdt-cookies__btn--glowny { background: var(--rdt-akcent); border-color: var(--rdt-akcent); color: var(--rdt-papier); }
.rdt-cookies__btn:hover { filter: brightness(.95); }
.rdt-cookies__link { font: inherit; font-size: .8125rem; background: none; border: 0; color: var(--rdt-akcent); text-decoration: underline; cursor: pointer; padding: .4rem .2rem; margin-left: auto; }
.rdt-cookies button:focus-visible { outline: 2px solid var(--rdt-akcent); outline-offset: 2px; }
.rdt-cookies [hidden] { display: none !important; }
.rdt-administrator { box-sizing: border-box; }
.rdt-cta-profil { box-sizing: border-box; }

@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) { --rdt-ok: #5CC281; --rdt-uwaga: #E0A64B; --rdt-blad: #F0776B; } }
:root[data-theme="dark"] { --rdt-ok: #5CC281; --rdt-uwaga: #E0A64B; --rdt-blad: #F0776B; }

/* Social marki */
.rdt-social-marki { display: flex; flex-wrap: wrap; gap: .75rem; margin: 1rem 0 0; }
.rdt-social-marki__link { display: flex; flex-direction: column; padding: .8rem 1.1rem; border: 1px solid var(--rdt-linia); border-radius: 14px; background: var(--rdt-papier); text-decoration: none; min-width: 160px; transition: border-color .2s, transform .2s; }
.rdt-social-marki__link:hover { border-color: var(--rdt-akcent); transform: translateY(-2px); }
.rdt-social-marki__link strong { color: var(--rdt-tekst); }
.rdt-social-marki__link span { color: var(--rdt-szary); font-size: .8125rem; }

/* GEO: opis encji w stopce, ramka autora */
.rdt-opis-encji { color: var(--rdt-szary); font-size: .95rem; line-height: 1.55; margin: 0 0 1rem; }
.rdt-autor { display: grid; grid-template-columns: 96px 1fr; gap: 1.25rem; align-items: start; margin-top: 3rem; padding: 1.5rem; border: 1px solid var(--rdt-linia); border-radius: var(--rdt-r); background: var(--rdt-papier); }
.rdt-autor__foto { display: block; width: 96px; height: 96px; border-radius: 50%; overflow: hidden; background: var(--rdt-kamien); position: relative; flex: none; }
.rdt-autor__foto img { width: 100%; height: 100%; object-fit: cover; display: block; }
.rdt-autor__foto .rdt-inicjaly { position: absolute; inset: 0; display: grid; place-items: center; width: 100%; height: 100%; font-size: 2rem; font-weight: 800; color: var(--rdt-akcent); }
.rdt-autor h3 { margin: .1rem 0 .2rem; font-size: 1.15rem; }
.rdt-autor h3 a { text-decoration: none; color: inherit; }
.rdt-autor p { margin: .35rem 0 0; font-size: .95rem; }
.rdt-autor__linki { display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; }
@media (max-width: 480px) { .rdt-autor { grid-template-columns: 1fr; } }

/* CTA w poradnikach - prowadzi do Red Dot, nie do „zrób to sam” */
.rdt-cta-wpis.is-style-rdt-karta { background: var(--rdt-akcent-jasny); border-color: transparent; margin: 2.25rem 0; }
.rdt-cta-wpis.is-style-rdt-karta:hover { transform: none; box-shadow: none; }
.rdt-cta-wpis h3 { margin-top: 0; }
.rdt-cta-wpis p { color: var(--rdt-tekst); }
.rdt-cta-wpis .wp-block-buttons { margin-top: 1rem; }

/* ---------- Forum (bbPress) ---------- */
.rdt-forum #bbpress-forums { font-family: inherit; font-size: 1rem; color: var(--rdt-tekst); }
.rdt-forum #bbpress-forums a { color: var(--rdt-akcent); }
.rdt-forum #bbpress-forums .bbp-breadcrumb { font-size: .85rem; color: var(--rdt-szary); margin-bottom: 1.25rem; }
.rdt-forum #bbpress-forums .bbp-breadcrumb a { text-decoration: none; }
.rdt-forum #bbpress-forums ul.bbp-forums, .rdt-forum #bbpress-forums ul.bbp-topics, .rdt-forum #bbpress-forums ul.bbp-replies, .rdt-forum #bbpress-forums ul.bbp-search-results { border: 1px solid var(--rdt-linia); border-radius: var(--rdt-r); overflow: hidden; background: var(--rdt-papier); }
.rdt-forum #bbpress-forums li.bbp-header { background: var(--rdt-kamien); border-top: 0; color: var(--rdt-szary); font-size: .75rem; letter-spacing: .08em; text-transform: uppercase; font-weight: 600; padding: .75rem 1rem; }
.rdt-forum #bbpress-forums li.bbp-footer { background: var(--rdt-kamien); border-top: 1px solid var(--rdt-linia); }
.rdt-forum #bbpress-forums li.bbp-body ul.forum, .rdt-forum #bbpress-forums li.bbp-body ul.topic { border-top: 1px solid var(--rdt-linia); padding: 1rem; background: transparent; }
.rdt-forum #bbpress-forums ul.bbp-lead-topic, .rdt-forum #bbpress-forums ul.bbp-topics, .rdt-forum #bbpress-forums ul.bbp-forums, .rdt-forum #bbpress-forums ul.bbp-replies, .rdt-forum #bbpress-forums ul.bbp-search-results { font-size: 1rem; }
.rdt-forum #bbpress-forums li.bbp-forum-info, .rdt-forum #bbpress-forums li.bbp-topic-title { width: 55%; }
.rdt-forum #bbpress-forums .bbp-forum-title, .rdt-forum #bbpress-forums .bbp-topic-permalink { font-family: var(--rdt-naglowki); font-weight: 650; font-size: 1.1rem; text-decoration: none; color: var(--rdt-tekst); letter-spacing: -0.01em; }
.rdt-forum #bbpress-forums .bbp-forum-title:hover, .rdt-forum #bbpress-forums .bbp-topic-permalink:hover { color: var(--rdt-akcent); }
.rdt-forum #bbpress-forums .bbp-forum-content, .rdt-forum #bbpress-forums p.bbp-topic-meta { color: var(--rdt-szary); font-size: .9rem; margin-top: .25rem; }
.rdt-forum #bbpress-forums li.bbp-forum-topic-count, .rdt-forum #bbpress-forums li.bbp-forum-reply-count, .rdt-forum #bbpress-forums li.bbp-topic-voice-count, .rdt-forum #bbpress-forums li.bbp-topic-reply-count { width: 10%; font-weight: 600; }
.rdt-forum #bbpress-forums li.bbp-forum-freshness, .rdt-forum #bbpress-forums li.bbp-topic-freshness { width: 25%; font-size: .85rem; color: var(--rdt-szary); }
.rdt-forum #bbpress-forums div.bbp-forum-header, .rdt-forum #bbpress-forums div.bbp-topic-header, .rdt-forum #bbpress-forums div.bbp-reply-header { background: var(--rdt-kamien); border-top: 1px solid var(--rdt-linia); font-size: .8rem; color: var(--rdt-szary); padding: .5rem 1rem; }
.rdt-forum #bbpress-forums div.bbp-reply-content, .rdt-forum #bbpress-forums div.bbp-topic-content { margin-left: 130px; padding: 1rem 1rem 1rem 0; line-height: 1.6; }
.rdt-forum #bbpress-forums div.bbp-reply-author, .rdt-forum #bbpress-forums div.bbp-topic-author { width: 130px; padding: 1rem; float: left; }
.rdt-forum #bbpress-forums div.bbp-reply-author img.avatar, .rdt-forum #bbpress-forums div.bbp-topic-author img.avatar { border-radius: 50%; margin: 0 auto .5rem; width: 56px; height: 56px; }
.rdt-forum #bbpress-forums .bbp-author-name { font-weight: 600; color: var(--rdt-tekst); text-decoration: none; }
.rdt-forum #bbpress-forums .bbp-author-role { font-size: .75rem; color: var(--rdt-szary); }
.rdt-forum #bbpress-forums div.odd, .rdt-forum #bbpress-forums ul.odd { background: transparent; }
.rdt-forum #bbpress-forums div.even, .rdt-forum #bbpress-forums ul.even { background: var(--rdt-kamien); }
.rdt-forum #bbpress-forums .bbp-pagination { margin: 1rem 0; font-size: .9rem; }
.rdt-forum #bbpress-forums .bbp-pagination-links a, .rdt-forum #bbpress-forums .bbp-pagination-links span.current { border: 1px solid var(--rdt-linia); border-radius: 8px; padding: .3rem .7rem; text-decoration: none; }
.rdt-forum #bbpress-forums .bbp-pagination-links span.current { background: var(--rdt-akcent); color: #fff; border-color: transparent; }
.rdt-forum #bbpress-forums fieldset.bbp-form { border: 1px solid var(--rdt-linia); border-radius: var(--rdt-r); padding: 1.25rem 1.5rem; background: var(--rdt-papier); margin-top: 2rem; }
.rdt-forum #bbpress-forums fieldset.bbp-form legend { font-family: var(--rdt-naglowki); font-weight: 700; font-size: 1.25rem; padding: 0 .5rem; }
.rdt-forum #bbpress-forums fieldset.bbp-form label { display: block; font-weight: 600; font-size: .9rem; margin-bottom: .35rem; }
.rdt-forum #bbpress-forums fieldset.bbp-form input[type=text], .rdt-forum #bbpress-forums fieldset.bbp-form textarea, .rdt-forum #bbpress-forums fieldset.bbp-form select { width: 100%; max-width: 100%; box-sizing: border-box; border: 1px solid var(--rdt-linia); border-radius: 12px; padding: .7rem .9rem; font: inherit; background: var(--rdt-tlo); color: var(--rdt-tekst); }
.rdt-forum #bbpress-forums fieldset.bbp-form textarea { min-height: 180px; }
.rdt-forum #bbpress-forums .bbp-submit-wrapper { float: none; margin-top: 1rem; }
.rdt-forum #bbpress-forums button.button.submit, .rdt-forum #bbpress-forums #bbp_topic_submit, .rdt-forum #bbpress-forums #bbp_reply_submit { background: var(--rdt-akcent); color: #fff; border: 0; border-radius: 999px; padding: .8rem 1.4rem; font: inherit; font-weight: 600; cursor: pointer; }
.rdt-forum #bbpress-forums div.bbp-template-notice { border: 1px solid var(--rdt-linia); border-radius: 12px; background: var(--rdt-akcent-jasny); color: var(--rdt-tekst); padding: .75rem 1rem; }
.rdt-forum #bbpress-forums div.bbp-template-notice a { color: var(--rdt-akcent); }
.rdt-forum #bbpress-forums div.bbp-template-notice p { margin: 0; font-size: .95rem; }
.rdt-forum #bbpress-forums .bbp-topic-tags, .rdt-forum #bbpress-forums .bbp-admin-links { font-size: .8rem; }
.rdt-forum #bbpress-forums #bbp-search-form { margin-bottom: 1.25rem; display: flex; gap: .5rem; }
.rdt-forum #bbpress-forums #bbp-search-form input[type=text] { flex: 1; border: 1px solid var(--rdt-linia); border-radius: 999px; padding: .6rem 1rem; font: inherit; background: var(--rdt-papier); color: var(--rdt-tekst); }
.rdt-forum #bbpress-forums #bbp-search-form input[type=submit] { border: 0; border-radius: 999px; padding: .6rem 1.1rem; background: var(--rdt-kamien); color: var(--rdt-tekst); font: inherit; font-weight: 600; cursor: pointer; }
.rdt-forum #bbpress-forums #bbp-user-navigation ul { display: flex; flex-wrap: wrap; gap: .5rem; padding: 0; margin: 0 0 1.5rem; list-style: none; }
.rdt-forum #bbpress-forums #bbp-user-navigation li a { display: inline-block; border: 1px solid var(--rdt-linia); border-radius: 999px; padding: .4rem .9rem; text-decoration: none; font-size: .9rem; color: var(--rdt-tekst); }
.rdt-forum #bbpress-forums #bbp-user-navigation li.current a { background: var(--rdt-akcent); color: #fff; border-color: transparent; }
.rdt-forum #bbpress-forums .bbp-topic-started-by, .rdt-forum #bbpress-forums .bbp-topic-started-in { display: block; }
@media (max-width: 720px) {
	.rdt-forum #bbpress-forums li.bbp-forum-info, .rdt-forum #bbpress-forums li.bbp-topic-title { width: 100%; float: none; }
	.rdt-forum #bbpress-forums li.bbp-forum-topic-count, .rdt-forum #bbpress-forums li.bbp-forum-reply-count, .rdt-forum #bbpress-forums li.bbp-topic-voice-count, .rdt-forum #bbpress-forums li.bbp-topic-reply-count { width: 25%; font-size: .85rem; }
	.rdt-forum #bbpress-forums li.bbp-forum-freshness, .rdt-forum #bbpress-forums li.bbp-topic-freshness { width: 50%; }
	.rdt-forum #bbpress-forums li.bbp-header { display: none; }
	.rdt-forum #bbpress-forums div.bbp-reply-content, .rdt-forum #bbpress-forums div.bbp-topic-content { margin-left: 0; padding: 0 1rem 1rem; clear: both; }
	.rdt-forum #bbpress-forums div.bbp-reply-author, .rdt-forum #bbpress-forums div.bbp-topic-author { width: auto; float: none; display: flex; align-items: center; gap: .6rem; padding: .75rem 1rem 0; }
	.rdt-forum #bbpress-forums div.bbp-reply-author img.avatar, .rdt-forum #bbpress-forums div.bbp-topic-author img.avatar { margin: 0; width: 36px; height: 36px; }
}
/* Formularze konta */
.rdt-form--logowanie form p { margin: 0 0 1rem; }
.rdt-form--logowanie label { display: block; font-weight: 600; font-size: .9rem; margin-bottom: .35rem; }
.rdt-form--logowanie input[type=text], .rdt-form--logowanie input[type=password] { width: 100%; max-width: 420px; box-sizing: border-box; border: 1px solid var(--rdt-linia); border-radius: 12px; padding: .7rem .9rem; font: inherit; background: var(--rdt-papier); color: var(--rdt-tekst); }
.rdt-form--logowanie .login-remember label { display: flex; gap: .5rem; align-items: center; font-weight: 400; }
.rdt-form--logowanie input[type=submit] { background: var(--rdt-akcent); color: #fff; border: 0; border-radius: 999px; padding: .8rem 1.4rem; font: inherit; font-weight: 600; cursor: pointer; }
.rdt-konto { border: 1px solid var(--rdt-linia); border-radius: var(--rdt-r); padding: 1.5rem; background: var(--rdt-papier); }
.rdt-konto__linki { padding-left: 1.2rem; }
.rdt-konto__akcje { display: flex; flex-wrap: wrap; gap: .75rem; }
.rdt-komunikat--blad { border-color: var(--rdt-czerwien, #D2261A); }
.rdt-komunikat--ok { border-color: var(--rdt-ok, #2E7D32); }
.rdt-forum #bbpress-forums p.form-allowed-tags, .rdt-forum #bbpress-forums .bbp-form .bbp-topic-form-legend { display: none; }

.rdt-autor-nazwa { color: var(--rdt-szary); font-size: .85rem; }

/* Forum: pasek gość/zalogowany i box „Dołącz” */
.rdt-forum-pasek { clear: both; display: flex; flex-wrap: wrap; align-items: center; gap: .6rem 1rem; padding: .85rem 1.1rem; margin: 0 0 1.25rem; border: 1px solid var(--rdt-linia); border-radius: 14px; background: var(--rdt-papier); font-size: .92rem; }
.rdt-forum-pasek--gosc { border-left: 4px solid var(--rdt-akcent); }
.rdt-forum-pasek__awatar img { border-radius: 50%; width: 32px; height: 32px; display: block; }
.rdt-forum-pasek__linki { margin-left: auto; display: flex; gap: .5rem; flex-wrap: wrap; }
.rdt-forum-pasek__linki a { display: inline-flex; align-items: center; min-height: 36px; padding: .3rem .85rem; border-radius: 999px; border: 1px solid var(--rdt-linia); text-decoration: none !important; font-weight: 600; color: var(--rdt-tekst) !important; background: var(--rdt-tlo); }
.rdt-forum-pasek__linki a:hover { border-color: var(--rdt-akcent); color: var(--rdt-akcent) !important; }
.rdt-forum-pasek__linki a.rdt-forum-pasek__glowny { background: var(--rdt-akcent); border-color: var(--rdt-akcent); color: var(--rdt-na-akcencie) !important; }
.rdt-forum-dolacz { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1rem 2rem; align-items: center; padding: 1.5rem 1.75rem; margin: 1.5rem 0; border: 1px solid var(--rdt-linia); border-radius: var(--rdt-r); background: var(--rdt-papier); }
.rdt-forum-dolacz h3 { margin: 0 0 .5rem; font-size: 1.25rem; }
.rdt-forum-dolacz p { margin: 0 0 .5rem; line-height: 1.5; }
.rdt-forum-dolacz__bezp { font-size: .85rem; color: var(--rdt-szary); margin-bottom: 0 !important; }
.rdt-forum-dolacz__akcje { display: flex; flex-direction: column; gap: .5rem; min-width: 180px; }
.rdt-forum-dolacz__akcje .wp-block-button__link { text-align: center; color: var(--rdt-na-akcencie) !important; }
.rdt-forum-dolacz__akcje .rdt-przycisk--kontur { color: var(--rdt-tekst) !important; }
.rdt-forum #bbpress-forums .bbp-template-notice.info, .rdt-forum #bbpress-forums div.bbp-template-notice { background: var(--rdt-kamien); border: 0; border-radius: 12px; color: var(--rdt-szary); }
.rdt-forum #bbpress-forums .bbp-template-notice + .rdt-forum-dolacz { margin-top: .75rem; }
@media (max-width: 782px) { .rdt-forum-dolacz { grid-template-columns: 1fr; padding: 1.15rem; } .rdt-forum-pasek__linki { margin-left: 0; width: 100%; } }

/* Match Center */
.rdt-mc { margin: 0 0 2rem; }
.rdt-mc__akcje { display: flex; flex-wrap: wrap; gap: .6rem; margin: 0 0 .75rem; }
.rdt-mc__akcje .rdt-przycisk--kontur { color: var(--rdt-tekst) !important; }
.rdt-mc__adres { font-size: .85rem; color: var(--rdt-szary); margin: 0 0 1.5rem; }
.rdt-mc__adres code { background: var(--rdt-kamien); padding: .15rem .45rem; border-radius: 6px; font-size: .85rem; }
.rdt-mc__kroki { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 1rem; }
.rdt-mc__krok { display: flex; gap: .9rem; align-items: flex-start; background: var(--rdt-papier); border: 1px solid var(--rdt-linia); border-radius: 16px; padding: 1.1rem 1.15rem; }
.rdt-mc__krok p { margin: .3rem 0 0; font-size: .92rem; color: var(--rdt-szary); line-height: 1.5; }
.rdt-mc__nr { flex: none; width: 34px; height: 34px; border-radius: 50%; background: var(--rdt-kropka); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-weight: 700; font-family: var(--rdt-naglowki); }
.rdt-mc__podglad img { border-radius: var(--rdt-r); border: 1px solid var(--rdt-linia); box-shadow: var(--rdt-cien); }
.rdt-mc-kafel { padding: 1.5rem 1.75rem !important; }
.rdt-mc-kafel img { border-radius: 14px; border: 1px solid var(--rdt-linia); }

/* Składy i lista startowa */
.rdt-sklady { border: 0; padding: 0; margin: 0 0 1.25rem; }
.rdt-sklady legend { font-weight: 600; margin: 0 0 .6rem; padding: 0; }
.rdt-sklady__siatka { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: .6rem; }
.rdt-form .rdt-sklad, .rdt-sklad { position: relative; display: grid; gap: .25rem; font-weight: 400; padding: .85rem 1rem 1rem; border: 1.5px solid var(--rdt-linia); border-radius: 14px; background: var(--rdt-papier); cursor: pointer; transition: border-color .15s, box-shadow .15s; }
.rdt-sklad input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.rdt-sklad:has(input:checked) { border-color: var(--rdt-akcent); box-shadow: 0 0 0 3px var(--rdt-akcent-jasny); }
.rdt-sklad:has(input:focus-visible) { outline: 2px solid var(--rdt-akcent); outline-offset: 2px; }
.rdt-sklad__nazwa { display: block; font-weight: 700; font-family: var(--rdt-naglowki); color: var(--rdt-tekst); }
.rdt-sklad__stan { display: block; font-size: .82rem; font-weight: 400; color: var(--rdt-szary); }
.rdt-sklad__pasek { display: block; height: 5px; border-radius: 999px; background: var(--rdt-kamien); overflow: hidden; margin-top: .25rem; }
.rdt-sklad__pasek i { display: block; height: 100%; background: var(--rdt-ok); }
.rdt-sklad--pelny .rdt-sklad__pasek i { background: var(--rdt-uwaga); }
.rdt-sklad--zamkniety { opacity: .55; cursor: not-allowed; }
.rdt-sklad--zamkniety .rdt-sklad__pasek i { background: var(--rdt-szary); }
.rdt-sklad--dowolny { border-style: dashed; }
.rdt-lista-startowa { margin: 2.5rem 0 0; }
.rdt-lista-startowa h2 { display: flex; flex-wrap: wrap; align-items: baseline; gap: .6rem; }
.rdt-lista-startowa h2 small { font-size: .85rem; font-weight: 500; color: var(--rdt-szary); font-family: inherit; }
.rdt-lista-startowa__siatka { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1rem; margin-top: 1rem; }
.rdt-sklad-lista { background: var(--rdt-papier); border: 1px solid var(--rdt-linia); border-radius: 16px; padding: 1rem 1.1rem; }
.rdt-sklad-lista--zamkniety { background: var(--rdt-tlo); }
.rdt-sklad-lista h3 { font-size: 1.05rem; margin: 0 0 .6rem; display: flex; justify-content: space-between; align-items: baseline; }
.rdt-sklad-lista h3 span { font-size: .8rem; font-weight: 600; color: var(--rdt-szary); }
.rdt-sklad-lista ol { list-style: none; margin: 0; padding: 0; display: grid; gap: .3rem; }
.rdt-sklad-lista li { display: grid; grid-template-columns: 34px 1fr auto; gap: .5rem; align-items: center; font-size: .92rem; padding: .35rem 0; border-bottom: 1px solid var(--rdt-linia); }
.rdt-sklad-lista li:last-child { border-bottom: 0; }
.rdt-sklad-lista__nr { font-family: var(--rdt-naglowki); font-weight: 700; color: var(--rdt-szary); font-size: .85rem; }
.rdt-sklad-lista__kto small { color: var(--rdt-szary); font-size: .8rem; margin-left: .25rem; }
.rdt-sklad-lista__klasa { font-size: .75rem; font-weight: 600; color: var(--rdt-szary); white-space: nowrap; }
.rdt-sklad-lista__wolne { color: var(--rdt-szary); font-style: italic; }
.rdt-form--sklad { margin-top: 1.25rem; padding-top: 1.25rem; border-top: 1px solid var(--rdt-linia); }

.rdt-stopka-prawa { width: 100%; }
.rdt-prawa { margin: .35rem 0 0; font-size: .68rem; line-height: 1.5; color: var(--rdt-szary); opacity: .8; }
.rdt-prawa a { color: inherit; }

.rdt-kopiuj-link { background: none; border: 0; padding: 0; font: inherit; font-weight: 600; color: var(--rdt-akcent); cursor: pointer; text-decoration: none; }
.rdt-kopiuj-link:hover { text-decoration: underline; }

/* Team: sekcja z lekkim tłem ze zdjęcia (Łukasz na strzelnicy) i napis marki RedDot */
.rdt-team-tlo { position: relative; overflow: hidden; background: var(--rdt-kamien); isolation: isolate; border-radius: 24px; }
.rdt-team-tlo > :not(.rdt-team-tlo__foto) { max-width: none !important; margin-left: clamp(1.25rem, 3.5vw, 3rem) !important; margin-right: clamp(1.25rem, 3.5vw, 3rem) !important; }
.rdt-team-tlo__lead { font-size: 1.1rem !important; }
.rdt-sekcja > h2 { margin-top: 0; }
.rdt-sekcja { margin-top: 3rem; }
.rdt-team-tlo > .rdt-team-tlo__foto { position: absolute; top: 0; bottom: 0; right: 0; left: 52%; z-index: -2; max-width: none !important; margin: 0 !important; background-size: cover; background-position: 42% 30%; background-repeat: no-repeat; opacity: .55; filter: saturate(.8); }
.rdt-team-tlo::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(90deg, var(--rdt-tlo) 50%, color-mix(in srgb, var(--rdt-tlo) 75%, transparent) 58%, color-mix(in srgb, var(--rdt-tlo) 30%, transparent) 68%, transparent 84%); }
.rdt-team-tlo > .rdt-team-tlo__h { max-width: 15ch !important; font-size: clamp(2rem, 4.6vw, 3.4rem); line-height: 1.02; margin: 0 0 1rem; }
.rdt-team-tlo > .rdt-team-tlo__p { max-width: 50ch !important; font-size: 1.05rem; }
.rdt-team-tlo__p:last-child { margin-bottom: 0; }
.rdt-marka { white-space: nowrap; }
.rdt-marka__red { color: var(--rdt-kropka); }
.rdt-marka__dot { color: var(--rdt-tekst); }
@media (max-width: 900px) {
	.rdt-team-tlo > .rdt-team-tlo__foto { left: 0; background-position: 65% 22%; opacity: .2; }
	.rdt-team-tlo::before { background: linear-gradient(180deg, color-mix(in srgb, var(--rdt-tlo) 75%, transparent), color-mix(in srgb, var(--rdt-tlo) 55%, transparent)); }
}

/* Red Dot Performance: hero, kroki, intro, 5 ulepszeń (deseń z grafiki kampanii: ciemna faktura, czerwony akcent) */
.rdt-perf-hero, .rdt-perf-ulepszenia { --pf-tlo: #0E1013; --pf-tekst: #F1EFEA; --pf-szary: #A7ACB3; --pf-akcent: #E31B23; position: relative; color: var(--pf-tekst); background-color: var(--pf-tlo); background-image: radial-gradient(ellipse 60% 80% at 80% 20%, rgba(227, 27, 35, .16), transparent 60%), radial-gradient(ellipse 50% 60% at 10% 90%, rgba(255, 255, 255, .05), transparent 60%), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .22 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); padding: clamp(2.5rem, 6vw, 4.5rem) 0; overflow: hidden; }
.rdt-perf-hero::after, .rdt-perf-ulepszenia::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: linear-gradient(90deg, var(--pf-akcent), transparent 70%); }
.rdt-perf-hero > *, .rdt-perf-ulepszenia > * { max-width: 1240px !important; margin-left: auto !important; margin-right: auto !important; padding-inline: clamp(16px, 3vw, 32px); box-sizing: content-box; }
.rdt-perf-hero { margin-top: -1px; }
.rdt-perf-hero__siatka { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(280px, .9fr); gap: 2rem 3rem; align-items: center; }
.rdt-perf-hero__nad { margin: 0 0 .6rem; font-size: .74rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--pf-akcent); }
.rdt-perf-hero__h { margin: 0 0 1rem; font-size: clamp(2.2rem, 5.2vw, 4rem); line-height: .98; letter-spacing: -.02em; text-transform: uppercase; color: #fff; }
.rdt-perf-hero__h span { color: var(--pf-akcent); }
.rdt-perf-hero__p { margin: 0 0 1.4rem; max-width: 50ch; color: var(--pf-szary); font-size: 1.05rem; line-height: 1.6; }
.rdt-perf-hero__akcje { display: flex; flex-wrap: wrap; gap: .75rem 1.5rem; align-items: center; }
.rdt-perf-btn { background: var(--pf-akcent) !important; color: #fff !important; border: 0; }
.rdt-perf-btn:hover { filter: brightness(.92); }
.rdt-perf-link { color: #fff; font-weight: 600; text-decoration: none; border-bottom: 2px solid var(--pf-akcent); padding-bottom: .1rem; }
.rdt-perf-link:hover { color: var(--pf-akcent); }
.rdt-perf-hero__cechy { list-style: none; padding: 0; margin: 1.8rem 0 0; display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; font-size: .8rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--pf-szary); }
.rdt-perf-hero__cechy li::before { content: ""; display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--pf-akcent); margin-right: .55rem; vertical-align: 1px; }
.rdt-perf-hero__foto { margin: 0; position: relative; }
.rdt-perf-hero__foto img { width: 100%; height: auto; display: block; border-radius: 18px; box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .9); mask-image: linear-gradient(180deg, #000 78%, transparent 100%); -webkit-mask-image: linear-gradient(180deg, #000 78%, transparent 100%); }
.rdt-perf-hero__foto figcaption { margin-top: .4rem; font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--pf-szary); text-align: right; }
.rdt-perf-kroki { margin: 2.5rem 0 1rem; }
.rdt-perf-kroki__lista { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 1rem; counter-reset: none; }
.rdt-perf-kroki__lista li { position: relative; background: var(--rdt-papier); border: 1px solid var(--rdt-linia); border-radius: 18px; padding: 1.25rem 1.3rem 1.3rem; overflow: hidden; }
.rdt-perf-kroki__lista li::after { content: ""; position: absolute; left: 1.3rem; right: 1.3rem; top: 0; height: 3px; background: var(--rdt-kropka); border-radius: 0 0 3px 3px; }
.rdt-perf-kroki__nr { display: block; font-family: var(--rdt-naglowki); font-weight: 800; font-size: 2rem; line-height: 1; color: var(--rdt-kropka); margin: .3rem 0 .5rem; }
.rdt-perf-kroki__lista h3 { margin: 0 0 .4rem; font-size: 1.35rem; }
.rdt-perf-kroki__lista p { margin: 0; color: var(--rdt-szary); font-size: .95rem; line-height: 1.55; }
.rdt-perf-intro { margin: 2.5rem 0 1rem; }
.rdt-perf-intro__siatka { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); gap: 2rem 3rem; align-items: center; }
.rdt-perf-intro__tekst h2 { margin: 0 0 .8rem; }
.rdt-perf-intro__tekst p { margin: 0; }
.rdt-perf-intro__galeria { display: grid; grid-template-columns: repeat(3, 1fr); gap: .75rem; }
.rdt-perf-intro__galeria figure { margin: 0; }
.rdt-perf-intro__galeria img { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; border-radius: 14px; display: block; }
.rdt-perf-intro__galeria figcaption { font-size: .75rem; color: var(--rdt-szary); margin-top: .4rem; line-height: 1.35; }
.rdt-perf-ulepszenia { margin: 2.5rem 0; }
.rdt-perf-ulepszenia__naglowek { margin-bottom: 1.6rem !important; }
.rdt-perf-ulepszenia__naglowek > * { max-width: 62ch; }
.rdt-perf-ulepszenia__naglowek h2 { margin: 0 0 .6rem; font-size: clamp(1.9rem, 4vw, 2.8rem); text-transform: uppercase; letter-spacing: -.01em; color: #fff; }
.rdt-perf-ulepszenia__naglowek p:last-child { margin: 0; color: var(--pf-szary); }
.rdt-perf-kafle { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.rdt-perf-kafle li { background: #16191E; border: 1px solid rgba(255, 255, 255, .08); border-radius: 16px; overflow: hidden; display: grid; grid-template-rows: auto 1fr; }
.rdt-perf-kafle img { width: 100%; height: auto; aspect-ratio: 356 / 153; object-fit: cover; display: block; }
.rdt-perf-kafle p { margin: 0; padding: .8rem 1rem 1rem; font-size: .92rem; color: var(--pf-szary); line-height: 1.5; }
.rdt-perf-kafle--szeroki { grid-column: span 2; }
.rdt-perf-kafle--szeroki img { aspect-ratio: 724 / 160; object-position: left center; }
.rdt-perf-kafle--cta { grid-column: 1 / -1; grid-template-rows: 1fr auto; grid-template-columns: minmax(220px, 380px) 1fr; }
.rdt-perf-kafle--cta img { grid-row: 1 / 3; aspect-ratio: auto; height: 100%; min-height: 170px; }
.rdt-perf-kafle--cta p { grid-column: 2; align-self: end; font-size: 1.15rem; padding: 1.2rem 1.4rem .5rem; }
.rdt-perf-kafle--cta .rdt-perf-btn { grid-column: 2; margin: 0 1.4rem 1.2rem; }
.rdt-perf-kafle--cta p { color: var(--pf-tekst); }
.rdt-perf-kafle--cta .rdt-perf-btn { margin: 0 1rem 1rem; justify-self: start; }
.rdt-perf-ulepszenia__motto { margin-top: 1.8rem !important; margin-bottom: 0 !important; font-family: var(--rdt-naglowki); font-weight: 800; font-size: 1.1rem; letter-spacing: .2em; text-transform: uppercase; color: var(--pf-szary); text-align: center; }
.rdt-perf-ulepszenia__motto span { color: var(--pf-akcent); }
@media (max-width: 900px) {
	.rdt-perf-hero__siatka, .rdt-perf-intro__siatka { grid-template-columns: 1fr; }
	.rdt-perf-hero__foto { max-width: 420px; }
	.rdt-perf-kafle { grid-template-columns: 1fr 1fr; }
	.rdt-perf-kafle--szeroki { grid-column: 1 / -1; }
	.rdt-perf-kafle--cta { grid-template-columns: 1fr; grid-template-rows: auto auto auto; }
	.rdt-perf-kafle--cta img { grid-row: 1; aspect-ratio: 356 / 164; min-height: 0; }
	.rdt-perf-kafle--cta p, .rdt-perf-kafle--cta .rdt-perf-btn { grid-column: 1; }
}
@media (max-width: 560px) { .rdt-perf-kafle { grid-template-columns: 1fr; } .rdt-perf-intro__galeria { grid-template-columns: repeat(3, 1fr); gap: .4rem; } }

/* Akademia: hero z mozaiką zdjęć hali, pas „Nowoczesne tory treningowe” (filmy lub zdjęcia), obszary, jak działamy */
.rdt-ak-nad { margin: 0 0 .5rem; font-size: .74rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--rdt-kropka); }
.rdt-ak-hero { margin: 1rem 0 2.5rem; }
.rdt-ak-hero__siatka { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, 1.05fr); gap: 2rem 3rem; align-items: center; }
.rdt-ak-hero__tekst h2 { margin: 0 0 .8rem; font-size: clamp(2.2rem, 4.8vw, 3.6rem); line-height: 1; letter-spacing: -.02em; }
.rdt-ak-hero__tekst .rdt-lead { margin: 0 0 1.4rem; }
.rdt-ak-hero__akcje { display: flex; flex-wrap: wrap; gap: .75rem 1.5rem; align-items: center; }
.rdt-ak-hero__mozaika { display: grid; grid-template-columns: 1.3fr 1fr; grid-template-rows: 1fr 1fr; gap: .75rem; }
.rdt-ak-hero__mozaika figure { margin: 0; border-radius: 16px; overflow: hidden; background: var(--rdt-kamien); }
.rdt-ak-hero__mozaika img { width: 100%; height: 100%; object-fit: cover; display: block; }
.rdt-ak-hero__duze { grid-row: 1 / 3; }
.rdt-ak-hero__mozaika figure:not(.rdt-ak-hero__duze) { aspect-ratio: 4 / 3; }
.rdt-ak-tory { position: relative; color: #F1EFEA; background-color: #0E1013; background-image: radial-gradient(ellipse 60% 80% at 85% 10%, rgba(227, 27, 35, .16), transparent 60%), radial-gradient(ellipse 50% 60% at 5% 95%, rgba(255, 255, 255, .05), transparent 60%), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .22 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); padding: clamp(2.5rem, 6vw, 4.5rem) 0; margin: 0 0 2.5rem; overflow: hidden; }
.rdt-ak-tory::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: linear-gradient(90deg, #E31B23, transparent 70%); }
.rdt-ak-tory > * { max-width: 1240px !important; margin-left: auto !important; margin-right: auto !important; padding-inline: clamp(16px, 3vw, 32px); box-sizing: content-box; }
.rdt-ak-nad--jasny { color: #E31B23; }
.rdt-ak-tory__naglowek { margin-bottom: 1.6rem !important; }
.rdt-ak-tory__naglowek > * { max-width: 64ch; }
.rdt-ak-tory__naglowek h2 { margin: 0 0 .6rem; color: #fff; font-size: clamp(1.9rem, 4vw, 2.8rem); text-transform: uppercase; letter-spacing: -.01em; }
.rdt-ak-tory__naglowek p:last-child { margin: 0; color: #A7ACB3; }
.rdt-tory__siatka { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.rdt-tory__film { margin: 0; aspect-ratio: 9 / 16; max-height: 560px; border-radius: 18px; overflow: hidden; background: #16191E; border: 1px solid rgba(255, 255, 255, .08); box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .9); }
.rdt-tory__film video, .rdt-tory__film img { width: 100%; height: 100%; object-fit: cover; display: block; }
.rdt-tory__sterowanie { display: flex; flex-wrap: wrap; gap: .6rem 1rem; align-items: center; margin-top: 1rem !important; margin-bottom: 0 !important; }
.rdt-tory__sterowanie .rdt-meta { color: #A7ACB3; }
.rdt-tory__dzwiek { background: #E31B23 !important; border-color: #E31B23 !important; color: #fff !important; }
.rdt-tory__dzwiek[data-stan="on"] { background: #fff !important; border-color: #fff !important; color: #0E1013 !important; }
.rdt-ak-tory__cechy { list-style: none; padding: 0; margin-top: 2rem !important; margin-bottom: 0 !important; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 1rem; }
.rdt-ak-tory__cechy li { display: grid; gap: .25rem; padding: 1rem 1.1rem; border: 1px solid rgba(255, 255, 255, .1); border-radius: 14px; background: rgba(255, 255, 255, .03); }
.rdt-ak-tory__cechy b { font-size: 1.02rem; color: #fff; }
.rdt-ak-tory__cechy span { font-size: .9rem; color: #A7ACB3; line-height: 1.5; }
.rdt-ak-naglowek { margin-bottom: 1.2rem; }
.rdt-ak-naglowek h2 { margin: 0 0 .4rem; }
.rdt-ak-naglowek p { margin: 0; color: var(--rdt-szary); max-width: 60ch; }
.rdt-ak-karty { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 1rem; }
.rdt-ak-karta { position: relative; display: grid; gap: .5rem; align-content: start; padding: 1.4rem 1.4rem 1.5rem; background: var(--rdt-papier); border: 1px solid var(--rdt-linia); border-radius: 18px; text-decoration: none; color: inherit; transition: transform .2s, box-shadow .2s, border-color .2s; }
.rdt-ak-karta:hover { transform: translateY(-3px); box-shadow: var(--rdt-cien); border-color: var(--rdt-akcent); }
.rdt-ak-karta__nr { font-family: var(--rdt-naglowki); font-weight: 800; font-size: 1.6rem; line-height: 1; color: var(--rdt-kropka); }
.rdt-ak-karta h3 { margin: 0; font-size: 1.35rem; }
.rdt-ak-karta p { margin: 0; color: var(--rdt-szary); font-size: .95rem; line-height: 1.55; }
.rdt-ak-karta .rdt-link { margin-top: .4rem; }
.rdt-ak-obszary { margin: 2.5rem 0; }
.rdt-ak-jak { margin: 2.5rem 0; }
.rdt-ak-jak__siatka { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); gap: 2rem 3rem; align-items: center; }
.rdt-ak-jak__tekst h2 { margin: 0 0 .8rem; }
.rdt-ak-jak__tekst p { margin: 0; }
.rdt-ak-jak__lista { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; }
.rdt-ak-jak__lista li { display: grid; gap: .2rem; padding: 1rem 1.1rem; border-left: 3px solid var(--rdt-kropka); background: var(--rdt-papier); border-radius: 0 14px 14px 0; }
.rdt-ak-jak__lista b { font-size: 1.02rem; }
.rdt-ak-jak__lista span { font-size: .9rem; color: var(--rdt-szary); line-height: 1.5; }
@media (max-width: 900px) {
	.rdt-ak-hero__siatka, .rdt-ak-jak__siatka { grid-template-columns: 1fr; }
	.rdt-tory__siatka { grid-template-columns: repeat(3, 1fr); gap: .5rem; }
	.rdt-tory__film { border-radius: 12px; }
}
@media (max-width: 560px) { .rdt-ak-jak__lista { grid-template-columns: 1fr; } .rdt-ak-hero__mozaika { gap: .5rem; } }
