/* ==================================================== Układ =============================================== */
/*#CONTAINER {
  width: auto;
}*/
/* ==================================================== Elementy ============================================ */
/* ------- Mobilne menu - przycisk --------- */
#mobile-menu-button {
 position: fixed;
 top:10px;
 right: 15px;
 width: 40px;
 height: 40px;
 background: #012563;
 display: none;
 transition: all 800ms;
}
#mobile-menu-button > span {
 position: absolute;
  top:50%;
  margin-top:-1px;
  left: 50%;
  margin-left:-11px;
  height: 3px;
  width: 22px;
  background-color: #fff;
  transition: transform 500ms;
  transition-delay: 0.3s;
}
#mobile-menu-button > span:before, #mobile-menu-button > span:after {
  position: absolute;
  display: block;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #fff;
  content: "";
  transition: all 500ms;
  transition-delay: 0.3s;
}
#mobile-menu-button > span:before {
   bottom: -8px;
  }
#mobile-menu-button > span:after {
   top:-8px;
  }
  
  nav.mobile-menu.show-me + #mobile-menu-button > span {
   transform: rotate(180deg);
  }
 nav.mobile-menu.show-me + #mobile-menu-button > span:after {
  transform: translateX(-1px) translateY(5px) rotate(-45deg);
  width:50%;
 }
 nav.mobile-menu.show-me + #mobile-menu-button > span:before {
  transform: translateX(-1px) translateY(-5px) rotate(45deg);
  width:50%;
 }
/* ------------ Mobilne menu ------------- */ 

.scroll-lock { /*blokowanie przewijania strony w tle */
  position: fixed;
}
/*.pop-up-menu {
	position: fixed;
	top:0;left:0;right:0;bottom:0;
	background:rgba(0, 0, 0, 0.8);
	display:none;
}*/
body.scroll-lock .pop-up-menu {
	display: block;
}
body.scroll-lock #mobile-menu-button {
	display:block;
}

nav.mobile-menu {
  display: block;
  /*position: fixed;*/
  /*right: 2.5%; top: 50px;*/
  position: fixed;
  right: -400px;
  top: 0;
	bottom:0;
  max-height: 100%;
  height:100%;
  width: 300px;
  max-width: 100%;
  
  padding: 0;
  float: none;
  z-index: 10000;
  overflow-y: auto;
  background: #fff; /* e */
	
	transition: all 800ms;
 box-shadow: 0 0 5px rgba(0,0,0,0.5);
 box-sizing: border-box;
 margin-right:0;
 padding-top: 50px;
 }
 nav.mobile-menu.show-me + #mobile-menu-button:after {
  content:'MENU';
  position: absolute;
  top: 0;right: -300px;left:40px;bottom:0;
  background: #fff;
  padding:5px 10px 5px 10px;
  border-bottom: 1px solid #ddd;
 }
 nav.mobile-menu.show-me {
  display: block;
  right:0;
}
 nav.mobile-menu.show-me + #mobile-menu-button {
  right:300px;
  right: 260px;
  z-index: 99999;
  background: #012563;
  top:0;
 }
  nav.mobile-menu.show-me + #mobile-menu-button > span, nav.mobile-menu.show-me + #mobile-menu-button > span::before, nav.mobile-menu.show-me + #mobile-menu-button > span::after {
  background-color: #fff;
 }
nav.mobile-menu ul {
  display: block;
  overflow: auto;
  position: relative;
  top:0;left:0;right:0;bottom:0;
/*  margin: 0;
  padding: 0;
  width: 100%;*/
padding-bottom:2em;
}
nav.mobile-menu ul li {
  margin: 0;
  display: block;
	padding:0 !important;
	/*border-bottom:1px solid #F1F1F1;*/
}
nav.mobile-menu ul li a {
  padding: 0.5em !important; /* e */
  height: auto;
  text-decoration: none;
	font-weight:300 !important;
  font-size: 1.1em; /* e */
  color: #333; /* e */
  background: #fff;
}
nav.mobile-menu ul li a span:before {
	display: none;
}
nav.mobile-menu ul a:hover span {
  transform: none;
}
nav.mobile-menu ul li a:hover, #mobile-menu-close, nav.mobile-menu ul li a.urhere {
	color: #333;
 background: #ffe51d;
}
nav.mobile-menu ul li ul { 
 /*display: none !important; */
	margin: 0;
	padding: 0;
	width: 100%;
	position: relative;
	top: auto;					/* !!!! podstaw wysokosc przycisku!!!! */
	left: auto;
 background: #eee;
 box-shadow: none;
}
nav.mobile-menu ul li ul li a {
 padding-left: 40px !important;
}
nav.mobile-menu #nav-addons {
  float: none;
  margin: 0;
  background: #eee;
  padding: 10px 15px;
  display:none;
}
nav.mobile-menu #nav-addons .header-mods {
 justify-content: space-between;
}
nav.mobile-menu #nav-addons > div {
  margin:0 !important;
}
nav.mobile-menu #nav-addons .contact-data-header {
 display:block;
}
nav.mobile-menu #nav-addons .contact-data-header .key {
 padding:0;
 margin-top:10px;
}
nav.mobile-menu #nav-addons .header-mods {
 height:auto !important;
}
/* ==================================================== Media Queries ======================================= */
/* -------------------------------------------------------------- */
@media screen and (max-width: 1560px) {
   html, body, input, textarea {
    font-size: 17px;
  }
  nav ul li a {
   font-size: 15px;
  }
  #logo {
   width:230px;
  }
  #logo img {
   padding: 10px 25px;
  }
  nav ul li a {
   padding: 23px 15px 47px 15px;
  }
  .contact-data-header .add_descr {
   display:none;
  }
/*    #TOP-EXTENDED, #TOP-MINI, .container {
    padding: 0 30px;
  }*/
}
/* -------------------------------------------------------------- */
@media screen and (max-width: 1366px) {



}
/* -------------------------------------------------------------- */
@media screen and (max-width: 1300px) {
  /* ----- przełączanie na mobilne menu ----- */  
/*  #TOP .contact-data-header {
 display:none;
}*/
  #mobile-menu-button {
    display: block;
  }
  nav {
    display: none;
  }
  #CONTAINER {
    width: auto;
  }
  #TOP, #HEADER-NO-IMAGE {
    margin-top: 0;
    height: 50px;
  }
  #TOP-EXTENDED {
   height:0;
  }
  #TOP .hr {
   display:none;
  }
  #TOP-MINI, #TOP-MINI .container {
   height: 50px; }
   #TOP-MINI {
    position: fixed;
    top: 0; left: 0; right: 0;
   }
#TOP-EXTENDED, #TOP-MINI {
 padding:0;
}
#logo {
 height:50px;
 width:100px;
 margin-bottom:-10px;
}
#logo img {
 padding: 5px;
}
#TOP #TOP-MINI, #TOP.sticked #TOP-MINI {
 position: fixed;
 top:0; right:0; left:0;
 background: #fff;
 transition: all 500ms;
 border-bottom: 4px solid #012563;
 top:0;
 opacity: 1;
}
#TOP #TOP-MINI, #TOP #TOP-MINI .container, #TOP #TOP-MINI .header-mods, #TOP #TOP-MINI nav, #TOP-EXTENDED, #TOP-EXTENDED .container {
 height:40px;
}

  nav {
   height: 100% !important; }

.start h1, .start h2 {
 font-size: 3rem;
}
.banner-section .caption h2 {
 font-size: 3rem;
}
 #TOP-EXTENDED .header-mods {
  position: fixed;
  top: 10px;
  z-index: 1;
  padding-right: 0;
 }
 #TOP-EXTENDED .header-mods .social {
  display: none;
 }
 #TOP-EXTENDED .header-mods .window-style .contact_data .button.show-region {
  height: 40px;
  margin-right: 10px;
 }
 #TOP-EXTENDED .header-mods .contact-data-header > div {
  width: 100%;
 }

}
/* -------------------------------------------------------------- */
@media screen and (max-width: 1220px) {

    .arrow-absolute {
     display:none;
    }
    .caption {
     padding-bottom: 20px;
    }
    #TOP-EXTENDED, #TOP-MINI {
     padding:0;
    }
    #HEADER-IMAGE {
     min-height:480px;
    }
    
    .add-banner-mod {
     display:block;
    }
    .add-banner-mod > #add-banner-mod-show {
     display:none;
    }
       .content-block.cb-text_content .text-wrapper.cb-col-4 {
  column-count: 3;
 }
.contentblocks .container {
    padding-right:65px;
}
.PAGE h1:first-child {
 padding-right:0;
}
.PAGE > .container.side-container {
 display:none;
}

}
/* -------------------------------------------------------------- */
@media screen and (max-width: 1000px) {

  html, body, input, textarea {
    font-size: 15px;
  }
  .page-section, .page-order-section {
   padding:60px 0;
  }
  .start .page-section {
   padding: 60px 0;
  }
 .start h1, .start h2 {
 font-size: 2.6rem;
}
.banner-section .caption h2 {
 font-size: 2.6rem;
}
    .columns-x2 {
   margin-left:-15px;
   margin-right:-15px;
  }
  .columns-x2 > div {
   padding-left:15px;
   padding-right:15px;
  }
  .simple-page .columns-x3 > div.contact-col {
   width: 50%;
  }
  .banner-section .caption, .banner-section .banner-img {
   position: relative;
   top:auto;
   left:auto;
   right:auto;
   bottom:auto;
  }
  .contact-col.map {
   display:none;
  }
  .banner-section .caption {
   padding-top: 200px;
  }
  .banner-section {
   padding-bottom:0;
  }
   .content-block.cb-text_content .text-wrapper.cb-col-3, .content-block.cb-text_content .text-wrapper.cb-col-4 {
  column-count: 2;
 }
 .add-banner-mod > #add-banner-mod-show {
  display:none;
 }

}
/* -------------------------------------------------------------- */
@media screen and (max-width: 800px) {
 
 h1 {
  font-size: 2.8rem;
 }
 .breadcrumps {
  flex-wrap: wrap;
  height: auto;
  min-height:50px;
  padding:0 10px;
 }
 div[data-grid="icon-tile"] > div, div[data-grid="icon-list-item"] > div {
  width:100%;
 }
 .icon-list-item, .icon-tile {
  height:auto !important;
 }
 .icon-tile {
  margin-bottom: 30px;
 }
 .icon-tile .content {
  padding-bottom:10px;
 }
 .button {
  height: 45px;
 }
 .mb-header, .specjal-header {
  padding-bottom: 30px;
 }
 .start .news > div {
  width:50%;
 }
 .start .news > div:nth-child(3) {
  display:none;
 }
 #BOTTOM .columns-x4 > div, #BOTTOM2 .columns-x4 > div {
  width:50%;
  margin-bottom:20px;
 }
 #BOTTOM .img-module {
  margin-top:0;
 }
 #BOTTOM .img-module img {
  max-width:200px !important;
 }
 #BOTTOM .container, #BOTTOM2 .container {
  padding-top: 30px;
  padding-bottom:30px;
 }
 #NEWS-PAGE-CONTENT .columns-x3 > div {
  width:50%;
 }
 
 .cb-container {
  flex-direction: column;
 }
 .cb-container > * {
  margin:0 !important;
  width:100%;
 }
 .cb-module .columns-x3 > div {
  width:50%;
 }
 .content-block.cb-text_content .text-wrapper.cb-col-2, .content-block.cb-text_content .text-wrapper.cb-col-3, .content-block.cb-text_content .text-wrapper.cb-col-4 {
  column-count: 1;
 }
 
 .page-section, .page-order-section {
  padding: 20px 0;
 }
 .columns-x2 > div {
  width:100%;
 }
 ul.gallery li {
  width: 24.5%;
 }
   .simple-page .columns-x3 > div.contact-col {
   width: 100%;
   height: auto !important;
  }
 
}
/* -------------------------------------------------------------- */
@media screen and (max-width: 600px) {
 .start h1, .start h2 {
  font-size: 2.5rem;
 }
 .container {
  padding: 0 15px;
 }
 .contentblocks .container {
    padding-right:15px;
}
 .breadcrumps {
  background:none;
  color: #666;
  padding:0;
 }
 .breadcrumps a, .breadcrumps a:hover {
  color: #666;
 }
 .banner-section .caption {
  padding-left:15px;
  padding-right:15px;
 }
 .icon-list-item .icon-list-ico img {
  width:20px;
 }
 .icon-list-item .content {
  padding-left: 5px;
 }
   .simple-page .columns-x4 > div {
   width: 100%;
  }
}
/* -------------------------------------------------------------- */
@media screen and (max-width: 500px) {
   
   #BOTTOM .columns-x4 > div, #BOTTOM2 .columns-x4 > div {
  width:100%;
  height:auto !important;
 }
  .start .news > div {
  width:100%;
 }
 .start .news > div:nth-child(3) {
  display:block;
 }
 #FOOT .container {
  flex-direction: column;
  padding:0;
 }
 #FOOT .container > * {
  margin-right:0 !important;
  margin-left:0 !important;
  padding-left:15px;
  padding-right:15px;
 }
  #FOOT .container .line {
   display:none;
  }
  #FOOT .container > .created {
   display: block;
   padding-top:5px;
   padding-bottom:5px;
   background: #eee;
   width: 100%;
   box-sizing: border-box;
   text-align: right;
  }
   #NEWS-PAGE-CONTENT .columns-x3 > div {
  width:100%;
 }
 
  .cb-container {
  flex-direction: column;
 }
 .cb-container > * {
  margin:0 !important;
  width:100% !important;
  max-width:100% !important;
 }
 .contact_data .phone-number {
  display: none;
 }
/* .phone-txt, .reveal-btn {
  display: none !important;
 }*/
 .call-btn {
  display: inline-flex !important;
 }
  .cb-module .columns-x3 > div {
  width:100%;
 }
 .call-btn {
  padding:5px 30px;
  margin-bottom:10px;
 }
 nav.mobile-menu #nav-addons .contact-data-header .key {
  margin-bottom:5px;
 }
 .header-mods {
  padding-right:0;
  flex-flow: column;
 }

 .contact-data-header, .contact-data-header > div {
  flex-flow: column;
  align-items: center;
  justify-content: center;
 }
  .contact-data-header .key {
   margin-bottom:5px;
  }
  
}

/* -------------------------------------------------------------- */
@media screen and (max-width: 440px) {
 .icon {
  width:40px;
  height:40px;
 }
 .icon-tile .content {
  padding-left:15px;
 }
/* nav.mobile-menu.show-me + #mobile-menu-button {
right: 100%;
margin-right: -40px;
 }*/
 ul.gallery li {
  width: 32.8%;
 }
}
/* -------------------------------------------------------------- */
@media screen and (max-width: 340px) {

#TOP-EXTENDED .header-mods {
 display: none;
}
}