body {
    font-family: 'Source Sans Pro', sans-serif;
	min-width: 1040px;
	height: 100%;
}
@font-face {
	font-family: "linecons";
	src: url('fonts/linecons.eot');
	src: url('fonts/linecons.eot?#iefix') format('eot'),  
		 url('fonts/linecons.svg#linecons') format('svg');
	font-weight: normal;
	font-style: normal;
}
h1 {
    font-size: 180%;
    font-weight: 300;
    margin: 46px 0 30px 10px;
}
h2 span {
	color: #cc0000;
	font-family: 'Cinzel', serif;
}
h3 {
    font-size: 180%;
    font-weight: 300;
    margin: 46px 0 30px 10px;
}
h4 {
    font-size: 120%;
    font-weight: 400;
    color: #fff;
}
.pxline {
    height: 180px;
    width: 100%;
    background-color: #fff;
    color: #fff;
    opacity: 0.2;
    position: relative;
    top: -140px;
    z-index: 1;
}
.cleanit {
    visibility: hidden;
    clear: both;
    margin-bottom: 20px;
}
.makegap {
    visibility: hidden;
    clear: both;
    margin-bottom: 60px;
}
.cara {
    clear: both;
    width: 940px;
    height: 1px;
    background-color: #cccccc;
    margin-top: 40px;
    margin-left: 10px;
}
.carag {
    clear: both;
    width: 100%;
    height: 1px;
    background-color: #cccccc;
    margin-top: 40px;
}
/* ---------- Header ---------- */
#header {
    min-width: 980px;
    height: 75px;
	margin: auto;
}
#header_in {
    width: 980px;
    padding: 0 10px 0 10px;
    height: 75px;
    margin: auto;
    position: relative;
}
#header_in h1 {
    font-size: 15pt;
    letter-spacing: 1px;
    float: left;
    padding-top: 25px;
}
#header_in h1 a {
    text-decoration: none;
    color: #111;
    font-weight: 100;
}
#header_in h1 a b {
    font-weight: 600;
}
/* ----- Menu ----- */ 
#menu {
	position: absolute;
	margin-left: 320px;
	font-size: 105%;
	margin-right: 0;
	background: url('img/menu_cut.jpg') scroll no-repeat center;
}
#menu ul li {
	float: left;
}
#menu ul li a {
	text-decoration: none;
	color: #101115;
	text-transform: uppercase;
	font-weight: 300;
	letter-spacing: 1px;
	display: block;
	padding: 29px 40px 0 40px;
	height: 46px;
	background: #fff;
}  
#menu ul li a:hover {
	background-color: #f3f3f3;
}
#menu ul li a.active {
	background: none;
	color: #fff;
	font-weight: 400;
}
/* ---------- Main part (slider) ---------- */
#main_part, #main_part_inner {
    width: 100%;
	min-width:980px;
    height: 565px;
    background: url('img/main_img_1.jpg') scroll no-repeat center;
    background-color: #000;
    border-bottom: 12px solid #e5e5e5;
	margin: auto;
	margin-top: -120px;
}
#main_part_logo {
	width: 320px;
	height: 75px;
	position: absolute;
	left: 5px;
	max-height: 100%;
	background: url('img/logo.jpg') scroll no-repeat right;
	background-size: 320px;
	background-color: #fff;
}
#main_part_in, #main_part_inner_in {
    width: 980px;
    margin: auto;
	margin-top: 120px;
}
#main_part_in h2 {
    padding-top: 120px;
    padding-bottom: 14px;
    font-size: 280%;
    font-weight: 200;
    text-align: center;
    color: #fff;
    text-shadow: 0 1px #000;
	font-family: 'Nothing You Could Do', cursive;
}
#main_part_in p {
    font-size: 150%;
    font-weight: 300;
    color: #fff;
    text-align: center;
    text-shadow: 0 1px #000;
	font-family: 'Quicksand', sans-serif;
}
/* ---------- Main part, inner pages (headline) ---------- */
/* -- Some of the css already included in the previous "Main part" for homepage -- */		
#main_part_inner {
	width: 100%;
    height: 150px;
	background: url('img/main_img_2.jpg') scroll no-repeat center;
	background-color: #000;
}		
#main_part_inner_in {
    position: relative;
}		
#main_part_inner_in h2 {
	padding-top: 46px;
	padding-bottom: 14px;
	font-size: 280%;
	font-weight: 200;
	text-align: center, left;
	color: #fff;
	text-shadow: 0 1px #000;
}
#content_gallery {
	margin: auto;
	position: relative;
	max-width: 900px;
}
/* ---------- Content ---------- */
#content {
    width: 960px;
    margin: auto;
    padding-top: 40px;
}
#content_inner {
    width: 960px;
    margin: auto;
    padding-top: 0;
}
/* --- thirds / fourths (homepage) / sixths (about)--- */
.thirds {
	width: 300px;
	margin: 0 10px 0 10px;
	float: left;
}	
.thirds h3 {
	margin-top: 0;
	margin-left: 0;
	font-size: 140%;
	font-weight: 300;
	color: #27292a;
	margin-bottom: 18px;   
}
.thirds p {
	font-size: 90%;
	color: #37393a;
	line-height: 160%;
    }
.fourths_portfolio {
	width: 100%;
	height: 540px;
	margin: auto;
	float: left;
	background-color: black;
}
.fourths_portfolio img{
    width:100%;
    max-width:100%;
    height:100%;
    max-height:100%;
}
.fourths_portfolio img {
	display: block;
	width: 100%;
	height: 100%;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.fourths_portfolio img:hover {
	opacity: 0.30;
}
.fourths_portfolio h4 {
	width: 1092px;
	position: absolute; 
	bottom: 150px;
	display: block;
	text-align: center;
	text-shadow: 0 2px #6d6f70;
	font-size: 500%;
	z-index: 3;
}
.fourths_portfolio span {
	font-size: 90%;
	font-weight: 200;
	text-shadow: 0 1px #6d6f70;
}
#boss {
    float:left;
	box-shadow: 5px 5px 5px 0 rgba(0, 0, 0, 0.3);
	margin-left: 10px;
    width: 300px;
    height: 400px;
    background: url('img/boos.jpg') scroll no-repeat center;
    background-size: cover;
}
.boos_d {
    float: right;
	width: 100%;
	height: 400px;
}
/* --- How we work? ---*/
.history_blok {
	background-color: #1e2022;
	box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.3);
	min-width: 855px;
	min-height: 100px;
	margin: 0 0 0 10px;
	padding: 43px 40px 30px 45px;
}	
.history_blok h3 {
	color: #f8f9f9;
	font-weight: 200;
	margin: 0;
}
.history_blok .milestones {
	margin: 30px 0 0 -13px;
}
.milestone1 {
	padding-bottom: 50px;
	width: 100%;
	float: left;
}
.miles {
	margin-bottom: 10px;
	font-size: 130%;
	font-weight: 300;
	line-height: 120%;
	color: #e9ecef;
	}
.miles b {
	font-size: 105%;
	font-weight: 500;
}
.descr {
	margin-top: 2px;
	margin-left: 20px;
	color: #a4a8ad;
	font-size: 120%;
	font-weight: 400;
	line-height: 110%;
}
.moreabout {
    background-color: #1e2022;
	box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.3);
    min-width: 855px;
	min-height: 100px;
	margin: 0 0 0 10px;
	padding: 43px 40px 30px 45px;
	border-top: 1px #292b2d solid;
}
.moreabout p {
	width: 860px;
	color: #e9ecef;
	font-size: 115%;
	font-weight: 200;
	line-height: 160%;
	margin-bottom: 25px;
}	
.moreabout b {
	font-size: 130%;
	font-weight: 300;
	color: #fff;
}
.moreabout h3 {
	font-weight: 400;
	color: #fff;
	color: #f8f9f9;
	margin: 0;
}
/* ----- Services (About us) ---- */
a.services_list {
	width: 298px;
	height: 85px;
	display: block;
	float: left;
	margin: 8px 10px 12px 10px;
	border: 1px #ccc solid;
	text-decoration: none;
	color: #333;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	position: relative;
}
a:hover.services_list {
	background-color: #1e2022;
	border: 1px #1e2022 solid;
	color: #e4e4e4;
	font-weight: 100;
}
.services_list span {
	display: block;
	float: left;
	width: 179px;
	margin-left: 100px;
	font-size: 105%;
	padding-top: 19px;
}
.services_list span b {
	font-weight: 400;
	line-height: 140%;
}
a.services_list span.icon_services {
	display: block;
	float: left;
	width: 62px;
}
/* ---- Web Icons (linecons) ---- */
.ico_paperplane:before, .ico_iphone:before, .ico_food:before, .ico_message:before, .ico_mapmark:before, .ico_shop:before {
	font-family: linecons;
	font-weight: 100;
	font-style: normal;
	font-size: 310%;
	position: absolute;
	top: 14px;
	left: 17px;
	-webkit-font-smoothing: antialiased;
}
.ico_paperplane:before {
	content: "\e01e";
}
.ico_iphone:before {
	content: url('img/telicon.png');
	left: 20px;
}		    
.ico_food:before {
	content: "\e026";
	left: 19px;
	top: 13px;
}
.ico_message:before {
	content: url('img/pocztaicon.png');
	left: 21px;
}
.ico_mapmark:before {
	content: url('img/mapicon.png');
	left: 21px;
}
.ico_shop:before {
	content: "\e02a";
	left: 22px;
}
/* ---- Our Work (portfolio stuffs) ---- */	
#work_filter {
    margin: 60px 0 42px 0;
}
#work_filter li a, .pagination li a {
    text-decoration: none;
    color: #27292a;
    font-size: 100%;
    font-weight: 200;
    letter-spacing: 1px;
}
#work_filter li a:hover, .pagination li a:hover {
    color: #000;
    font-weight: 400;
}
#work_filter li a.active, .pagination li a.active {
    font-weight: 400;
}
#work_filter li, .pagination li {
    display: inline;
}
.pagination {
	text-align: right;
	margin-top: 20px;
}
p.youlike, p.teamline {
    font-size: 125%;
    font-weight: 400;
    line-height: 150%;
    width: 620px;
    color: #323536;
    margin: 10px 0 0 10px;
}
p.teamline {
    display: inline-block;
    font-size: 110%;
    margin: 0 0 20px 10px;
}
/* ---------- Kontakt | Contact --------- */
.contactinfo {
    position: relative;
    float: left;
    margin-right: 40px;
}
.contactinfo .ico_mapmark:before, .ico_message:before, .ico_iphone:before {
    font-size: 140%;
    top: 0;
    left: 10px;
}
.contactinfo b {
    font-size: 110%;
    font-weight: 300;
    padding-left: 45px;
}
.mapit {
    width: 940px;
	height: 520px;
    margin: 30px 0 0 10px;
	box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.3);
}
/* ---- Galeria | gallery ----*/
.item-grid {
	margin: 100px auto;
	position: relative;
	overflow: hidden;
}
.item {
	box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.3);
	position: relative;
	margin: 20px 20px;
	width: 96%;
	height: 400px;
	background-color: #808080;
	overflow: hidden;
}
.item:after {
	content: "";
	display: block;
	background-color: inherit;
	opacity: 0.8;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	-webkit-transform: scale(2) translateX(-75%) translateY(-75%) translateZ(0) rotate(-28deg);
    -moz-transform: scale(2) translateX(-75%) translateY(-75%) translateZ(0) rotate(-28deg);
    -ms-transform: scale(2) translateX(-75%) translateY(-75%) translateZ(0) rotate(-28deg);
    -o-transform: scale(2) translateX(-75%) translateY(-75%) translateZ(0) rotate(-28deg);
    transform: scale(2) translateX(-75%) translateY(-75%) translateZ(0) rotate(-28deg);
	transition: -webkit-transform 3s cubic-bezier(0.23, 1, 0.32, 1);
	transition: transform 3s cubic-bezier(0.23, 1, 0.32, 1);
	transition: transform 3s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 3s cubic-bezier(0.23, 1, 0.32, 1);
}
.item:hover:after {
	-webkit-transform: scale(2) translateX(0%) translateY(0%) translateZ(0) rotate(-28deg);
    -moz-transform: scale(2) translateX(0%) translateY(0%) translateZ(0) rotate(-28deg);
    -ms-transform: scale(2) translateX(0%) translateY(0%) translateZ(0) rotate(-28deg);
    -o-transform: scale(2) translateX(0%) translateY(0%) translateZ(0) rotate(-28deg);
    transform: scale(2) translateX(0%) translateY(0%) translateZ(0) rotate(-28deg);
}
.item:hover .item-image {
	-webkit-transform: scale(1.2) translateZ(0);
    -moz-transform: scale(1.2) translateZ(0);
    -ms-transform: scale(1.2) translateZ(0);
    -o-transform: scale(1.2) translateZ(0);
    transform: scale(1.2) translateZ(0);
}
.item:hover .item-text {
	opacity: 1;
	-webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
}
.item-image {
	height: auto;
	-webkit-backface-visibility: hidden;
    backface-visibility: hidden;
	-webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0);
	transition: -webkit-transform 750ms cubic-bezier(0.23, 1, 0.32, 1);
	transition: transform 750ms cubic-bezier(0.23, 1, 0.32, 1);
	transition: transform 750ms cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 750ms cubic-bezier(0.23, 1, 0.32, 1);
}
.item-image::before {
	content: "";
	display: block;
	padding-bottom: 75%;
	overflow: hidden;
}
.item-image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	line-height: 0;
}
.item-text {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	opacity: 0;
	text-align: center;
	z-index: 1;
	color: #ffffff;
	transition: opacity 500ms cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 500ms cubic-bezier(0.23, 1, 0.32, 1);
	transition: opacity 500ms cubic-bezier(0.23, 1, 0.32, 1), transform 500ms cubic-bezier(0.23, 1, 0.32, 1);
	transition: opacity 500ms cubic-bezier(0.23, 1, 0.32, 1), transform 500ms cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 500ms cubic-bezier(0.23, 1, 0.32, 1);
	transition-delay: 300ms;
	-webkit-transform: translateY(-20%);
    -moz-transform: translateY(-20%);
    -ms-transform: translateY(-20%);
    -o-transform: translateY(-20%);
    transform: translateY(-20%);
}
.item-text-wrapper {
	width: 100%;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
}
.galtitle{
	padding-top: 46px;
	padding-bottom: 14px;
	font-size: 280%;
	font-weight: 200;
	text-align: center ;
	color: #fff;
	text-shadow: 0 1px #000;
}
.item-link {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
	line-height: 0;
	overflow: hidden;
}
/* ---------- Stopka | footer ---------- */
 #push {
	clear:both; 
	height:29px;
}
#footer {
    position:relative;
	bottom:0;
    width: 100%;
    height: 182px;
    background: url('img/main_img_1.jpg') scroll no-repeat bottom center;
    background-color: #000;
    color: #a5a5a5;
    font-weight: 300;
    font-size: 90%;
}
#footer_inp {
    width: 960px;
    margin: auto;
    position: relative;
    padding-top: 50px;
	text-align: right;
}
#footer_inl {
    width: 960px;
    margin: auto;
    position: relative;
    padding-top: 50px;
	text-align: left;
	top: +68px;
}
/* --- GALERIA | GALLERY ---*/
.gallery-content {
  font-size: 0;
  letter-spacing: 0;
  line-height: 0;
  margin-bottom: 1rem;
  text-align: center;
}

.gallery-content a {
  background: no-repeat center / cover;
  border: 3px solid #737c85;
  display: inline-block;
  height: 120px;
  margin: 5px;
  width: 120px;
}

.gallery-content a:hover {
  border-color: #ffc000;
}

.compsoul-gallery-mask {
  background: rgba(0, 0, 0, 0.8);
  display: none;
  height: 100vh;
  left: 0rem;
  position: fixed;
  top: 0rem;
  width: 100vw;
  z-index: 999;
}

.compsoul-gallery-mask.active {
  display: block;
}

.compsoul-gallery-mask-before {
  height: 100vh;
  left: 0rem;
  position: fixed;
  top: 0rem;
  width: 100vw;
}

.compsoul-gallery-mask-before-button {
  background: #000;
  content: "";
  cursor: pointer;
  height: 4vw;
  right: 0rem;
  position: fixed;
  top: 0rem;
  width: 4vw;
  z-index: 1;
}

.compsoul-gallery-mask-before:after {
  color: #fff;
  content: "\f105\f104";
  cursor: pointer;
  font-family: "FontAwesome";
  font-size: 2vw;
  letter-spacing: -0.1875rem;
  line-height: 2vw;
  right: 2vw;
  position: fixed;
  top: 2vw;
  transform: translate(50%, -50%);
  z-index: 1;
}

.compsoul-gallery img {
  border: 0;
  clip: rect(0 0 0 0);
  height: 0.0625rem;
  margin: -0.0625rem; 
  overflow: hidden; 
  padding: 0;
  position: absolute; 
  width: 0.0625rem;
}

.compsoul-gallery .gallery-comment {
  background: rgba(0, 0, 0, 0.6);
  box-sizing: border-box;
  bottom: 0;
  color: #fff;
  padding: 10px;
  position: absolute;
  width: 100%;
}

.compsoul-gallery-prev, .compsoul-gallery-next {
  background: #000;
  cursor: pointer;
  font-size: 0;
  height: 4vw;
  letter-spacing: 0;
  line-height: 0;
  right: 0rem;
  overflow: hidden;
  position: fixed;
  text-indent: 100%;
  top: 50%;
  transform: translateY(-50%);
  white-space: nowrap;
  width: 4vw;
  z-index: 1;
}

.compsoul-gallery-prev {
  left: 0rem;
}

.compsoul-gallery-prev:before, .compsoul-gallery-next:before {
  display: block;
  color: #fff;
  content: "\f105";
  font-family: "FontAwesome";
  font-size: 2vw;
  line-height: 4vw;
  height: 4vw;
  text-align: center;
  text-indent: initial;
  width: 4vw;
}

.compsoul-gallery-close:after {
  float: left;
  margin-left: 0.1875rem;
  text-align: right;
  width: 2vw;
}

.compsoul-gallery-prev:before {
  content: "\f104";
}

.compsoul-gallery-first-element, .compsoul-gallery-second-element {
  background: no-repeat center / cover;
  left: 50%;
  max-height: 90vh;
  max-width: 90vw;
  position: fixed;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: opacity 0.4s;
}

.compsoul-gallery-first-element.active {
  animation: active linear 0.4s forwards;
}

.compsoul-gallery-first-element.next, .compsoul-gallery-second-element.next {
  animation: next-of linear 0.4s forwards;
}

.compsoul-gallery-first-element.prev, .compsoul-gallery-second-element.prev {
  animation: prev-of linear 0.4s forwards;
}

.compsoul-gallery-first-element.next.active, .compsoul-gallery-second-element.next.active {
  animation: next linear 0.4s forwards;
}

.compsoul-gallery-first-element.prev.active, .compsoul-gallery-second-element.prev.active {
  animation: prev linear 0.4s forwards;
}

.compsoul-gallery-loader {
  opacity: 0;
}

.compsoul-gallery-loader.active {
  animation: active linear 0.4s forwards 0.4s;
}

.compsoul-gallery-loader.none {
  animation: none;
  transition: opacity 0.4s;
}

.compsoul-gallery-loader:before, .compsoul-gallery-loader:after {
  animation: turn linear 1s infinite;
  border: solid #fff;
  border-radius: 100%;
  content: "";
  display: block;
  height: 2rem;
  left: 50%;
  margin: -1rem 0 0 -1rem;
  position: fixed;
  top: 50%;
  width: 2rem;
}

.compsoul-gallery-loader:before {
  border-width: 0 0.125rem 0.125rem 0;
}

.compsoul-gallery-loader:after {
  animation-direction: reverse;
  border-width: 0.125rem 0 0 0.125rem;
  height: 4rem;
  margin: -2rem 0 0 -2rem;
  width: 4rem;
}

@keyframes active {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  } 
}

@keyframes next {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  } 
}

@keyframes next-of {
  0% {
    opacity: 1;
    transform: translate(-50%, -50%);
  }
  100% {
    opacity: 0;
    transform: translate(-100%, -50%);
  }
}

@keyframes prev {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  } 
}

@keyframes prev-of {
  0% {
    opacity: 1;
    transform: translate(-50%, -50%);
  }
  100% {
    opacity: 0;
    transform: translate(0%, -50%);
  } 
}

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