/*
 * Responsywna skala nagłówków dla widgetów Elementora BEZ własnego rozmiaru czcionki
 * (widgety z ustawionym rozmiarem w Elementorze mają wyższą specyficzność i wygrywają).
 * Skala spójna z migracją 2026-10-06-typography-scale.php (desktop / laptop / tablet / mobile, w rem):
 *   h1: 3 / 2.5 / 2 / 1.75     h2: 2 / 1.8 / 1.6 / 1.4
 *   h3: 1.5 / 1.4 / 1.3 / 1.2  h4: 1.25 / 1.2 / 1.15 / 1.1
 * Breakpointy Elementora: laptop <=1366, tablet <=1024, mobile <=767.
 */
.elementor-widget-heading h1.elementor-heading-title { font-size: 3rem; line-height: 1.2; }
.elementor-widget-heading h2.elementor-heading-title { font-size: 2rem; line-height: 1.25; }
.elementor-widget-heading h3.elementor-heading-title { font-size: 1.5rem; line-height: 1.3; }
.elementor-widget-heading h4.elementor-heading-title { font-size: 1.25rem; line-height: 1.3; }

@media (max-width: 1366px) {
	.elementor-widget-heading h1.elementor-heading-title { font-size: 2.5rem; }
	.elementor-widget-heading h2.elementor-heading-title { font-size: 1.8rem; }
	.elementor-widget-heading h3.elementor-heading-title { font-size: 1.4rem; }
	.elementor-widget-heading h4.elementor-heading-title { font-size: 1.2rem; }
}
@media (max-width: 1024px) {
	.elementor-widget-heading h1.elementor-heading-title { font-size: 2rem; }
	.elementor-widget-heading h2.elementor-heading-title { font-size: 1.6rem; }
	.elementor-widget-heading h3.elementor-heading-title { font-size: 1.3rem; }
	.elementor-widget-heading h4.elementor-heading-title { font-size: 1.15rem; }
}
@media (max-width: 767px) {
	.elementor-widget-heading h1.elementor-heading-title { font-size: 1.75rem; }
	.elementor-widget-heading h2.elementor-heading-title { font-size: 1.4rem; }
	.elementor-widget-heading h3.elementor-heading-title { font-size: 1.2rem; }
	.elementor-widget-heading h4.elementor-heading-title { font-size: 1.1rem; }
}

/* Tabele w tekstach prawnych (polityka prywatności): czytelne i przewijane na wąskich ekranach */
.elementor-widget-text-editor table { width: 100%; border-collapse: collapse; font-size: 0.95rem; }
.elementor-widget-text-editor th, .elementor-widget-text-editor td { border: 1px solid #d9dde3; padding: 0.6em 0.8em; text-align: left; vertical-align: top; }
.elementor-widget-text-editor th { background: #f3f5f8; }
@media (max-width: 767px) {
	.elementor-widget-text-editor table { display: block; overflow-x: auto; font-size: 0.85rem; }
}

/* Przełącznik języka (Connect Polylang for Elementor): strzałka rysowana w CSS, bo Font Awesome nie jest ładowany na stronie */
.cpel-switcher__toggle .cpel-switcher__icon {
	box-sizing: content-box; display: inline-block; width: 0 !important; height: 0 !important; min-width: 0; padding: 0 !important; font-size: 0; line-height: 0; overflow: visible;
	border-left: 5px solid transparent; border-right: 5px solid transparent; border-top: 6px solid #54595f;
	margin-left: 8px; vertical-align: middle;
}
.cpel-switcher__icon::before { content: none !important; }
