::-moz-selection {
	background: #fff;
	color: #000;
}

::selection {
	background: #fff;
	color: #000;
}

body, html {
	background: #e4e4e4;
	color: #070707;
	font-family: 'integral_cfregular', Arial, sans-serif;
	cursor: url('../images/star-cursor.png'), auto;	
}


body {
	margin: 0;
	padding: 0;
}


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



.text-right {
	text-align: right;
}

.hide-on-desktop {
	display: none;
}



h2 {
	font-size: 5.5em;
	margin: 0;
}

h3, p {
	font-size: 2.2em;
	margin-bottom: 0;
}




/* 
* Navigation 
*/
nav {
	padding: 4% 4% 0;
	position: relative;
	z-index: 10;
}

nav a:hover,
.portfolio-categories a:hover,
.social-links a:hover{
	opacity: 0.5;
}

section.after-nav {
	padding: 4%;
	position: relative;
	z-index: 10;
}

header {
	padding: 4%;
    height: calc(100vh - 140px);
    box-sizing: border-box;
}


nav h1 {
	margin: 0;
	font-size: 2em;
	text-transform: uppercase;
}

nav ul {
	list-style: none;
}

nav ul li {
	display: inline-block;
	text-transform: uppercase;
	margin-left: 50px;
}

nav ul li a {
	font-size: 2em;
	font-weight: 800;
}

.menu-links {
	margin: 0;
	padding: 0;
}


.mobile-nav {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99999;
	height: 100%;
	width: 100%;
	background: #e4e4e4;
	display: none;
}

html.show-nav {
	overflow: hidden;
}

html.show-nav .mobile-nav {
	display: block;
}


/* 
* Mask
*/
.slider-mask {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;	
	height: 100%;
	width: 100%;
}


.slider-mask img {
	margin-left: 50px;
	display: inline-block;
}

.slider-mask a {
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
	background-image: url(../images/slider-mask-new.png);
	background-position: center;
	background-size: 100%;
	background-repeat: no-repeat;
}

.slider-mask a:before {
	position: absolute;
	content: '';
	display: block;
	width: 100%;
	height: 500px;
	top: -95%;
	left: 0;
	background-color: #e4e4e4;
}
.slider-mask a:after {
	position: absolute;
	content: '';
	display: block;
	width: 100%;
	height: 500px;
	bottom: -95%;
	left: 0;
	background-color: #e4e4e4;
}



/*.slider-mask, .slider-mask img, .slider-holder*/
.slider-holder {
	height: 70vh;
}

.swiper-slide {
	width: 100% !important;
	height: 70vh !important;
	background-size: cover;
	background-repeat: no-repeat;
}

/*
* Home slogan
*/
/*.home-slogan {
	height: 60vh;
}*/


/* 
* Slider
*/
.home-slide {
	position: relative;
	z-index: 1;
}

.slider-holder {
	overflow: hidden;
}

.swiper-slide img {
	max-width: 110%;
}



/*
* Portfolio
*/
.portfolio-categories {
	position: relative;
	z-index: 2;
}
ul.portfolio-categories {
	list-style: none;
	margin: 0;
	padding: 0;
}
ul.portfolio-categories li {
	text-transform: uppercase;
	font-weight: bold;
	margin-bottom: 5px;
	font-size: 1.4em;
}

.portfolio-categories a {
	position: relative;
}
.portfolio-categories a.current:before {
	position: absolute;
	content: '';
	display: block;
	width: 110%;
	height: 5px;
	top: calc(50% - 5px);
	left: -5%;
	background-color: #000;
	z-index: 1;
}

.portfolio-categories .mobile-inline {
	display: inline-block;
	margin-right: 20px;
}

.images-grid .col-md-6,
.images-grid .col-sm-12 {
	padding: 0;
	margin-bottom: 40px; 
	box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

.images-grid .col-md-6{
	padding: 0 20px;
}

.images-grid .img-holder {
	display: inline-block;
}

.images-grid .img-holder:before {
	width: calc(100% - 40px);
	height: 100%;
	position: absolute;
	top: 0;
	left: 20px;
	z-index: 2;
	box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    border: 0px solid transparent;
    display: block;
    transition: border .4s cubic-bezier(0.165, 0.84, 0.44, 1);
    content: '';
}

.images-grid .col-md-6:nth-child(even) .img-holder:before {
	left: 20px;
}


.images-grid .img-holder:hover:before {
    border: 30px solid #070707;
}

.images-grid .img-holder img {
	max-width: 100%;
	display: inline-block;
}

.images-count {
	position: absolute;
	right: 0%;
	top: 20%;
}

.images-count span {
	font-size: 17em;
	font-weight: 800;
	line-height: 1em;
}

.portfolio-images {
	padding: 0;
	overflow: hidden;
}
.row.images-grid {
	margin-left: -20px;
	margin-right: -30px;
}


/*
* Social Links
*/
.social-links {
	list-style: none;
	padding: 0;
	margin: 50px 0;
}

.social-link {
	display: inline-block;
	margin-right: 100px;
	font-size: 2em;
	font-weight: 800;
	text-transform: uppercase;
}

.info-image {
	text-align: center;
}

.info-image img {
	max-width: 100%;
	display: inline-block;
}



/* 
* Aside
*/
aside {
	position: fixed;
    width: 90px;
    right: 0;
    bottom: 18vh;
    z-index: 9;
}


aside p {
	transform: rotate(-90deg);
    position: absolute;
    font-size: 22px;
    margin: 0;
}

.a-moment {
	display: none;
}

.has-lightbox .a-moment {
	position: fixed;
	bottom: 50px;
	left: 50px;
	z-index: 2036;
	display: block;
}

.has-lightbox .a-moment h3 {
	color: #fff;
	text-transform: uppercase;
}



@media screen and (max-width: 768px){

	.hide-on-mobile {
		display: none !important;
	}

	p {
		font-size: 1.5em;
	}





	nav, header {
		padding: 10px;
	}

	nav {
		margin-top: 30px;
	}

	nav h1 {
		font-size: 1.5em;
	}

	nav ul li {
		margin: 0;
	}
	nav ul li a {
		font-size: 1.5em;
	}

	header .container .row {
		-ms-flex-direction: column-reverse!important;
    	flex-direction: column-reverse!important;
	}

	/*.slider-mask, .slider-mask img, .slider-holder {*/
	.slider-holder {
		height: auto;
	}

	.slider-mask img {
		max-width: 100%;
		margin-left: 0%;
		margin-top: -5px;
	}

	.slider-holder {
		margin-top: 30px;
		margin-bottom: 50px;
	}

	.swiper-wrapper {
		height: 300px !important;
	}

	.slider-mask:before {
		right: 99%;
	}

	.slider-mask:after {
	    left: 99%;
	}

	h2 {
		font-size: 3em;
	}


	.btn-menu {
		display: inline-block;
		outline: none;
		border: none;
		background: transparent;
		cursor: pointer;
	}

	.btn-menu .bar {
		width: 40px;
		height: 5px;
		margin-bottom: 6px;
		display: block;
		background-color: #070707;
	}

	.social-link {
		font-size: 2.5em;
		margin-bottom: 10px;
	}

	.portfolio-categories h2 {
		font-size: 4em;
		line-height: .5em;
	}

	ul.portfolio-categories li {
		margin-bottom: 15px;
	}

	.images-count {
		top: 100%;
	}

	.images-count span {
		font-size: 8em;
	}

	.col-12.portfolio-categories {
		margin: 30px 0 70px;
	}

	.images-grid .col-md-6:nth-child(odd),
	.images-grid .col-md-6:nth-child(even) {
		padding: 0;
	}

	.home-slide {
		margin-top: 5px;
	}

	.slider-mask a:before, .slider-mask a:after {
		display: none;
	}


}





