*{
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body{
	margin:0;
	padding: 0px;
	overflow-x: hidden;
}

header {
	width: 100vw;
	max-width: 100vw;
	height:100px;
	position: fixed;
	top:0;
	z-index: 10;
	display: flex;
	align-items: center;
	transition: 0.3s;
}

main  {
	margin: 0px auto;
	width: 100%;
}

footer{
	width: 100%;
}

header 	.naglowek {
	height: 100%;
	position: relative;
	align-items: stretch;
}
@media all and (min-width: 320px) and (max-width: 1023px){
	header {
		height: 60px !important;
	}
	.naglowek{
		display:none !important;
	}
}
.strona{
	position: relative;
	display: flex;
	flex-wrap: wrap;
	width: 100vw;
	max-width: 100vw;
	height: 100%;
	margin:0 auto;
	overflow-x: hidden;
}
.wiersz {
	flex: 1 1 100vw;
	max-width: 1232px;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: center;
}
.kolumna {
	flex-shrink: 1;
	flex-grow: 0;
}
.logo {
	flex: 0 1 141px;
	max-width: 20vw;
	height: 100vw;
	max-height: 84px;
	display: flex;
	align-self: center;
	margin: 0px 34px 0px 0px;
	background: url(../grafika/logo.png) center center no-repeat;
	background-size: cover;
	transition: 0.2s;
}
@media all and (min-width: 1024px) and (max-width: 1232px) {
	.logo {
		margin: 0px 34px 0px 16px;
	}
}
.logom {
	flex: 0 1 75px;
	max-width: 22vw;
	height: 100vw;
	max-height: 84px;
	display: flex;
	align-self: center;
	margin: 0px auto 0px 0px;
	background: url(../grafika/logom.png) center center no-repeat;
	background-size: cover;
	transition: 0.2s;
}
.logo span, .logom span {
	display: none;
}
.logo:hover, .logom:hover {
	opacity: 0.65;
}
.linki_gora_tlo {
	flex: 1 1;
	max-width: 70%;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	margin: 0px 0px 0px 0px;
}
.linki_gora {
	flex :0 0 100px;
	display: flex;
	justify-content: flex-end;
	position: relative;
	z-index: 10;
  top: 12px;
}

/*Kontrast czcionka*/

.kontrast-czcionka  {
	flex: 0 1 112px;
	display: flex;
	align-items: center;
	padding: 0px 0px 0px 0px;
	margin: 0px 0px 0px 0px;
}
.kontrast, .czcionka {
  flex: 1 1 24px;
	display: flex;
  padding: 0px;
  width: 24px;
	height: 32px;
  margin: 0px 0px 0px 0px;
  text-decoration-color: transparent;
	border-left: 1px solid #e7e7e7;
}
.czcionka {
	border-right: 1px solid #e7e7e7;
}
.kontrast a, .czcionka a {
	flex: 1 1;
  text-decoration-color: transparent;
	background-size: cover;
}
.kontrast a {
	background: url(../grafika/iko_kontast.png) center center no-repeat;
}
.czcionka a {
  background: url(../grafika/iko_czcionka.png) center center no-repeat;
}
.kontrast a span, .czcionka a span {
	display: none;
}

@media all and (min-width: 320px) and (max-width: 1023px) {
	.kontrast, .czcionka {
		border: none;
	}
	.czcionka {
		margin: 0px 0px 0px 4px;
	}
	.linki_gora_mob .szukaj-gora-ikona a i {
		font-size: 18px;
	}
}

/*Wyszukiwarka*/

.kontener-szukaj {
	width: 100vw;
	height: 39vw;
	max-height: 348px;
	margin: 120px auto 0px;
	background-image: url(../grafika/szukaj_tlo.png);
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: 0.3s;
}

@media all and (min-width: 320px) and (max-width: 1023px){
	.kontener-szukaj {
		display: none;
	}
}

/* Szukaj */

.szukaj-gora {
  border-radius: 39px;
  background-color: rgb(255, 255, 255);
  box-shadow: 5.353px 5.945px 0px 0px rgba(100, 211, 253, 4);
  width: 576px;
  height: 80px;
  display: flex;
}
.szukaj-gora form {
  flex: 1 1;
  display: flex;
  border: none;
}
.szukaj-gora label {
	display: none;
}
.szukaj-gora input {
	font-family: 'Open Sans', sans-serif;
  color: #000;
  font-size: 1.2em;
	font-weight: 400;
  padding: 6px 8px 6px 32px;
  margin: 0px 0px 0px 0px;
  width: 100%;
  background: none;
  border: none;
}
.szukaj-gora button {
  width: 96px;
  background: none;
  border: none;
  border-radius: 6px;
  padding: 0px 0px 0px 0px;
  cursor: pointer;
}
.szukaj-gora button i {
	font-size: 24px;
	color:#000;
}

.szukaj-gora-ikona a i span, .szukaj-gora button i span {
  display: none;
}

/* Szukaj ikona */

.szukaj-gora-ikona {
	display: none;
	flex: 0 1 30px;
	width: 30px;
	align-items: center;
	transition: 0.2s;
}
.szukaj-gora-ikona a {
	flex: 1 1;
	margin: 0px 0px 0px 16px;
	text-decoration-color: transparent;
}
.szukaj-gora-ikona a i {
	font-size: 20px;
	color:#000;
}

.kontrast a:hover, .czcionka a:hover, .a-fb:hover, .a-rss:hover, .szukaj-gora button:hover, .szukaj-gora-ikona a:hover {
	opacity: 0.55;
}

.menugora {
	flex: 1 1 100%;
	max-width: 100%;
	display: flex;
	margin: 0px 0px 0px 0px;
	transition: 0.2s;
}

/*Bloki w sekcji*/

.sekcja-strony {
	position: absolute;
	margin-top: -64px;
}
main .sekcja-strony:first-child {
	position: absolute;
	margin-top: -128px;
}
.blok-tlo {
	padding: 144px 0px 100px 0px;
	margin: 0px auto;
	width: 100vw;
	max-width: 1232px;
}
@media all and (min-width: 320px) and (max-width: 1023px){
	.blok-tlo {
		padding: 48px 0px 48px 0px !important;
	}
	.blok-tlo:nth-child(2) {
		padding: 96px 0px 48px 0px !important;
	}
}
main > .blok-tlo:last-child {
	padding: 144px 0px 144px 0px;
}
.blok	{
	margin: 0px auto 0px;
}
.blok-tytul	{
	width: 100%;
}
.blok-tresc	{
	width: 100%;
	padding: 0px 0px;
	opacity: 0;
	transition: opacity 1.5s;
	animation-timing-function: cubic-bezier(0.55, 0.06, 0.68, 0.19);
	-webkit-animation-timing-function: cubic-bezier(0.55, 0.06, 0.68, 0.19);
	display: flex;
}
@media all and (min-width: 320px) and (max-width: 1023px){
	.blok-tresc	{
		opacity: 1	;
	}
}
.blok-tresc img {
	max-width: 100%;
	height:auto;
}
.blok-tresc iframe, table {
	max-width: 100%;
}

/*Animacja*/
@keyframes pojawianie {
    from {opacity:0; transform: translate(0, 50px)}
    to {opacity:1; transform: translate(0, 0px);}
}

/*O firmie*/

.blok-tlo-o-firmie	{
	position:relative;
	width: 100vw;
	max-width: unset;
  background: url(../grafika/ofirmie_tlo.png) center top no-repeat;
	background-size: cover;
	padding: 144px 0px 208px 0px;
}
.o-firmie {
	flex: 1 1;
	display: flex;
	flex-wrap: wrap;
}
.o-firmie > * {
	flex: 1 1;
	display: flex;
	flex-wrap: wrap;
}
.o-firmie .o-firmie-foto {
	position: relative;
	flex: 1 1 100vw;
	max-width: 912px;
	display: flex;
	justify-content: space-between;
	margin: 64px auto 64px;
}
.o-firmie .o-firmie-foto > * {
	flex: 1 1 260px;
	width: 100vw;
	max-width: 250px;
	height: 50vw;
	max-height: 250px;
	overflow: hidden;
	display: flex;
	border: 16px solid #fff;
	border-radius: 125px;
}
.o-firmie .o-firmie-foto > * > * {
	flex: 1 1 100%;
	background-size: cover !important;
}
.o-firmie .o-firmie-foto > div:first-child span {
	background: url(../grafika/onas_1.png) center center no-repeat;
}
.o-firmie .o-firmie-foto > div:nth-child(2) span {
	background: url(../grafika/onas_2.png) center center no-repeat;
}
.o-firmie .o-firmie-foto > div:nth-child(3) span {
	background: url(../grafika/onas_3.png) center center no-repeat;
}
.o-firmie .o-firmie-tresc {
	flex: 1 1 100vw;
	max-width: 100%;
	position: relative;
}
.o-firmie .o-firmie-tresc * {
	padding: 0px;
	margin: 0px auto;
	width: 100%;
}
.o-firmie .o-firmie-tresc .firma_informacje {
	font-family: 'Open Sans', sans-serif;
  	font-weight: 700;
  	font-size: 24px;
	line-height: 28px;
  	text-align: center;
	color: #005291;
	max-width: 840px;
}
.o-firmie .o-firmie-tresc .firma_informacje + div {
	font-family: 'Open Sans', sans-serif;
  	font-weight: 400;
  	font-size: 18px;
	line-height: 22px;
  	text-align: center;
	color: #000;
	max-width: 840px;
	padding: 16px 0px 0px 0px;
}
.o-firmie .o-firmie-tresc .firma_przedmiot {
	font-family: 'Open Sans', sans-serif;
  font-weight: 700;
  font-size: 24px;
	line-height: 60px;
  text-align: center;
	color: #fff;
	background: #0077d3;
	width: 100vw;
	max-width: 1200px;
	margin: 40px 0px 0px 0px;
	box-shadow: 5.353px 5.945px 0px 2px rgba(0, 0, 0, 0.05);
}
.o-firmie .o-firmie-tresc .firma_przedmiot + div {
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 20px;
	color: #000;
	background: #fff;
	padding: 40px 0px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.o-firmie .o-firmie-tresc .firma_przedmiot + div > div {
	flex: 1 1 530px;
	width: 100vw;
	max-width: 530px;
	padding: 16px 12px;
	margin: 0px 30px;
	text-align: left;
	border-bottom: 1px solid #e7e7e7;
	display: flex;
}
.o-firmie .o-firmie-tresc .firma_przedmiot + div > div:first-child, .o-firmie .o-firmie-tresc .firma_przedmiot + div > div:nth-child(2) {
	border-top: 1px solid #e7e7e7;
}
.o-firmie .o-firmie-tresc .firma_przedmiot + div > div:before {
	font-family: "Font Awesome 5 Free";
	content: "\f061";
	font-size: 8px;
	color: #88c920;
	padding: 0px 8px 0px 0px;
}
.o-firmie .o-firmie-tresc .firma_nieruchomosci {
	font-family: 'Open Sans', sans-serif;
  font-weight: 700;
  font-size: 24px;
	line-height: 28px;
  text-align: center;
	color: #005291;
	width: 100vw;
	max-width: 1080px;
	padding: 80px 0px 0px 0px;
}
.o-firmie .o-firmie-tresc .firma_nieruchomosci + div {
	padding: 48px 0px 0px 0px;
	display: flex;
	justify-content: center;
	background: #fff;
}
.o-firmie .o-firmie-tresc .firma_nieruchomosci + div > div {
	flex: 1 1 184px;
	max-width: 184px;
	box-shadow: 5.353px 5.945px 0px 2px rgba(0, 0, 0, 0.05);
	justify-content: center;
	padding: 0px 0px 0px;
	box-sizing: border-box;
	display: flex;
	background: #fff;
}
.o-firmie .o-firmie-tresc .firma_nieruchomosci + div > div:hover {
	opacity: 0.65;
}
.o-firmie .o-firmie-tresc .firma_nieruchomosci + div > div > a {
	display: flex;
	flex-wrap: wrap;
	align-content: flex-start;
	justify-content: center;
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	font-size: 14px;
	line-height: 18px;
	color: #000;
	text-decoration-color: transparent;
	padding: 0px 0px 20px;
}
.o-firmie .o-firmie-tresc .firma_nieruchomosci + div > div > a strong {
	color: #005291 !important;
	padding: 8px;
}
.o-firmie .o-firmie-tresc .firma_nieruchomosci + div > div > img {
	padding: 0px 4px 0px 0px;
	width: 100vw;
	max-width: 174px;
	height: 100vw;
	max-height: 106px;
}
.o-firmie .o-firmie-tresc .firma_nieruchomosci + div > div > strong {
	font-size: 16px;
	color: #0074a0;
	padding: 16px 0px 12px 0px;
}
@media all and (min-width: 320px) and (max-width: 1023px) {
	.o-firmie .o-firmie-foto {
		display: none;
	}
	.o-firmie .o-firmie-tresc .firma_przedmiot, .o-firmie .o-firmie-tresc .firma_nieruchomosci	{
		max-width: 100%;
	}
	.o-firmie .o-firmie-tresc .firma_nieruchomosci + div {
		flex-wrap: wrap;
		background: none;
	}
	.o-firmie .o-firmie-tresc .firma_nieruchomosci + div > div {
		margin: 0px 0px 16px 0px;
	}
	.o-firmie .o-firmie-tresc {
		max-width: 100%;
		max-height: unset;
	}
	.o-firmie .o-firmie-tresc + div {
		width: 95%;
	}
}
.informacje-wiecej {
	display: none;
}
.o-firmie-tresc .informacje-wiecej {
	display: block;
	width: 238px;
	height: 72px;
	font-size: 0em !important;
	position: relative;
  right: -368px;
}

/* Usługi */

#menu-89 {
	position:relative;
	width: 100vw;
	max-width: unset;
	background: url(../grafika/uslugi_tlo.png) center top no-repeat;
	background-size: cover;
	padding: 0px 0px 240px 0px;
}
#menu-89:before {
	display: block;
	content: '';
	width: 100vw;
	height: 50vw;
	max-height: 10vw;
	background: url(../grafika/uslugi_fala_gora.png) center top no-repeat;
	background-size: cover;
	margin: -144px 0px 0px 0px;
}
#menu-89:after {
	position: absolute;
	bottom: 0px;
	display: block;
	content: '';
	width: 100vw;
	height: 50vw;
	max-height: 10vw;
	background: url(../grafika/uslugi_fala_dol.png) center top no-repeat;
	background-size: cover;
}
#menu-89 .blok-tytul {
	color: #fff;
}
#menu-89 .uslugi > div {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin: 0px 0px 0px 0px;
}
#menu-89 .uslugi > div > div:nth-child(2n+1) {
	flex: 1 1 30%;
	margin: 0px 24px 0px 0px;
	box-sizing: border-box;
}
#menu-89 .uslugi > div > div:nth-child(2n+2) {
	flex: 1 1 70%;
}
#menu-89 .uslugi > div > div {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	font-family: "Open Sans", sans-serif;
	font-size: 24px;
	line-height: 28px;
	font-weight: bold;
	color: #21bcf7;
	border: 1px solid #00679c;
	padding: 52px 30px;
}
#menu-89 .uslugi > div > div > div {
	padding: 16px 0px 0px 0px;
}
#menu-89 .uslugi > div > div > div {
	display: flex;
	font-family: "Open Sans", sans-serif;
	font-size: 16px;
	line-height: 28px;
	font-weight: 400;
	color: #fff;
	text-align: center;
	background: rgba(0, 0, 0, 0.01);
}
#menu-89 .uslugi > div > div > div > a, #menu-89 .uslugi > div > div > div > a > span > span, #menu-89 .uslugi > div > div > div > span {
	font-family: "Open Sans", sans-serif;
	font-size: 24px;
	line-height: 28px;
	font-weight: bold;
	color: #fff !important;
}
#menu-89 .uslugi > div > div > div > a:hover {
	opacity: 0.65;
}


@media all and (min-width: 320px) and (max-width: 1023px) {
	#menu-89:before, #menu-89:after {
		display: none;
	}
	#menu-89 .uslugi > div {
    display: flex;
		flex-wrap: wrap;
    justify-content: space-around;
    align-items: flex-start;
		margin: 0px auto;
		padding: 0px;
}
	#menu-89 .uslugi > ul > li {
		flex: 1 1 100vw !important;
		width: 100vw;
		max-width: 96vw;
		margin: 0px auto 16px !important;
		text-align: center;
	}
}

/* Pliki do pobrania */

#menu-91 .pliki-do-pobrania {
	display: flex;
	width: 100vw;
	max-width: 100%;
}
#menu-91 .blok-tytul  {
	background: none;
	padding: 0px 0px 0px 0px;
	margin: 0px 0px 24px 0px;
}
#menu-91 .pliki-do-pobrania > ul {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	flex-wrap: wrap;
	margin: 72px 0px 0px 0px;
}
#menu-91 .pliki-do-pobrania > ul > li {
	position: relative;
	flex: 0 1 384px;
	max-width: 384px;
	display: flex;
	justify-content: center;
	font-family: "Open Sans", sans-serif;
	font-size: 18px;
	line-height: 20px;
	font-weight: 400;
	color: #000;
	text-align: center;
	list-style: none;
	min-height: 72px;
  background: linear-gradient(to bottom, #8fd520 0%,#abe028 100%);
	padding: 0px 0px 0px 0px;
	margin: 0px 0px 40px 0px;
	border-radius: 48px;
}
#menu-91 .pliki-do-pobrania > ul > li:nth-child(3n+2) {
	margin: 0px 20px 40px;
}
#menu-91 .pliki-do-pobrania > ul > li:hover {
	opacity: 0.7;
}
#menu-91 .pliki-do-pobrania > ul > li a {
	flex: 1 1;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0px 24px 0px 72px;
	color: #000;
	text-decoration: none !important;
}
#menu-91 .pliki-do-pobrania > ul > li a:before {
	position: absolute;
	left: 20px;
	display: block;
	content: '';
	width: 40px;
	height: 40px;
	background: url(../grafika/ikona_pobierz_plik.png) center center no-repeat;
	margin: 0px 0px 0px 0px;
}
@media all and (min-width: 320px) and (max-width: 1023px) {
	#menu-91 .pliki-do-pobrania {
		width: 96vw;
		margin: 0px auto;
	}
	#menu-91 .pliki-do-pobrania > ul {
		padding: 0px;
		justify-content: space-around;
	}
	#menu-91 .pliki-do-pobrania > ul > li {
		margin: 0px 0px 16px !important;
	}
}

/* Galeria */

#menu-90 {
	position:relative;
	width: 100vw;
	max-width: unset;
	background: url(../grafika/galeria_tlo.png) center top no-repeat;
	background-size: cover;
	padding: 0px 0px 140px 0px;
}
#menu-90 .blok-tytul  {
	color: #fff;
	margin: 102px 0px 40px 0px;
	background: rgba(0, 0, 0, 0.01);
}
@media all and (min-width: 320px) and (max-width: 1023px) {
	#menu-90 .blok-tytul  {
		margin: 0px 0px 0px 0px;
	}
}
