﻿* {
	margin : 0;
	padding : 0;
	outline : 0;
	}
	body {
	background-position : center 100px;
	font-family : Ubuntu, Arial, sans-serif;
	color : #000;
	font-size : 14px;
	background-color : #fff;
	background-image : url(../img/head.png);
	background-repeat : repeat-x;
	}
	.mainbg {
	background-repeat : repeat;
	background-position : center top;
	}
	.slidercontainer {
	background-size : cover;
	background-position : center top;
	background-repeat : repeat;
	padding-top : 0;
	padding-bottom : 0;
	}
	.slide img{
		width: 980px;
		height: 306px;
	}
	@media (max-width:980px) {
		.slide img{
			width: 100%;
			height: 35vh;
		}
	}
	.shadow {
	background-position : center bottom;
	max-width : 1200px;
	margin : 0 auto;
	background-image : url(../img/shadows-bottom.png);
	background-repeat : no-repeat;
	padding-bottom : 28px;
	}
	#logo {
	position : absolute;
	width : 115px;
	height : 110px;
	padding : 0;
	z-index : 999;
	margin : 0;
	}
	header {
	background-position : 20px center;
	max-width : 940px;
	padding : 0 20px;
	margin : 0 auto;
	background-repeat : no-repeat;
	min-height : 90px;
	background-image : url(../img/logo.png);
	}
	nav {
	background-color : #f4f4f4;
	width : 100%;
	height: 50px;
	}
	#menu ul {
	list-style-type : none;
	text-align : right;
	padding : 7px 20px 10px;
	max-width : 960px;
	height: 100%;
	margin : auto;
	}
	#menu li {
	border-width : 1px;
	border-color : #ccc;
	display : inline-block;
	margin : 0;
	border-left-style : solid;
	text-align : center;
	}
	#menu li:first-child {
	border-left-style : none;
	}
	#menu li a {
	display : block;
	padding : 0 5px 0 6px;
	text-decoration : none;
	font-size : 12px;
	text-transform : lowercase;
	color : #000000;
	}
	#menu li a.active, #menu li a:hover {
	color : #db1515;
	}
	#menu li a img{
	height: 15px;
	width: 15px;
	}
	.heading {
	text-align : right;
	padding-top : 25px;
	color : #333;
	line-height : 1.2em;
	font-size : 14px;
	font-weight : 300;
	}
	.heading a {
	text-decoration : none;
	color : #304700;
	font-size : 18px;
	font-weight : 400;
	}
	.heading a:hover {
	color : #4b2c00;
	}
	h1, h4, h3{
	background-position : center top;
	padding : 20px;
	line-height : 1em;
	font-weight : 300;
	background-color : #466900;
	color : #fff;
	font-size : 23px;
	text-align : center;
	margin : 0 auto;
	background-repeat : no-repeat;
	max-width : 940px;
	}
	h3 {
	padding : 15px 20px 16px;
	text-align : center;
	font-weight : 300;
	font-size : 24px;
	margin : 0 auto;
	}
	.abs {
	width : 100%;
	margin : auto;
	background-color : #f8f8f8;
	}
	article {
	max-width : 1020px;
	margin : 0 auto;
	}
	@media (max-width: 980px) {
	article {
	margin : 0 auto;
	}
	}
	article p {
	padding : 20px;
	text-align : left;
	font-weight : 300;
	font-size : 15px;
	color : #666;
	}
	.name {
	font-size : 20px;
	font-weight : 500;
	color : #f30;
	}
	.clearfix {
	clear : both;
	height : 0;
	}
	.foto {
	text-align : center;
	padding : 20px 0;
	}
	.foto img:hover {
	transform : scale(1.08);
	transition-delay : 0.3s;
	transition-duration : 0.35s;
	}
	.foto img {
	padding : 0;
	margin : 2px;
	border : none;
	width : 188px;
	height: 188px;
	border : #ccc solid 1px;
	}
	.center {
	text-align : center;
	padding-bottom : 0;
	}
	.justify {
	text-align : center;
	}
	.center strong {
	font-weight : 600;
	font-size : 24px;
	color : #365002;
	}
	footer {
	line-height: 1.5;
	text-align : center;
	max-width : 980px;
	margin : 0 auto;
	}
	footer small {
	font-size : 11px;
	opacity : 0.85;
	margin-top : 10px;
	display : inline-block;
	}
	footer p {
	padding : 20px;
	font-size : 16px;
	text-align : center;
	}
	footer a {
	color : #888;
	}
	footer a:hover {
	color : #000;
	}
	.google-maps {
	border-width : 0;
	height : 320px;
	width : 100%;
	}
	#author {
	margin : 0 auto;
	text-align : center;
	padding : 10px 20px;
	font-size : 11px;
	color : #000000;
	background-color : #eee;
	max-width : 940px;
	}
	#author img {
	border : none;
	vertical-align : middle;
	}
	#author a {
	color : #555;
	}
	.inside {
	max-width : 480px;
	}
	@media (max-width: 944px) {
	.col1-4 {
	width : 50%;
	}
	.col1-2 {
	width : 100%;
	}
	}
	@media (max-width: 609px) {
	.heading {
	display : none;
	}
	#menu ul {
	text-align : center;
	}
	#logo {
	position : relative;
	width : 100%;
	text-align : center;
	padding-bottom : 20px;
	padding-top : 0;
	}
	header {
	background-position : center center;
	background-repeat : no-repeat;
	}
	h1 {
	padding : 15px 20px;
	}
	}
	@media (max-width: 310px) {
	body {
	background-image : none;
	}
	}
	@media (max-width: 759px) {
	.floating {
	display : none;
	}
	.center strong {
	font-size : 18px;
	}
	.col1-3 {
	width : 100%;
	}
	}
	@media (max-width: 479px) {
	.floating {
	display : none;
	}
	.inside {
	width : 100%;
	}
	}
	@media (max-width: 319px) {
	.push-left {
	display : none;
	}
	}
	.pdf {
	float : right;
	margin : 20px;
	text-align : center;
	background-color : #fff;
	padding : 20px;
	color : #666;
	text-decoration : none;
	font-size : 12px;
	font-weight : 400;
	}
	.pdf img {
	border-style : none;
	text-align : center;
	height : 64px;
	padding-bottom : 10px;
	}
	.pdf a {
	color : #000;
	}
	.pdf a:hover {
	color : #555;
	text-decoration : none;
	}
	@media (max-width: 479px) {
	.pdf {
	float : none;
	display : inline-block;
	width : 100%;
	margin : 10px 0;
	padding : 10px 0;
	}
	}
	.floating {
	float : right;
	margin : 0 0 0 20px;
	height : 190px;
	}
	.prod {
	text-align : center;
	padding : 25px 0;
	}
	.prod .item {
	display : inline-block;
	max-width : 23%;
	margin : 0.7% 0.5%;
	}
	.prod .item a {
	display : block;
	color : #777;
	padding-bottom : 20px;
	border : rgb(200, 200, 200, 0.5) solid 1px;
	font-size : 16px;
	font-weight : 300;
	}
	.prod .item img {
	width : 100%;
	}
	.prod .item a:hover {
	color : #6a2670;
	border : #ccc solid 1px;
	}
	.prod .item a:hover img {
	transform : scale(0.94);
	transition-duration : 0.35s;
	}
	.fotos img {
	width : 20%;
	}
	.fotos {
	line-height : 0;
	}
	@media (max-width: 639px) {
	.prod .item {
	max-width : 48%;
	margin : 0.7% 0.5%;
	}
	}
	@media (max-width: 359px) {
	.prod .item {
	max-width : 97%;
	margin : 2.7% 0.5%;
	}
	}
	/* Styl dla nowego slidera */
	.new-slider-container {
		width: 980px;
		max-width: 1200px;
		overflow: hidden;
		position: relative;
		height: 400px; /* Stała wysokość zapobiegająca CLS */
		margin: 0 auto; /* wycentrowanie kontenera */
	}

	.new-slider {
		display: flex;
		transition: transform 0.5s ease;
		height: 100%;
		/* width is not required when using flex with fixed slide basis */
	}

	.new-slide {
		flex: 0 0 100%; /* Każdy slajd zajmuje 100% szerokości kontenera */
		height: 100%;
	}

	.new-slide img {
		width: 100%; /* dopasuj obraz do rozmiaru slajdu */
		height: 100%;
		object-fit: cover; /* Zachowuje proporcje i wypełnia kontener */
		display: block; /* Usuwa przestrzeń pod obrazkiem */
	}

/* Zapewnienie responsywności */
@media (max-width: 768px) {
  .new-slider-container {
    height: 300px; /* Mniejsza wysokość na urządzeniach mobilnych */
	width: 100%;
  }
}

@media (max-width: 480px) {
  .new-slider-container {
    height: 200px; /* Jeszcze mniejsza wysokość na małych urządzeniach */
  }
}

/* Kontakt — stylizacja sekcji informacji kontaktowych */
footer .contact {
	gap: 20px;
	align-items: flex-start;
	justify-content: center; /* Wyśrodkowanie elementów w środku kontenera */
	padding: 18px;
	background: #f5fbef; /* delikatny, przyjazny kolor */
	border-radius: 6px;
	box-shadow: 0 1px 3px rgba(0,0,0,0.06);
	max-width: 760px; /* ograniczenie szerokości aby można było wycentrować */
	margin: 0 auto; /* wycentrowanie kontenera na stronie */
}
footer .contact-card {
	flex: 1 1 auto;
	text-align: center; /* Wyśrodkowanie tekstu w polu kontaktowym */
}
footer .contact-card h3 {
	background: none;
	color: #2b5b00;
	font-size: 20px;
	padding: 0 0 8px 0;
	margin: 0 0 6px 0;
	font-weight: 700;
	text-align: center;
}
footer .contact-name strong {
	color: #234d00;
	font-size: 24px;
}
address.contact-details {
	font-style: normal;
	color: #444;
	margin-top: 8px;
	font-size: large;
	line-height: 1.6;
	text-align: center; /* Wyśrodkowanie szczegółów kontaktu */
}
footer .contact-row {
	margin: 6px 0;
	display: flex;
	align-items: center;
	gap: 10px;
	justify-content: center; /* Wyśrodkowanie wierszy (ikona + tekst) */
}
footer .contact-row i {
	color: #7aa228;
	width: 22px;
	text-align: center;
}
footer .contact-row a { color: #2b5b00; text-decoration: none; font-weight: 600; }
footer .contact-row a:hover { text-decoration: underline; }
footer .contact-fb { width: 320px; min-width: 200px; display:flex; align-items:center; justify-content:center; }

@media (max-width: 768px) {
	footer .contact { flex-direction: column; }
	footer .contact-fb { width: 100%; }
		nav {
	background-color : #f4f4f4;
	width : 100%;
	height: 80px;
	}
}

/* Dodatkowe wymuszenie wyśrodkowania zawartości w przypadku nadpisania przez inne reguły */
footer .contact-card .contact-name,
footer .contact-card address.contact-details,
footer .contact-card address.contact-details .contact-row {
	text-align: center;
}
/* Upewnij się, że linki i tekst wewnątrz wierszy są traktowane jako inline-block i centrowane */
footer .contact-row a,
footer .contact-row i {
	display: inline-block;
	vertical-align: middle;
}
/* Mały odstęp po ikonie, żeby tekst nie przyklejał się do niej */
footer .contact-row i { margin-right: 8px; }

