/* Baza motywu – celowo minimalna, żeby nie nadpisywać ustawień Elementora (Zestaw domyślny / kit 6). */

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
}

/* Fallback dla treści spoza widgetów Elementora (np. pola HTML w formularzach Forminator) –
   odpowiada temu, co wcześniej dawał Twenty Twenty-Three. */
body {
	margin: 0;
	overflow-x: hidden;
	color: #000;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	font-size: 1rem;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
}

a {
	color: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	line-height: 1.2;
}

img,
svg,
video,
iframe {
	max-width: 100%;
}

img {
	height: auto;
}

.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	white-space: nowrap;
}

.skip-link:focus {
	position: fixed !important;
	top: 8px;
	left: 8px;
	z-index: 100000;
	width: auto;
	height: auto;
	padding: 12px 16px;
	clip: auto;
	background: #fff;
	color: #111;
}

/* Strony bez bloków esw-* (np. wpisy, regulamin) – zwykły kontener treści. Nagłówek i stopka: layout.css */

.site-main {
	max-width: 1140px;
	margin: 0 auto;
	padding: 32px 16px 48px;
}

/* Strony Elementora mają własne kontenery – bez dodatkowych odstępów motywu */
.elementor-page .site-main {
	max-width: none;
	padding: 0;
}
