﻿/* DUPLICATE: basic page reset and body rules are now inlined in index.html to avoid render-blocking.
   Kept here only as a comment to indicate the original rules were intentionally removed.
   If you want to restore them in the external stylesheet, uncomment and adjust.

   Original rules (commented below):
   body {
	   border-width: 6px;
	   border-color: #25AAE1;
	   font-family: Arial, Helvetica, sans-serif;
	   color: #999999;
	   border-top-style: solid;
	   font-size: small;
	   font-weight: normal;
	   font-style: normal;
   }
   * {
	   margin: 0;
	   padding: 0;
	   outline: 0;
   }
*/
.auto-style2 {
	border: 1px solid #000000;
	margin-right: 10px;
	margin-left: 1px;
	font-size: 12px;
}
/* DUPLICATE: .wrap is inlined in index.html; commented here to avoid duplicate declarations. */
/*
.wrap {
	background-position: center top;
	width: auto;
	background-repeat: repeat-x;
	background-image: url(../img/wrap.png);
}
*/
.slidercontainer {
	max-width: 1920px;
	margin: 0 auto;
}
/* DUPLICATE: .section_title is inlined in index.html (critical CSS). Commented here to avoid duplication. */
/*
.section_title {
	color: #0033FF;
	font-weight: 700;
	text-transform: uppercase;
	background-color: #f5f5f5;
	font-size: x-large;
	border: none;
}
*/
.film {
	max-width: 900px;
	margin: 0 auto;
	text-align: center;
}
/* DUPLICATE: .abs is inlined in index.html. Commented out here. */
/*
.abs {
	background-color: #f5f5f5;
	margin: 0 auto;
	color: #222;
	padding: 30px 0;
}
*/
.txt_black {
	color: black;
}
.oferta {
	margin-top: 20px;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 30px;
}
.oferta a {
 	max-height: 350px;
 	max-width: 540px;
 	overflow: hidden;
 	position: relative;
}
.oferta a img {
 	object-fit: cover;
 	transition: all 0.5s ease-out;
 	display: block;
 	width: 100%;
 	height: 100%;
}
.oferta a:hover img {
 	transform: scale(1.1);
}

/* Przyciemniona nakładka na zdjęcia w sekcji oferta - poprawia kontrast tekstu */
.oferta a::after {
 	content: "";
 	position: absolute;
 	inset: 0; /* top:0; right:0; bottom:0; left:0; */
 	background: rgba(0, 0, 0, 0.35);
 	transition: background 0.25s ease;
 	z-index: 1;
 	pointer-events: none;
}

.oferta a:hover::after {
 	/* delikatne przyciemnienie przy najechaniu - opcjonalne */
 	background: rgba(0, 0, 0, 0.42);
}

.oferta a h3 {
 	position: absolute;
 	font-size: 25px;
 	font-weight: 700;
 	color: white;
 	top: 0;
 	text-shadow: #000 1px 1px 4px;
 	left: 0;
 	height: 100%;
 	width: 540px;
 	max-height: 350px;
 	display: flex;
 	justify-content: center;
 	align-items: center;
 	background-color: rgba(0, 0, 0, 0.2);
 	text-transform: uppercase;
 	z-index: 2; /* tekst nad nakładką */
}
.stawy {
	margin-top: 20px;
	display: flex;
	justify-content: space-between;
}
@media (max-width: 1060px) {
.stawy {
	flex-direction: column;
	align-items: center;

}
}
.stawy a {
	max-width: 355px;
	overflow: hidden;
	position: relative;
		max-width: 400px;
	max-height: 250px;
}
.stawy a img {
	max-width: 355px;
	max-height: 355px;
	transition: all 0.5s ease-out;
}
.stawy a:hover img {
	transform: scale(1.1);
}
.stawy a h3 {
	position: absolute;
	font-size: 24px;
	text-shadow: #000 1px 1px 4px;
	color: #ffffff;
	bottom: 35px;
	left: 35px;
	font-weight: 700;
	max-width: 300px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-transform: uppercase;
	/* poprawa kontrastu: półprzezroczyste tło i padding */
	background-color: rgba(0, 0, 0, 0.6);
	padding: 8px 12px;
	border-radius: 4px;
	line-height: 1.1;
	z-index: 2;
}
/* DUPLICATE: header/navigation and basic list/nav rules are inlined in index.html as critical CSS.
	These rules are intentionally commented out here to avoid duplicate declarations between the
	inline critical CSS and the external stylesheet. If you prefer to keep all rules in the
	external stylesheet, remove the matching critical block from index.html instead.

	Original rules (summarized) were:
	ul { display:flex; list-style-type:none }
	li { margin:0 5px }
	li a { text-decoration:none; color:rgb(0,0,0); font-size:15px }
	li a:hover { color:black }
	.active { color:black; font-weight:bold }

	header, .header  (header layout and spacing)
	header div  (header column layout)
	header div div  (header right column)
	header div div span  (contact span)
	#logo  (logo positioning)
*/
h1, h4 {
	border-color: #3d4c73;
	background-position: center top;
	padding: 5px 0px 5px 0px;
	overflow: hidden;
	margin: 0 auto;
	color: #000000;
	font-weight: normal;
	text-align: center;
	letter-spacing: 0;
	min-height: 16px;
	text-indent: 0;
	max-width: 900px;
	line-height: 1em;
	text-transform: uppercase;
	border-top-style: solid;
	border-top-width: 1px;
	font-size: 12px;
	font-variant: normal;
}
/* DUPLICATE: #title and #title h1 are inlined in index.html (critical). Commented here. */
/*
#title {
	background-color: #f8f8f8;
	text-align: center;
}
#title h1 {
	border: none;
	font-size: 16px;
	padding: 15px;
	line-height: 1.4;
}
*/
h4 {
	background-color: #4360ab;
	color: #ffffff;
	font-size: medium;
	font-weight: bold;
	width: 100%;
}
h6 {
	color: #000;
	font-size: 14px;
	text-align: right;
	margin: 0 0 0 auto;
	font-weight: 300;
	padding: 5px 0 0;
}
h6 a {
	text-decoration: none;
	font-size: 16px;
	font-weight: 600;
	color: #76b729;
}
h6 a:hover {
	color: #333;
}
.ru {
	font-size: 16px;
}
.container {
	max-width: 1110px;
	background-color: #f5f5f5;
	margin: 0 auto;
	color: #222;
}
.top {
	position: absolute;
	z-index: 999;
	margin-top: 83px;
	width: 430px;
	height: 44px;
	color: #9d701c;
	padding-top: 20px;
	padding-left: 20px;
	font-size: 24px;
	font-weight: 700;
	line-height: 24px;
}
.top-bottom {
	position: absolute;
	height: 80px;
	width: 100%;
	margin-top: -136px;
}
.top-b {
	max-width: 960px;
	margin: auto;
}
h2 {
	padding: 12px 0;
	overflow: hidden;
	margin: 0 auto;
	font-size: x-large;
	color: #222;
	font-weight: normal;
	text-align: center;
	letter-spacing: 0;
	min-height: 24px;
	text-indent: 0;
	line-height: 24px;
	background-color: #ffffff;
	max-width: 960px;
	font-family: Arial, Helvetica, sans-serif;
}
h3 {
	color: gray;
	font-weight: 400;
}
article {
	margin-right: auto;
	margin-left: auto;
	padding: 0;
}
 /* DUPLICATE: original full .tresc rules are inlined as critical CSS in index.html.
   The complete rule was commented out to avoid duplication. If you prefer to keep the
   external rule instead of the inline critical CSS, restore the block below and remove
   the inline copy from index.html.

   .tresc {
	   padding: 10px;
	   line-height: 1.25em;
	   text-align: left;
	   font-weight: normal;
	   color: #6c6c6c;
	   font-size: medium;
   }
*/
.bold {
	font-weight: bold;
}
.italic {
	font-style: italic;
}
#author {
	min-height: 15px;
	padding-top: 15px;
	padding-bottom: 15px;
	font-size: 11px;
	padding-left: 0;
	text-align: center;
}
.photos {
	padding: 0;
	text-align: left;
	letter-spacing: 4px;
}
.photos img {
	margin-bottom: 5px;
}
footer {
	margin: 0 auto;
	max-width: 900px;
	color: #555;
	padding-top: 0;
	padding-bottom: 0;
	background-color: #fffefb;
}
#foot {
	padding: 0;
	margin-right: auto;
	margin-left: auto;
}
footer a {
	color: #000;
	font-size: medium;
	font-weight: normal;
}
footer #contact {
	background-position: right center;
	min-height: 40px;
	padding: 20px;
	text-align: center;
	letter-spacing: 0;
	font-size: medium;
	line-height: 1.35em;
	background-repeat: no-repeat;
	font-weight: normal;
	color: #000000;
}
footer #contact strong {
	font-weight: 700;
	font-size: 16px;
}
footer a:hover {
	color: #555;
}
#author img {
	border-style: none;
}
#author img.counter {
	vertical-align: -30%;
}
#author {
	color: #000000;
	max-width: 900px;
	margin: auto;
}

/* Kontakt - większa czytelność, większe odstępy i emoji zamiast ikon */
#contact {
	font-size: 22px; /* powiększona czcionka */
	line-height: 1.6; /* większe odstępy między wierszami */
	padding: 18px 16px;
	color: #111;
	text-align: left;
	max-width: 520px;
	margin: 0 auto;
}
#contact a {
	color: #000;
	text-decoration: none;
	display: inline-block;
	margin-top: 6px;
	font-size: 18px;
}
.emoji {
	font-size: 1.2em; /* emoji nieco większe */
	margin-right: 8px;
	vertical-align: middle;
}
#author {
	margin-top: 18px; /* więcej odstępu nad mapą/stopką */
}
#author a {
	color: #000000;
	font-size: small;
}
.prod {
	margin-right: auto;
	margin-left: auto;
	padding-top: 25px;
	max-width: 935px;
	background-color: #fff;
	padding-left: 25px;
	padding-bottom: 15px;
}
.prod .item {
	float: left;
	text-align: center;
	width: 213px;
	height: 216px;
	padding-top: 0;
	padding-bottom: 0;
	margin-right: 18px;
	margin-left: 0;
	margin-bottom: 18px;
}
.prod .item a {
	color: gray;
	font-weight: 700;
	font-size: 16px;
	text-decoration: none;
	line-height: 1em;
}
.prod .item a:hover {
	color: #9d701c;
}
.prod .item img {
	border-style: none;
	width: 213px;
	height: 156px;
}
.clear {
	clear: both;
	height: 0;
}
h2 img {
	border-style: none;
}
.large {
	font-size: 23px;
	font-weight: 400;
	line-height: 60px;
	letter-spacing: -2px;
	word-spacing: 4px;
}
.floating {
	float: right;
	margin-left: 20px;
	margin-top: 25px;
	margin-right: 20px;
	border: none;
}
.floatingleft {
	float: left;
	margin-left: 0;
	margin-top: 0;
	margin-right: 25px;
}
.google-maps {
	border-width: 0px;
	padding: 0px;
	height: 320px;
	margin: auto;
	width: 100%;
}
.spacer {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}
.mark2 {
	color: #9d701c;
}
.foto img {
	padding: 2px;
	background-color: #c0c0c0;
	margin: auto;
	width: 280px;
	font-size: small;
	color: #000000;
}
.foto {
	margin: auto;
	padding: 10px;
	text-align: center;
	text-decoration: none;
	font-size: small;
}
.foto a {
	margin: auto;
	padding: 5px 5px 20px 5px;
	text-align: center;
	display: inline-block;
	max-width: 280px;
	min-height: 20px;
	font-size: medium;
	font-style: normal;
	color: #000000;
}
.foto img:hover {
	background-color: #ccc;
}
.bar {
	background-repeat: repeat-x;
	background-position: center top;
	height: 15px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}
.box {
	width: 100%;
	background-repeat: repeat-x;
	background-position: center top;
}
.logo p {
	max-width: 1280px;
	margin: auto;
	z-index: 998;
	text-align: right;
	font-size: 15px;
	line-height: 17px;
	color: #fff;
}
.logo a {
	color: #fff;
	text-decoration: none;
	font-weight: 700;
}
.logo a:hover {
	color: #fff;
}
.bg_white {
	background-color: white;
}
.logo {
	background-position: center top;
	width: 100%;
	height: 45px;
	margin-top: 0;
	margin-left: 0;
	text-align: center;
	z-index: 999;
	background-repeat: no-repeat;
	padding: 13px 0;
}
#slideshow img {
	border: none;
}
.c1_2 {
	float: left;
	width: 50%;
	padding-top: 25px;
	padding-bottom: 25px;
}
.boxcontainer {
	width: 100%;
	padding: 0;
}
.bgins2 {
	background-color: #fff;
}
.fotos {
	line-height: 0;
}
.fotos img {
	width: 25%;
}
.left {
	text-align: left;
}
#menu li img {
	vertical-align: middle;
	border: none;
	font-size: 12px;
	color: #000000;
	font-weight: normal;
	font-style: normal;
	font-variant: normal;
	text-decoration: none;
}
.film {
	border-width: 0px;
	padding: 0px;
	height: 315px;
	margin: auto;
	width: 560px;
}
@media (max-width: 500px) {
.google-maps {
	border-width: 0px;
	padding: 0px;
	height: 150px;
	margin: auto;
	max-width: 900px;
	width: 100%;
}
.film {
	border-width: 0px;
	padding: 5px;
	height: 160px;
	margin: auto;
	width: 280px;
	text-align: center;
}
h2 {
	background-color: #0055ff;
	color: #000000;
	font-family: Arial, Helvetica, sans-serif;
	font-size: small;
	font-weight: normal;
	width: 80%;
	font-style: normal;
}
header, .header {
	background-image: url('../img/logo-male.jpg');
}
}
@media (max-width: 1000px) {
.oferta {
	grid-template-columns: repeat(1, minmax(0, 1fr));
}
.oferta a {
	margin: 0 auto;
}

.google-maps {
	border-width: 0px;
	padding: 0px;
	height: 160px;
	margin: auto;
	width: 100%;
}
header {
	flex-direction: column;
}
header img {
	margin-bottom: 10px;
}
nav ul li a img {
	margin: 0;
}
header div div {
	text-align: center;
	margin: 10px 0 0 0;
}
ul {
    display: inline;
    list-style-type: none;
    text-align: center;
}
li {
    display: inline-block;
}

}
@media (max-width: 540px) {
.oferta {
	gap: 1px;
}
.oferta a {
	max-height: 250px; /* Zmniejszona wysokość dla urządzeń mobilnych */
	max-width: 400px;
}
.oferta a, .oferta a img, .oferta a h3 {
	width: 100%;
	height: 100%;
}
.section_title {
	font-size: 20px;
}
.tresc {
	font-size: 14px;
}
}
