#partnerzy,
#o-nas,
#galeria,
#kontakt {
  scroll-margin-top:77px;
}

#mapa{
  scroll-margin-top:0px;	
}

a{
  color: #000;
  text-decoration: none;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
form, fieldset, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td{
margin:0;
padding:0;
border:0;
outline:0;
font-size:100%;
vertical-align:baseline;
background:transparent;
}

b{
font-weight:600;
}

html{
font:normal 62.5%/1.4em Arial, "Helvetica Neue", Helvetica, Verdana, sans-serif;
}

blockquote, q{
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after{
  content: '';
}

ins{
text-decoration: underline;
}

del{
text-decoration: line-through;
}

table{
border-collapse:collapse;
border-spacing:0;
}

html{
scroll-behavior:smooth;  
}


body{
margin:0px;
padding:0px;
font-size:16px;
font-family: 'Poppins', sans-serif;
font-weight:400;
background:#000;
}


body input, body textarea, body button, body select{
font-family: 'Poppins', sans-serif;
}

.body-hide-ow{
overflow:hidden;
}

.container{
width:calc(100% - 40px);
max-width:1240px;
padding:0px 20px;
margin:0px auto;
}


/*HEADER TOP*/

.header-page{
padding-top:120px;
}

.header-page-block{
position:absolute;
top:0px;
left:0px;
width:100%;
-webkit-transition: 0.4s;
-moz-transition: 0.4s;
-o-transition: 0.4s;
transition: 0.4s;
z-index:999; 
background:#000;
border-bottom:1px solid #1d1d1d;
}

.header-page-block-f{
position:fixed;
top:0px;
left:0px;
width:100%;
-webkit-transition: 0.4s;
-moz-transition: 0.4s;
-o-transition: 0.4s;
transition: 0.4s;
z-index:999;
background:#000;
border-bottom:1px solid #1d1d1d;
}

.header-page-block-content{
display:flex;
justify-content:space-between;
align-items:center;
flex-wrap:nowrap;
}

.header-page-block-content-left{
display:flex;
justify-content:flex-start;
align-items:center;
flex-wrap:nowrap;
}

.header-page-block-content-right{
display:flex;
justify-content:flex-end;
align-items:center;
flex-wrap:nowrap;
}



.header-page-block .header-page-block-content-left-brand{
width:150px;
display:block;
margin:15px 0px;
-webkit-transition: 0.4s;
-moz-transition: 0.4s;
-o-transition: 0.4s;
transition: 0.4s;
}

.header-page-block-f .header-page-block-content-left-brand{
width:100px;
display:block;
margin:8px 0px;
-webkit-transition: 0.4s;
-moz-transition: 0.4s;
-o-transition: 0.4s;
transition: 0.4s;
}

.header-page-block-content-left-brand img{
width:100%;
height:auto;
}

.header-page-block-content-right-contact{
display:flex;
justify-content:flex-start;
align-items:center;
flex-wrap:nowrap;
}

.header-page-block-content-right-contact a{
display:flex;
justify-content:flex-start;
align-items:center;
flex-wrap:nowrap;
border-radius:8px;
background:#fed50f;
}

.top-contact-a{
width:18px;
height:18px;
-webkit-mask: url("../images/icon-phone.svg") no-repeat center;
mask:url("../images/icon-phone.svg") no-repeat center;
margin:15px 0px 15px 15px;
}



.header-page-block-content-right-contact a span{
font-size:18px;
font-weight:600;
color:#000;
-webkit-transition: 0.4s;
-moz-transition: 0.4s;
-o-transition: 0.4s;
transition: 0.4s;
margin:15px;
}

.header-page-block-content-right-contact a:hover span{
color:#000;
}

.header-page-block-content-right-contact a div{
-webkit-mask-size:contain;
mask-size:contain;
-webkit-transition: 0.4s;
-moz-transition: 0.4s;
-o-transition: 0.4s;
transition: 0.4s;
background-color:#000;
}

.header-page-block-content-right-contact a:hover div{
background-color:#000;
}


.header-page-block-content-right-nav{
margin-right:40px;
}

.header-page-block-content-right-nav ul{
display:flex;
justify-content:flex-start;
align-items:center;
flex-wrap:nowrap;
}

.header-page-block-content-right-nav ul li{
list-style-type:none;
margin:0px 0px 0px 40px;
}



.header-page-block-content-right-nav ul li a{
display:inline-block;
vertical-align:middle;
font-size:16px;
font-weight:600;
color:#fff;
position:relative;
-webkit-transition: 0.4s;
-moz-transition: 0.4s;
-o-transition: 0.4s;
transition: 0.4s;
}


.header-page-block-content-right-nav ul li a:hover,
.header-page-block-content-right-nav ul .current-menu-item  a{
color:#fff; 
}



.header-page-block-swecher{
height:22px;
width:36px;
border-top:4px solid #fff;
border-bottom:4px solid #fff;
cursor:pointer;
position:relative;
display:none;
margin:0px 0px 0px 25px;
}

.header-page-block-swecher::before{
content:'';
position:absolute;
top:50%;
left:0px;
width:100%;
height:4px;
background:#fff;
margin-top:-2px;
}

.header-page-block-content-right-nav-close{
position:absolute;
top:20px;
right:20px;
width:30px;
height:30px;
background:#fff url('../images/zam.png') no-repeat center center;
background-size:40% 40%;
border-radius:50%;
cursor:pointer;
display:none;
}


/*MAPA*/

.map-openstreet{
padding:20px 0px;
}

.map-openstreet h1{
font-size:26px;
color:#fed50f;
font-weight:700;
margin-bottom:20px;
padding-top:20px;
text-align:center;
padding:0px 20px;
line-height:normal;
}

.map-openstreet h2{
font-size:24px;
color:#fff;
font-weight:700;
margin-bottom:20px;
padding-top:20px;
text-align:center;
padding:0px 20px;
line-height:normal;
}

.map-openstreet p{
font-size:16px;
color:#fff;
text-align:center;
line-height:24px;
padding:0px 20px 20px 20px;
}

.map-openstreet p a,
.map-openstreet p a:hover{
font-size:16px;
color:#fed50f;
}

.section-subpage{
padding:50px 0px;
}

.section-subpage h1{
font-size:24px;
color:#fff;
font-weight:700;
margin-bottom:40px;
text-align:center;
}

.section-subpage-content-map{
position:relative;
}

.section-subpage-content-map{
position:relative;
overflow:initial;
width:100%;
height:600px;
}

.section-subpage-content-map #map{
width:100%;
height:600px;
}

.ol-popup {
  position: absolute;
  background-color: #000;
  box-shadow: 0 1px 4px rgba(0,0,0,0.2);
  padding: 12px 14px;
  border-radius: 10px;
  border: 1px solid #000;
  bottom: 12px;
  left: -50px;
  min-width: 220px;
  color:#fff;
  line-height:normal;
}

.ol-popup .mm, .ol-popup .mm:hover{
  color:#fff;
  display:inline-block;
  padding:10px 15px;
  border-radius:12px;
  border:1px solid #fff;
  margin-top:10px;
}


.ol-popup:after, .ol-popup:before {
  top: 100%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}
.ol-popup:after {
  border-top-color: black;
  border-width: 10px;
  left: 48px;
  margin-left: -10px;
}
.ol-popup:before {
  border-top-color: #000;
  border-width: 11px;
  left: 48px;
  margin-left: -11px;
}
.ol-popup-closer {
  text-decoration: none;
  position: absolute;
  top: 6px;
  right: 8px;
}
.ol-popup-closer:after {
  content: "✖";
  font-size: 14px;
  color: #fff;
}


/*MAPA OBRAZEK*/

.map-image{
padding:20px 0px; 
}

.map-image-container{
border:1px solid #1d1d1d;
}

.map-image-container-img{

}

.map-image-container-img img{
width:100%;
height:auto;
}

/*LOGA*/


.home-page-brands{
padding:80px 20px;
}


.home-page-brands-content-block{
display:flex;
justify-content:flex-start;
align-items:stretch;
flex-wrap:wrap;
margin:0px -10px; 
}

.home-page-brands-content-block-item{
width:calc(25% - 20px);
margin:0px 10px;
}

.home-page-brands-content-block-item-img{
height:240px;
border:1px solid #fff;
}

.home-page-brands-content-block-item-img img{
height:100%;
width:100%;
object-fit:contain;
object-position:center;
-webkit-filter:grayscale(0%);
filter: grayscale(0%);
-webkit-transition: 0.4s;
-moz-transition: 0.4s;
-o-transition: 0.4s;
transition: 0.4s;
}

a:hover .home-page-brands-content-block-item-img img{
-webkit-filter:grayscale(100%);
filter: grayscale(100%);

}

.home-page-brands-content-block-item-text{
padding-top:20px;
font-size:16px;
color:#fff;
text-align:center;
line-height:24px;
padding-bottom:20px;
}


/*SEKCJA O NAS*/

.section-about-us{
padding:40px 0px;
}

.section-about-us h1{
font-size:24px;
color:#fff;
font-weight:700;
margin-bottom:40px;
text-align:center;
}

.section-about-us-text p{
font-size:18px;
color:#fff;
line-height:26px;
text-align:justify;
}

.page-text-one p{
font-size:18px;
color:#fff;
line-height:26px;
}

.page-text-one.page-text-padding-a p{
padding-bottom:40px;
}

/*GALERIA*/

.section-gallery{
padding:40px 0px;
}

.section-gallery h2{
font-size:24px;
color:#fff;
font-weight:700;
margin-bottom:40px;
text-align:center;
}

.section-gallery-block{
display:flex;
justify-content:flex-start;
align-items:stretch;
flex-wrap:wrap;
margin:0px -10px;
}

.section-gallery-block-item{
width:calc(33.3333333333333333333333% - 22px);
margin:0px 10px 20px 10px;
height:260px;
border:1px solid #1d1d1d;
position:relative;
cursor:pointer;
}

.section-gallery-block-item-img{
position:absolute;
top:0px;
left:0px;
width:100%;
height:100%;
}

.section-gallery-block-item-img::before{
content:'';
position:absolute;
top:50%;
left:50%;
width:60px;
height:60px;
background:#000;
border-radius:50%;
margin:-30px 0px 0px -30px;
-webkit-transition: 0.4s;
-moz-transition: 0.4s;
-o-transition: 0.4s;
transition: 0.4s;
opacity:0;
}

.section-gallery-block-item-img::after{
content:'';
position:absolute;
top:50%;
left:50%;
margin:-13px 0px 0px -13px;
width:26px;
height:26px;
-webkit-mask: url("../images/magnifying-glass-solid-full.svg") no-repeat center;
mask:url("../images/magnifying-glass-solid-full.svg") no-repeat center;
background-color:#fff;
-webkit-transition: 0.4s;
-moz-transition: 0.4s;
-o-transition: 0.4s;
transition: 0.4s;
opacity:0;
}

.section-gallery-block-item:hover  .section-gallery-block-item-img::before,
.section-gallery-block-item:hover  .section-gallery-block-item-img::after{
opacity:1;
}

.section-gallery-block-item-img img{
width:100%;
height:100%;
object-position:center;
object-fit:cover;
}


/*SEKCJA O NAS*/

.section-contact{
padding:40px 0px 60px 0px;
}

.section-contact h3{
font-size:24px;
color:#fff;
font-weight:700;
margin-bottom:40px;
text-align:center;
}

.section-contact p{
font-size:18px;
color:#fff;
line-height:26px;
text-align:center;
}

.section-contact p a,
.section-contact p a:hover{
font-size:18px;
color:#fff;
line-height:26px;
text-align:center;
}


/*STOPKA*/

.footer-page{
padding:20px 0px;
background:#1d1d1d;
}

.footer-page-block{
text-align:center;
font-size:14px;
color:#fff;
line-height:26px;
}

.footer-info{
position:fixed;
bottom:0px;
width:100%;
height:60px;
background:#fff;
display:flex;
justify-content:center;
align-items:center;
flex-wrap:nowrap;
display:none;
}

.footer-info-a{
width:18px;
height:18px;
-webkit-mask: url("../images/icon-phone.svg") no-repeat center;
mask:url("../images/icon-phone.svg") no-repeat center;
-webkit-mask-size:contain;
mask-size:contain;
margin:15px 15px 15px 0px;
background-color:#000;
}

.footer-info-b{
font-size:18px;
color:#000;
line-height:26px;
font-weight:700;
}



/*GALERIA SKRYPT*/


.okno-realizacje{
position: fixed;
top:0px;
left:0px;
width:100%;
height:100%;
background:rgba(0,0,0,0.8);
z-index:9999999;
display:none;
}

.okno-realizacje-zaw{
position:absolute;
top:50px;
left:120px;
width:calc(100% - 240px);
height:calc(100% - 100px);
text-align:center;    
}


.okno-realizacje-zaw img{
width:100%;
height:100%;
object-fit:contain;
object-position:center;
}

.okno-realizacje-load{
position: absolute;
left:50%;
top:50%;
margin-left:-25px;
margin-top:-25px;
border: 2px solid #fff;
border-top: 2px solid transparent; 
border-radius: 50%;
width: 50px;
height: 50px;
animation: spin_gal 2s linear infinite;
display:none;
}

@keyframes spin_gal {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.okno-realizacje-zam{
position: absolute;
top:50px;
right:50px;
width:40px;
height:40px;
cursor:pointer;
background:#fff url('../images/zam.png') no-repeat center center;
}

.okno-realizacje-lewo{
position:absolute;
top:50%;
left:0px;
width:40px;
height:40px;
background:#fff url('../images/arrow-left2.png') no-repeat center center;
padding:0px;
margin:-20px 0px 0px 0px;
border:0px;
cursor:pointer;
}

.okno-realizacje-prawo{
position:absolute;
top:50%;
right:0px;
width:40px;
height:40px;
background:#fff url('../images/arrow-right2.png') no-repeat center center;
padding:0px;
margin:-20px 0px 0px 0px;
border:0px;
cursor:pointer;
}

.home-page-brands-ng{
font-size:24px;
color:#fff;
font-weight:700;
margin-bottom:40px;
text-align:center;
}

