
@import url('https://fonts.googleapis.com/css?family=Maven+Pro:400,700');

// VARIABLES
$font-base: 'Maven Pro', sans-serif;
$body-font-size: 18px;
$h1-font-size: 2.8em;
$h2-font-size: 2.4em;

$font-weight-bold: bold;
$font-weight-normal: normal;
$font-weight-light: 300;

$h1-font-color: #212121;
$h2-font-color: #353535;
$h3-font-color: #484848;
$body-font-color: #5b5b5b;
$text-white: #ffffff;
$dark-mode-color: #0c0c0d;
$main-color: #ffc200;
$border-color: #f2f2f1;
$button-color: #474559;

$small-font-size: 14px;
$link-font-size: 16px;

@mixin transition-effect {
	transition: all 0.4s ease;
}

body {
	font-family: $font-base;
	padding-top: 70px;
}

.full-screen {
	padding: 8rem 0;
}

.small-text {
    color: $body-font-color;
    font-size: $small-font-size;
    font-weight: $font-weight-bold;
    padding: 8px 16px;
    border-radius: 50px;
    letter-spacing: 0.2px;
}

ul {
	margin: 0;
	padding: 0;
	li {
		list-style: none;
	}
}

a {
	font-size: $link-font-size;
	font-weight: $font-weight-normal;
	text-decoration: none !important;
	@include transition-effect;
	&:hover {
		color: $main-color !important;
	}
}

.navbar-brand {
	.uil {
		font-size: 40px;
	}
}


// TYPOGRAPHY
p {
	font-size: $body-font-size;
	font-weight: $font-weight-light;
	line-height: 1.5;
	color: $body-font-color;
}

h1,h2,h3,h4,h5,h6 {
	font-weight: $font-weight-bold;
	letter-spacing: -1px;
}

h1 {
	color: $h1-font-color;
	font-size: $h1-font-size;
	margin: 24px 0;
}

h2 {
	color: $h2-font-color;
	font-size: $h2-font-size;
	font-weight: $font-weight-bold;
}

h3 {
	color: $h3-font-color;
}

h3,
b, strong {
	font-weight: $font-weight-bold;
}


// CUSTOM BUTTON
.custom-btn {
	color: $body-font-color;
	font-weight: $font-weight-bold;
    border-radius: 50px;
    padding: 13px 29px;
    font-size: $small-font-size;
    line-height: normal;
    overflow: hidden;
    @include transition-effect;
    &:hover {
    	color: $main-color;
    }
    &.custom-btn-bg {
    	background: $button-color;
		color: $text-white;
		&:hover {
	    	background: $main-color;
	    	color: $text-white !important;
	    }
    }
}


// ANIMATED TEXT
.animated {
    position: relative;
}

.animated-info {
    display: inline-block;
    vertical-align: top;
    margin-top: 10px;
    width: 250px;
    position: relative;
}

.animated-item {
	color: $main-color;
}

.animated-item {
    font-size: 32px;
    line-height: inherit;
    display: block;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    animation: BottomTotop 6s linear infinite 0s;
    &:nth-child(2n+2) {
        animation-delay: 2s;
    }
    &:nth-child(3n+3) {
        animation-delay: 4s;
    }
}

@keyframes BottomTotop {
    0% { opacity: 0; }
    5% { opacity: 0; transform: translateY(5px); }
    10% { opacity: 1; transform: translateY(0px); }
    25% { opacity: 1; transform: translateY(0px); }
    30% { opacity: 0; transform: translateY(5px); }
    80% { opacity: 0; }
    100% { opacity: 0; }
}


// MENU
.navbar {
	position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 999999;
    will-change: transform;
    transition: transform 200ms linear;
	&[class*="-unpinned"] {
      transform: translate(0, -150%);
    }

    &[class*="-pinned"] {
      transform: translate(0, 0);
    }
    &[class*="headroom--not-top"] {
    	background: $text-white;
    	// box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.09);
    	border-bottom: 1px solid #f0f0f0;
    	padding-top: 0;
    	padding-bottom: 0;
    }
}

.navbar-brand {
	font-weight: $font-weight-bold;
}

.navbar-expand-sm {
	.navbar-nav {
		.nav-link {
			padding: 0 20px;
		}
	}
}

.nav-link {
	font-weight: $font-weight-bold;
	font-size: 16px;
	overflow: hidden;
	span {
    	position: relative;
		display: inline-block;
		transition: transform 0.3s;
		&:before {
			position: absolute;
			top: 100%;
			content: attr(data-hover);
			transform: translate3d(0,0,0);
		}
    }
}

.navbar-light {
	.navbar-nav {
		.nav-link:focus,
		.nav-link:hover {
			color: $main-color;
			font-weight: $font-weight-bold;
			span {
	    		transform: translateY(-100%);
	    	}
		}
	}
} 


// HAMBURGER MENU
.navbar-light {
	.navbar-toggler-icon {
		background: none;
	}
}

.navbar-toggler {
	border: 0;
	padding: 0;
	width: 32px;
	height: 32px;
	line-height: 32px;
	outline: none;
	cursor: pointer;
	margin-right: 10px;
	&:focus {
		outline: none;
	}
	&[aria-expanded="true"] {
		.navbar-toggler-icon {
			&:first-child {
				transform: rotate(45deg);
				top: 6px;
			}
			&:nth-child(2) {
				display: none;
			}
			&:last-child {
				transform: rotate(-45deg);
				bottom: 1px;
			}
		}
	}
	.navbar-toggler-icon {
		background: $h1-font-color;
		display: block;
		width: 100%;
		height: 2px;
		margin: 5px 0;
		@include transition-effect;
		position: relative;
	}
}


// COPYRIGHT TEXT
.copyright-text {
	font-size: 16px;
	font-weight: $font-weight-normal;
	display: block;
}


// COLOR MODE
.color-mode {
	font-weight: $font-weight-bold;
	cursor: pointer;
}

.color-mode-icon {
	position: relative;
	right: 6px;
  &:after {
  	font-family: 'unicons';
  	content: '\ea9f';
  	font-size: 30px;
  	font-weight: 300;
  	font-style: normal;
  }
  &.active {
  	&:after {
  		font-family: 'unicons';
  		content: '\eb65';
  		font-size: 30px;
  		color: $text-white;
  	}
  }
}

.dark-mode {
	background: $dark-mode-color;
	.navbar-light .navbar-nav .nav-link {
		color: rgba(255,255,255,0.8);
		&:hover {
			color: $main-color;
		}
	}
	.navbar {
		&[class*="headroom--not-top"] {
			background: $dark-mode-color;
			border-bottom: 1px solid #1f1f1f;
	    }
	}
	.small-text {
		background: #0d0c15;
		color: $text-white;
	}
	.feature-card .uil,
	.navbar-light .navbar-brand,
	h1, h2, h3, h4, h5, h6,
	.color-mode {
		color: $text-white;
	}
	.owl-carousel {
		.owl-nav button.owl-next,
		.owl-nav button.owl-prev,
		button.owl-dot {
			color: $text-white;
		}
	}
}


// TIMELINE
.timeline-wrapper {
	position: relative;
	padding-bottom: 10px;
	&:last-child {
		&:before {
			height: 0;
		}
	}
	&:before {
		content: "";
    	background: $button-color;
    	width: 3px;
    	height: 100%;
    	position: absolute;
    	left: 38px; 
	}
}

.timeline-yr {
	background: $button-color;
	border-radius: 100%;
	position: absolute;
	width: 75px;
	height: 75px;
	line-height: 75px;
	text-align: center;
	span {
		color: $text-white;
    	font-size: $link-font-size;
    	font-weight: $font-weight-bold;
    	display: block;
    	line-height: 75px;
	}
}

.timeline-info {
	display: inline-block;
	vertical-align: top;
	max-width: 432px;
	margin-left: 6em;
	small {
		color: $button-color;
    	font-size: $link-font-size;
    	font-weight: $font-weight-bold;
    	display: inline-block;
    	vertical-align: middle;
    	margin-left: 15px;
	}
}


// OWL CAROUSEL
.owl-carousel {
	.owl-nav {
		span {
			display: none;
		}
		.owl-prev,
		.owl-next {
			&:before {
				background: none;
				padding: 0;
				display: block;
				position: absolute;
				top: 50%;
				transform: translate(0, -50%); 
				font-family: 'unicons';
				font-size: 100px;
				line-height: normal;
			}
		}
		.owl-prev {
			&:before {
				content: '\e833';
  				left: -45px; 
			}
		}
		.owl-next {
			&:before {
				content: '\e836';
  				right: -45px; 
			}
		}
	}
}

.owl-theme {
	.owl-nav [class*=owl-] {
		background: none;
  		border-radius: 0;
  		margin: 0;
  		padding: 0;
  		font-size: inherit; 
  		&:hover {
  			color: $main-color;
  		}
	}
  	.owl-dots {
  		.owl-dot {
  			outline: none;
  			span {
  				width: 8px;
  				height: 8px;
  			}
  			&.active,
  			&:hover {
  				span {
  					background: $body-font-color;
  				}
  			}
  		}
  	}
}


// GOOGLE MAP
.google-map {
	iframe {
		width: 100%;
	}
}


// CONTACT FORM
.contact-form {
	position: relative;
	.form-control {
		background: transparent;
		border-radius: 2px;
		outline: none;
		box-shadow: none;
		font-weight: $font-weight-bold;
		margin: 16px 0;
		&:not(textarea) {
			height: 48px;
		}
		&:hover,
		&:focus {
			border-color: $main-color;
		}
	}
	.submit-btn {
		background: $main-color;
		border-radius: 50px;
		color: $text-white;
		font-weight: $font-weight-bold;
		border: 0;
		cursor: pointer;
		@include transition-effect;
		&:hover {
			background: $button-color;
		}
	}
}

.contact-info {
	background: $button-color;
	border-radius: 0 0 3px 3px;
	position: relative;
	bottom: 8px;
	p, a {
		color: #f7f3f3;
	}
}


// SOCIAL LINKS
.social-links {
	.uil {
		color: #f7f3f3;
		font-size: 20px;
		display: block;
		margin: 5px 0;
		&:hover {
			color: $main-color;
		}
	}
}


// RESPONSIVE STYLES
@media (min-width: 1270px) {
	.owl-theme {
		.owl-dots {
			position: relative;
			bottom: 50px;
		}
	}
}


@media (max-width: 991px) {
	.full-screen {
		padding-bottom: 4rem;
	}

	.color-mode {
		display: none;
	}

	.about-image {
		margin-top: 4em;
	}

	.mobile-mt-2,
	.contact-form {
		margin-top: 2em;
	}

	.contact-info {
		padding: 0 2rem;
	}
}


@media (max-width: 767px) {

	h1 {
		font-size: 2.4em;
	}

	h2 {
		font-size: 2em;
	}

	.animated-item {
		font-size: 28px;
	}

	.navbar-collapse {
		background: $text-white;
		text-align: center;
		padding-bottom: 20px;
	}

	.navbar-expand-sm .navbar-nav .nav-link {
		padding: 3px 20px;
	}
}


@media (max-width: 580px) {

	.animated-item {
		font-size: 24px;
	}

	.custom-btn-group {
		text-align: center;
	}

	.custom-btn {
		display: block;
		margin: 10px 0;
	}

	.owl-theme .owl-nav {
		display: none;
	}

	.timeline-info small {
		display: block;
		margin: 10px 0 0 0;
	}
}


@media (max-width: 320px) {

	.animated-text {
		margin-top: 0;
	}

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

	.full-screen {
		padding: 4rem 0;
	}

	.mobile-block {
		display: block;
	}

	.contact-info {
		flex-direction: column;
	}

	.social-links {
		li {
			display: inline-block;
			vertical-align: top;
		}
	}
}
