@font-face {
	font-family: Elgoc;
	font-weight: 100;
	src: url("../fonts/elgoc-thin.otf") format("opentype");
	font-display: swap;
	}

@font-face {
	font-family: Elgoc;
	font-weight: 300;
	src: url("../fonts/Elgoc-light.otf") format("opentype");
	font-display: swap;
	}

@font-face {
	font-family: Elgoc;
	font-weight: 400;
	src: url("../fonts/elgoc-regular.otf") format("opentype");
	font-display: swap;
	}

@font-face {
	font-family: Elgoc;
	font-weight: 500;
	src: url("../fonts/elgoc-medium.otf") format("opentype");
	font-display: swap;
	}

@font-face {
	font-family: Elgoc;
	font-weight: 600;
	src: url("../fonts/elgoc-semibold.otf") format("opentype");
	font-display: swap;
	}

@font-face {
	font-family: Elgoc;
	font-weight: 700;
	src: url("../fonts/elgoc-bold.otf") format("opentype");
	font-display: swap;
	}

@font-face {
	font-family: Elgoc;
	font-weight: 900;
	src: url("../fonts/elgoc-black.otf") format("opentype");
	font-display: swap;
	}

#user-data {
	display: none;
	}

* {
	margin: 0;
	padding: 0;
	border: none;
	underline: none;
	outline: none;
	text-decoration: none;
	-webkit-font-smoothing: antialiased;
	}

html, body {
	background: #fcf4f4;
	font-family: "Elgoc", Arial, Helvetica Neue, sans-serif;
	color: #191919;
	}

body {
	transition: background 1.7s ease;
	}

body.boudoir {
	background: #1bde69;
	}

body.fashion {
	background: #f4f9fc;
	}

main {
	transition: opacity .9s ease;
	}

#preloader {
	width: 100%;
	height: 0;
	background: #222;
	position: fixed;
	z-index: 99;
	top: 0; left: 0;

	transition: height .7s ease;
	}

#preloader.show {
	height: 100%;
	}

#header {
	width: 100%;
	position: fixed;
	mix-blend-mode: difference;
	z-index: 9;
	top: 60px;
	}

.holder {
	width: 90%;
	position: relative;
	margin: 0 auto;
	}

#logo {
	font-weight: 600;
	font-size: 24px;
	color: #fcf4f4;
	letter-spacing: 0.7px;
//	mix-blend-mode: difference;

	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	-o-user-select: none;
	user-select: none;
	}

#menu {
	position: absolute;
	top: 5px; right: 0;
	}

#menu li {
	list-style: none;
	display: inline-block;
	margin-left: 50px;
	}

#menu li a {
	font-size: 19px;
	color: #fcf4f4;
	letter-spacing: 0.2px;
	}

.hero {
	padding-top: 200px;
	}

.hero h1 {
	font-size: 244px;

	transition: opacity .8s ease;
	}

.hero h1.hide {
	opacity: 0;
	}

.hero img {
	width: 500px;
	position: relative;
	display: table;
	margin: 0 auto;
	}

.portfolio-project {
	padding: 160px 0 260px 0;
	}

.portfolio-project h1, #new-title {
	position: relative;
	font-weight: 500;
	font-size: 288px;
	color: #454748;
	text-align: center;
	mix-blend-mode: color-burn;
	z-index: 2;

//	margin-top: -100px;
	margin-top: 0;
	transition: margin-top 1.4s ease;
	}

.portfolio-project h1.show {
	margin-top: 0;
	}

.portfolio-project h1:after, #next-project p span:after, #new-title:after {
	content: ".";
	}

.portfolio-project .photo {
	max-width: 640px;
	position: relative;
	display: table;
	margin: -120px auto 0 auto;
	}

.grid {
	width: 90%;
	position: relative;
	display: table;
	padding: 40px 0;
	margin: 0 auto;

	transition: opacity .8s ease;
	}

.grid.fade-out {
	opacity: 0;
	}

.grid.one img {
	max-width: 800px;
	max-height: 700px;
	position: relative;
	display: table;
	}

.grid.one.center img {
	margin: 0 auto;
	}

.grid.one.right img {
	float: right;
	}

.grid.two {
	width: auto;
	}

.grid.two img {
	max-width: 480px;
	float: left;
	margin: 0 60px;
	}

.grid img {
	border: 2px solid #000;
	box-shadow: 10px 20px 20px rgba(0, 0, 0, 0.33);
	}

#next-project {
	width: 100%;
	position: relative;
	padding: 100px 0 400px 0;
	margin-top: 300px;
	}

.next-photo {
	width: 280px;
	position: absolute;
	mix-blend-mode: soft-light;
	margin-left: -140px;
	top: -160px; left: 50%;

	transform: rotate(-10deg);

	transition: transform .8s ease;
	transition: all 1.2s ease;
	}

.next-photo.cover {
	width: 640px;
	mix-blend-mode: unset;
	margin-left: -320px;
	top: 0;

	transform: rotate(0deg);
	}

#next-project p {
	width: 100%;
	position: absolute;
	font-size: 168px;
	text-align: center;
	cursor: pointer;
	overflow: hidden;
	top: -56px;
	}

#next-project p span {
	display: block;
	margin-top: 0;

	transition: opacity 1.8s ease, margin-top 1.4s ease;
	}

#next-project p.hide span {
	opacity: 0;
	margin-top: -200px;
	}

#new-title {
	opacity: 0;
	margin-top: -400px;

	transition: opacity 1.4s ease, margin-top 1.2s ease;
	}

#new-title.show {
	opacity: 1;
	margin-top: -300px;
	}