/** --------------------------------------------------

Template Name: Dereck
Autor: layerz
Autor URI: https://themeforest.net/user/layerz


[TABLE OF CONTENTS]

01. GRID
02. COMMONS
03. BUTTONS
04. FORMS
05. SIDEBAR LEFT
06. SIDEBAR RIGHT
07. PROJECT
08. SLIDERS

-------------------------------------------------- **/

/** 01. GRID
-------------------------------------------------- **/
.container {
	width: 90%;
	max-width: 960px;
	margin: 0 auto;
	position: relative;
}

.column {
	float: left;
	position: relative;
	padding: 0 25px;
}

.column.col-1 {
	width: 8.333%;
}

.column.col-2 {
	width: 16.666%;
}

.column.col-3 {
	width: 24.999%;
}

.column.col-4 {
	width: 33.332%;
}

.column.col-5 {
	width: 41.665%;
}

.column.col-6 {
	width: 49.998%;
}

.column.col-7 {
	width: 58.331%;
}

.column.col-8 {
	width: 66.664%;
}

.column.col-9 {
	width: 74.997%;
}

.column.col-10 {
	width: 83.33%;
}

.column.col-11 {
	width: 91.663%;
}

.column.col-12 {
	width: 100%;
}

.column.offset-1 {
	margin-left: 8.333%;
}

.column.offset-2 {
	margin-left: 16.666%;
}

.column.offset-3 {
	margin-left: 24.999%;
}

.column.offset-4 {
	margin-left: 33.332%;
}

.column.offset-5 {
	margin-left: 41.665%;
}

.column.offset-6 {
	margin-left: 49.998%;
}

.column.offset-7 {
	margin-left: 58.331%;
}

.column.offset-8 {
	margin-left: 66.664%;
}

.column.offset-9 {
	margin-left: 74.997%;
}

.column.offset-10 {
	margin-left: 83.33%;
}

.column.offset-11 {
	margin-left: 91.663%;
}

@media (max-width:800px) {
	.column {
		float: none;
		width: 100% !important;
		padding: 0 !important;
		margin-left: 0 !important;
	}

	.column:not(:last-child) {
		margin-bottom: 50px;
	}

}

.row {
	display: block;
	position: relative;
	margin: 0 -25px;
}

.row:not(:last-child) {
	margin-bottom: 50px;
}

@media (max-width:800px) {
	.row {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

}

.container::after,
.row::after,
.clearfix::after {
	content: '';
	display: table;
	clear: both;
}

/** 02. COMMONS
-------------------------------------------------- **/
*,
*::before,
*::after {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	vertical-align: baseline;
	box-sizing: border-box;
}

body {
	font-family: 'Roboto';
	font-size: 15px;
	color: #808080;
	line-height: 1.8;
	overflow-y: scroll;
	overflow-x: hidden;
	background: #ffffff;
}

@media (max-width:800px) {
	body {
		font-size: 14px;
	}

}

::selection {
	color: #ffffff;
	background: #222222;
}

::-moz-selection {
	color: #ffffff;
	background: #222222;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: 500;
	font-style: normal;
	color: #222222;
}

h1:not(:last-child),
h2:not(:last-child),
h3:not(:last-child),
h4:not(:last-child),
h5:not(:last-child),
h6:not(:last-child) {
	margin-bottom: 30px;
}

h1 {
	font-size: 32px;
}

h2 {
	font-size: 28px;
}

h3 {
	font-size: 24px;
}

h4 {
	font-size: 22px;
}

h5 {
	font-size: 20px;
}

h6 {
	font-size: 18px;
}

@media (max-width:600px) {
	h1 {
		font-size: 30px;
	}

	h2 {
		font-size: 26px;
	}

	h3 {
		font-size: 22px;
	}

	h4 {
		font-size: 20px;
	}

	h5 {
		font-size: 18px;
	}

	h6 {
		font-size: 16px;
	}

}

p:not(:last-child) {
	margin-bottom: 25px;
}

p.lead {
	font-size: 18px;
	color: #222222;
}

@media (max-width:600px) {
	p.lead {
		font-size: 15px;
	}

}

b,
strong {
	font-weight: 500;
	color: #222222;
}

a {
	text-decoration: none;
	color: inherit;
	cursor: pointer;
}

a.link {
	color: #222222;
	position: relative;
}

a.link::after {
	content: '';
	width: 100%;
	height: 2px;
	position: absolute;
	bottom: -4px;
	left: 0;
	background: #e6e6e6;
}

a.link::before {
	content: '';
	width: 0;
	height: 2px;
	position: absolute;
	bottom: -4px;
	left: 100%;
	z-index: 2;
	background: #222222;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-ms-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

a.link:hover::before {
	width: 100%;
	left: 0;
	-webkit-transition: width 0.3s ease;
	-moz-transition: width 0.3s ease;
	-ms-transition: width 0.3s ease;
	-o-transition: width 0.3s ease;
	transition: width 0.3s ease;
}

img {
	max-width: 100%;
	vertical-align: middle;
}

img.responsive {
	display: block;
	width: 100%;
}

ul,
ol {
	list-style: none;
}

table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}

table:not(:last-child) {
	margin-bottom: 25px;
}

.float-left {
	float: left;
}

.float-right {
	float: right;
}

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

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

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

div[class*="gap-"] {
	display: block;
}

.gap-25 {
	height: 25px;
}

.gap-50 {
	height: 50px;
}

.gap-100 {
	height: 100px;
}

.gap-150 {
	height: 150px;
}

@media (max-width:600px) {
	.row + div[class*="gap-"] {
		height: 0px;
	}

	div[class*="gap-"] {
		height: 50px;
	}

}

.va {
	display: table;
	width: 100%;
	height: 100%;
	position: relative;
}

.va .vc {
	display: table-cell;
	vertical-align: middle;
}

.main {
	width: 100%;
	min-height: 100vh;
	height: 100%;
	position: relative;
}

.fade {
	width: 100%;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 9999;
	background: #ffffff;
	overflow: hidden;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-ms-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.fade.transparent {
	background: transparent;
}

.fade.hide {
	opacity: 0;
	visibility: hidden;
}

.fade.hide::before {
	animation: none;
}

.fade::before {
	content: '';
	width: 25%;
	height: 4px;
	position: absolute;
	top: 0;
	left: -25%;
	background: #222222;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-ms-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	animation: loader 2s linear infinite;
}

.fade.light::before {
	background: #ffffff;
}

@keyframes loader {
	0% {
		left: -25%;
	}

	100% {
		left: 125%;
	}

}

.reveal {
	opacity: 0;
	-webkit-transform: translateY(50px);
	-moz-transform: translateY(50px);
	-ms-transform: translateY(50px);
	-o-transform: translateY(50px);
	transform: translateY(50px);
	-webkit-transition: opacity 1s ease 0.2s, transform 1s ease 0.2s;
	-moz-transition: opacity 1s ease 0.2s, transform 1s ease 0.2s;
	-ms-transition: opacity 1s ease 0.2s, transform 1s ease 0.2s;
	-o-transition: opacity 1s ease 0.2s, transform 1s ease 0.2s;
	transition: opacity 1s ease 0.2s, transform 1s ease 0.2s;
}

.reveal.reveal-in {
	opacity: 1;
	-webkit-transform: translateY(0);
	-moz-transform: translateY(0);
	-ms-transform: translateY(0);
	-o-transform: translateY(0);
	transform: translateY(0);
}

/** 03. BUTTONS
-------------------------------------------------- **/
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button,
input[type="submit"],
input[type="reset"],
input[type="button"],
.btn {
	display: inline-block;
	position: relative;
	height: 40px;
	text-transform: uppercase;
	font-family: 'Roboto';
	font-size: 10px;
	font-weight: 500;
	padding: 0 25px;
	color: #ffffff;
	line-height: 40px;
	white-space: nowrap;
	cursor: pointer;
	background: #3399ff;
	border: none;
	border-radius: 4px;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-ms-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover,
.btn:hover {
	color: #ffffff;
	background: #4da6ff;
}

/** 04. FORMS
-------------------------------------------------- **/
input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea,
select {
	font-family: inherit;
	font-size: inherit;
	padding: 10px;
	border: 1px solid #e6e6e6;
	background: #ffffff;
}

textarea {
	width: 100%;
	max-width: 100%;
	min-height: 120px;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

label {
	display: block;
	margin-bottom: 5px;
}

/** 05. SIDEBAR LEFT
-------------------------------------------------- **/
.sidebar-left {
	width: 60%;
	min-height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 3;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-ms-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.sidebar-left.full {
	width: 100%;
}

.sidebar-left .showcase-gallery {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	overflow: hidden;
}

.sidebar-left .showcase-gallery .item {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	opacity: 0;
	visibility: hidden;
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
	-ms-transform: scale(1.1);
	-o-transform: scale(1.1);
	transform: scale(1.1);
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-ms-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.sidebar-left .showcase-gallery .item.visible {
	opacity: 1;
	visibility: visible;
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	transform: scale(1);
}

.sidebar-left .showcase-gallery .item.opacity {
	opacity: 0.1;
}

@media (max-width:1024px) {
	.sidebar-left {
		width: 30%;
	}

}

@media (max-width:600px) {
	.sidebar-left {
		width: 0;
	}

}

/** 06. SIDEBAR RIGHT
-------------------------------------------------- **/
.sidebar-right {
	display: table;
	width: 40%;
	min-height: 100vh;
	position: relative;
	left: 60%;
	top: 0;
	padding: 0 5vw;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-ms-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.sidebar-right.hidden {
	opacity: 0;
	visibility: hidden;
}

.sidebar-right.disabled {
	display: none;
}

.sidebar-right .top-bar {
	height: 50px;
	position: fixed;
	top: 4vw;
	right: 0;
	left: 60%;
	padding: 0 5vw;
	z-index: 2;
}

.sidebar-right .top-bar .logo {
	display: block;
	float: left;
	height: 50px;
}

.sidebar-right .intro {
	height: 100vh;
}

.sidebar-right .intro .title {
	font-size: 22px;
	font-weight: 500;
	color: #222222;
}

.sidebar-right .showcase {
	min-height: 100vh;
	padding: 100px 0;
}

.sidebar-right .showcase .projects-list {
	display: inline-block;
	position: relative;
	list-style: none;
}

.sidebar-right .showcase .projects-list li {
	display: block;
	position: relative;
}

.sidebar-right .showcase .projects-list li:not(:last-child) {
	margin-bottom: 25px;
}

.sidebar-right .showcase .projects-list li a {
	display: block;
	font-size: 28px;
	font-weight: 500;
	color: #222222 !important;
}

.sidebar-right .showcase .projects-list li a span {
	display: block;
	font-size: 15px;
	font-weight: 400;
	color: #999999;
}

.sidebar-right .contact {
	padding: 100px 0;
}

.sidebar-right .contact .social {
	list-style: none;
}

.sidebar-right .contact .social li {
	display: inline-block;
	position: relative;
}

.sidebar-right .contact .social li:not(:last-child) {
	margin-right: 15px;
}

.sidebar-right .contact .social li a {
	font-size: 12px;
}

.sidebar-right .contact .copy {
	font-size: 12px;
	margin-top: 100px;
}

@media (max-width:1024px) {
	.sidebar-right {
		width: 70%;
		left: 30%;
	}

	.sidebar-right .top-bar {
		left: 30%;
	}

}

@media (max-width:600px) {
	.sidebar-right {
		width: 100%;
		left: 0;
		padding: 0 5vw;
	}

	.sidebar-right .top-bar {
		top: 5vw;
		left: 0;
		padding: 0 5vw;
	}

	.sidebar-right .intro {
		height: auto;
		padding: 150px 0 0;
	}

	.sidebar-right .intro .title {
		font-size: 20px;
	}

	.sidebar-right .showcase .projects-list li a {
		font-size: 20px;
	}

	.sidebar-right .contact {
		padding: 0;
	}

}

/** 07. PROJECT
-------------------------------------------------- **/
#project {
	position: relative;
	z-index: 100;
}

#project .project-cat {
	display: block;
	opacity: 0.5;
	margin-bottom: 15px;
}

#project .project-info:not(:last-child) {
	margin-bottom: 25px;
}

#project .project-info .project-info-item {
	width: 100%;
	display: table;
	table-layout: fixed;
	position: relative;
}

#project .project-info .project-info-item:not(:last-child) {
	margin-bottom: 15px;
}

#project .project-info .project-info-item .project-info-item-title {
	display: table-cell;
	width: 30%;
	font-weight: 500;
	color: #222222;
}

#project .project-info .project-info-item p {
	display: table-cell;
	width: 70%;
}

#project .close {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 2px solid #a2a2a2;
	position: fixed;
	top: 3vw;
	left: 3vw;
	z-index: 10;
	cursor: pointer;
	opacity: 0;
	visibility: hidden;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-ms-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
	-webkit-transform: scale(0.5);
	-moz-transform: scale(0.5);
	-ms-transform: scale(0.5);
	-o-transform: scale(0.5);
	transform: scale(0.5);
}

#project .close::before,
#project .close::after {
	content: '';
	width: 16px;
	height: 2px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -1px 0 0 -8px;
	background: #222222;
	-webkit-transition: all 0.5s ease, transform 0.5s ease 0.3s;
	-moz-transition: all 0.5s ease, transform 0.5s ease 0.3s;
	-ms-transition: all 0.5s ease, transform 0.5s ease 0.3s;
	-o-transition: all 0.5s ease, transform 0.5s ease 0.3s;
	transition: all 0.5s ease, transform 0.5s ease 0.3s;
}

#project .close.visible {
	opacity: 1;
	visibility: visible;
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	transform: scale(1);
}

#project .close.visible::before {
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}

#project .close.visible::after {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

#project .close.light {
	border-color: #ffffff;
}

#project .close.light::before,
#project .close.light::after {
	background: #ffffff;
}

/** 08. SLIDERS
-------------------------------------------------- **/
.slider {
	position: relative;
}

.slider .owl-dots {
	width: 100%;
	height: 7px;
	position: absolute;
	right: 0;
	bottom: 3vw;
	left: 0;
	z-index: 99;
	text-align: center;
}

.slider .owl-dots .owl-dot {
	display: inline-block;
	margin: 0 5px;
	overflow: hidden;
}

.slider .owl-dots .owl-dot span {
	display: inline-block;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: rgba(34, 34, 34, 0.3);
	border: none;
	box-shadow: none;
	margin: 0;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-ms-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.slider .owl-dots .owl-dot:hover span,
.slider .owl-dots .owl-dot.active span {
	background: #222222;
}

.slider .owl-nav {
	width: 100%;
	position: absolute;
	top: 50%;
	z-index: 100;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
}

.slider .owl-nav div {
	position: absolute;
	width: 16px;
	height: 16px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-ms-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.slider .owl-nav div.owl-prev {
	left: 3vw;
	border-bottom: 2px solid rgba(34, 34, 34, 0.3);
	border-left: 2px solid rgba(34, 34, 34, 0.3);
}

.slider .owl-nav div.owl-prev:hover {
	border-bottom-color: #222222;
	border-left-color: #222222;
}

.slider .owl-nav div.owl-next {
	right: 3vw;
	border-top: 2px solid rgba(34, 34, 34, 0.3);
	border-right: 2px solid rgba(34, 34, 34, 0.3);
}

.slider .owl-nav div.owl-next:hover {
	border-top-color: #222222;
	border-right-color: #222222;
}

.slider.controls-light .owl-dots .owl-dot span {
	background: rgba(255, 255, 255, 0.5);
}

.slider.controls-light .owl-dots .owl-dot:hover span,
.slider.controls-light .owl-dots .owl-dot.active span {
	background: #ffffff;
}

.slider.controls-light .owl-nav div.owl-prev {
	border-bottom-color: rgba(255, 255, 255, 0.5);
	border-left-color: rgba(255, 255, 255, 0.5);
}

.slider.controls-light .owl-nav div.owl-prev:hover {
	border-bottom-color: #ffffff;
	border-left-color: #ffffff;
}

.slider.controls-light .owl-nav div.owl-next {
	border-top-color: rgba(255, 255, 255, 0.5);
	border-right-color: rgba(255, 255, 255, 0.5);
}

.slider.controls-light .owl-nav div.owl-next:hover {
	border-top-color: #ffffff;
	border-right-color: #ffffff;
}
