/* 
- @FONTS
- @BASE
- @SETS
- @HEADER
- @FOOTER
- @ABOUT
*/

/* @BASE
================================================== */
html {
	-moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: none;
	-moz-osx-font-smoothing: grayscale;
}

*,
*:after,
*:before {
	-moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: none;
	-moz-osx-font-smoothing: grayscale;
	outline: 0;
}

body {
	font-family: 'Alegreya Sans', sans-serif;
	font-size: 33px;
	font-weight: 500;
	line-height: 40px;
	text-align: left;
	background: #0D359B;
	color: #fff;
	-moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
body.about-active {
	overflow: hidden;
}
img {
	max-width: 100%;
}

a {
	clear: both;
	display: inline-block;
    font-size: inherit;
    line-height: inherit;
    font-weight: inherit;
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}
a:active {
	font-weight: inherit;
	text-decoration: underline;
}

.l-container {
	max-width: 840px;
	margin: 0px auto;
}
.l-container:after {
	content: '';
	clear: both;
	width: 100%;
	height: 0px;
	opacity: 0;
}
.clear {
	clear: both;
	width: 100%;
	height: 0px;
	opacity: 0;
}

svg {
	max-width: 100%;
}

.l-container--bg {
	position: fixed;
	z-index: 1;
	left: 50%;
	top: 0px;
	width: 100%;
	height: 100%;
	pointer-events: none;
	transform: translateX(-50%);
}
.bg-line-1 {
	position: absolute;
	top: 0px;
	left: 0px;
	height: 100%;
	width: 1px;
	background: #6E86C3;
}
.bg-line-2 {
	position: absolute;
	top: 0px;
	left: 33.33%;
	height: 100%;
	width: 1px;
	background: #6E86C3;
}
.bg-line-3 {
	position: absolute;
	top: 0px;
	left: 66.66%;
	height: 100%;
	width: 1px;
	background: #6E86C3;
}
.bg-line-4 {
	position: absolute;
	top: 0px;
	right: 0px;
	height: 100%;
	width: 1px;
	background: #6E86C3;
}

.l-container--fade {
	position: fixed;
	z-index: 3;
	left: 50%;
	top: 0px;
	width: 100%;
	height: 10%;
	height: calc(150px + 20vh);
	pointer-events: none;
	transform: translateX(-50%);
}
.l-container--fade--bottom {
	position: fixed;
	z-index: 3;
	left: 50%;
	bottom: 0px;
	width: 100%;
	height: 100px;
	pointer-events: none;
	transform: translateX(-50%);
}
.bg-fade-1 {
	position: absolute;
	top: 0px;
	left: 0px;
	height: 100%;
	width: 33.33%;
	border-left: 1px solid #6E86C3;
	background: rgb(13,53,155);
	background: -moz-linear-gradient(0deg, rgba(13,53,155,0) 0%, rgba(13,53,155,1) 66%);
	background: -webkit-linear-gradient(0deg, rgba(13,53,155,0) 0%, rgba(13,53,155,1) 66%);
	background: linear-gradient(0deg, rgba(13,53,155,0) 0%, rgba(13,53,155,1) 66%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#0d359b",endColorstr="#0d359b",GradientType=1);
}
.bg-fade-2 {
	position: absolute;
	top: 0px;
	left: 33.33%;
	height: 100%;
	width: 33.33%;
	border-left: 1px solid #6E86C3;
	background: rgb(13,53,155);
	background: -moz-linear-gradient(0deg, rgba(13,53,155,0) 0%, rgba(13,53,155,1) 66%);
	background: -webkit-linear-gradient(0deg, rgba(13,53,155,0) 0%, rgba(13,53,155,1) 66%);
	background: linear-gradient(0deg, rgba(13,53,155,0) 0%, rgba(13,53,155,1) 66%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#0d359b",endColorstr="#0d359b",GradientType=1);
}
.bg-fade-3 {
	position: absolute;
	top: 0px;
	left: 66.66%;
	height: 100%;
	width: 33.33%;
	width: calc(33%);
	border-left: 1px solid #6E86C3;
	background: rgb(13,53,155);
	background: -moz-linear-gradient(0deg, rgba(13,53,155,0) 0%, rgba(13,53,155,1) 66%);
	background: -webkit-linear-gradient(0deg, rgba(13,53,155,0) 0%, rgba(13,53,155,1) 66%);
	background: linear-gradient(0deg, rgba(13,53,155,0) 0%, rgba(13,53,155,1) 66%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#0d359b",endColorstr="#0d359b",GradientType=1);
}
.l-container--fade--bottom span {
	background: rgb(13,53,155);
	background: -moz-linear-gradient(180deg, rgba(13,53,155,0) 0%, rgba(13,53,155,1) 66%);
	background: -webkit-linear-gradient(180deg, rgba(13,53,155,0) 0%, rgba(13,53,155,1) 66%);
	background: linear-gradient(180deg, rgba(13,53,155,0) 0%, rgba(13,53,155,1) 66%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#0d359b",endColorstr="#0d359b",GradientType=1);
}


@media (max-height: 400px) {
	.l-container--fade {
		height: calc(150px + 10vh);
	}
	.l-container--fade--bottom {
		height: 50px;
	}
}

.observe {
	opacity: 0;
	transform: translateY(50px);
}
.visible {
	opacity: 1;
	transform: translateY(0px);
	transition: all 1s cubic-bezier(.65,.02,.23,1);
}

/* @HEADER
================================================== */
header {
	padding: 20px 20px;
	position: fixed;
	z-index: 4;
	top: 0px;
	left: 0px;
	width: 100%;
}
.header__logo {
	margin: 0px;
	font-size: 1px;
	font-size: 0px;
	background-image: url('../images/logo.svg');
	background-size: 236px 56px;
	background-repeat: no-repeat;
	width: 236px;
	height: 56px;
	display: inline-block;
	float: left;
}
.header__icon {
	display: inline-block;
	float: right;
	position: relative;
	top: 8px;
}

/* @MAIN
================================================== */
main {
	position: relative;
	z-index: 2;
}
@media (max-width: 860px) {
	main {
		padding: 0px 10px;
	}
}
h2, h3, h4, h5 {
	position: relative;
	font-size: 33px;
	line-height: 40px;
	font-weight: 500;
	margin: 150px 0px 200px 0px;
	margin: 44vh 0px;
	max-width: 66.66%;
	display: block;
}
h3 {
	left: 33.33%;
}
.content-line:after {
	content: '';
	display: block;
	width: 57px;
	height: 4px;
	background: #fff;
	margin: 25px 0px;
}

/* @FOOTER
================================================== */
.footer {
	position: relative;
	z-index: 5;
	padding: 0px 20px 70px 20px;
}
.footer:after {
	content: '';
	clear: both;
	width: 100%;
	height: 0px;
	opacity: 0;
	display: block;
}
.footer__container {
	width: 66.66%;
	position: relative;
	left: 33.33%;
}
.footer__container:after {
	content: '';
	clear: both;
	width: 100%;
	height: 0px;
	opacity: 0;
	display: block;
}
.footer__contact {
	display: inline-block;
	float: left;
	width: 50%;
	padding-right: 20px;
}
.footer__contact__email {
	color: #fff;
	margin: 0px;
	font-style: italic;
	line-height: 26px;
}
.footer__contact__email a {
	color: #fff;
	font-style: normal;
	font-size: 20px;
}
.footer__contact__phone {
	display: inline-block;
	float: left;
	width: 50%;
	padding-right: 100px;
	margin: 23px 0px 0px 0px;
	font-size: 20px;
	color: #fff;
}
.footer__contact__phone a {
	color: #fff;
}
.footer__contact:after {
	content: '';
	clear: both;
	width: 100%;
	height: 0px;
	opacity: 0;
}
.footer__contact__social {
	list-style-type: none;
	margin: 15px 0px 0px 0px;
	padding: 0px;
	display: inline-block;
	position: absolute;
	right: 0px;
	bottom: 0px;
}
.footer__contact__social li {
	display: inline-block;
	float: left;
	margin-left: 20px;
}
.footer__contact__social li a {
	text-indent: -9000px;
}
.footer__contact__social__twitter a:after {
	content: '';
	background-image: url('../images/icon-twitter.svg');
	background-size: 32px 27px;
	width: 32px;
	height: 27px;
	display: block;
}
.footer__contact__social__linkedin a:after {
	content: '';
	background-image: url('../images/icon-linkedin.svg');
	background-size: 32px 32px;
	width: 32px;
	height: 32px;
	display: block;
	position: relative;
	top: -2px;
}

/* @ABOUT
================================================== */
.about-button {
	background: #6E86C3;
	color: #0D359B;
	font-size: 24px;
	line-height: 24px;
	letter-spacing: -0.5px;
	padding: 7px 15px;
	border: 0px solid #0D359B;
	box-shadow: none;
	cursor: pointer;
	font-family: 'Alegreya Sans', sans-serif;
	min-width: 160px;
	text-align: center;
}

.about-modal {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 10;
	width: 90%;
	height: 90%;
	max-width: 840px;
	max-height: 522px;
	border: 2px solid #6E86C3;
	background: #0D359B;
	padding-top: 27px;
	opacity: 0;
	pointer-events: none;
	transition: all 0.4s cubic-bezier(.65,.02,.23,1);
}
.about-active .about-modal {
	opacity: 1;
	pointer-events: visible;
	transition: all 0.4s cubic-bezier(.65,.02,.23,1);
}
.about-modal__close {
	cursor: pointer;
	position: absolute;
	top: -6px;
	right: -5px;
	z-index: 900;
	width: 40px;
	height: 40px;
	background-image: url('../images/icon-close.svg');
	background-size: 14px 14px;
	background-repeat: no-repeat;
	background-position: center center;
}
.about-modal__container {
	border-top: 2px solid #6E86C3;
	padding: 60px 0px 30px 30px;
	height: 100%;
}
.about-modal__container:after {
	content: '';
	clear: both;
	width: 100%;
	height: 0px;
	display: block;
	opacity: 0;
}
.about-modal__container__left {
	display: inline-block;
	float: left;
	width: 33.33%;
	padding: 0px 30px 0px 20px;
}
.about-modal__name {
	font-size: 28px;
	line-height: 34px;
	font-style: italic;
	margin: 0px;
	font-weight: 500;
}
.about-modal__position {
	font-size: 20px;
	line-height: 30px;
	color: #6E86C3;
	margin: 0px;
}
.about-modal__container__right {
	display: inline-block;
	float: right;
	width: 66.66%;
	padding: 0px 60px 30px 30px;
	height: 100%;
	overflow-y: scroll;
}
.about-modal__container__right:after {
	content: '';
	position: absolute;
	bottom: 0px;
	left: 0px;
	height: 130px;
	width: 100%;
	background: rgb(13,53,155);
	background: -moz-linear-gradient(180deg, rgba(13,53,155,0) 0%, rgba(13,53,155,1) 66%);
	background: -webkit-linear-gradient(180deg, rgba(13,53,155,0) 0%, rgba(13,53,155,1) 66%);
	background: linear-gradient(180deg, rgba(13,53,155,0) 0%, rgba(13,53,155,1) 66%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#0d359b",endColorstr="#0d359b",GradientType=1);
}
.about-modal__container__right > p:first-child {
	margin-top: 0px;
}
.about-modal__container__right > p:last-child {
	margin-bottom: 70px;
}
.about-modal__container__right p {
	font-size: 28px;
	line-height: 34px;
}

@media (max-width: 860px) {
	body {
		font-size: 28px;
		line-height: 34px;
	}
	h2, h3, h4, h5 {
		font-size: 28px;
		line-height: 34px;
	}

	.footer {
		padding: 0px 10px 70px 0px;
	}

	.bg-line-1 {
		left: calc(15px);
	}
	.bg-line-4 {
		right: calc(15px);
	}
	.bg-fade-1 {
		left: calc(15px);
		width: calc(33.33% - 15px);
	}
	.bg-fade-3 {
		right: calc(15px);
		width: calc(33.33% - 16px);
	}
	.about-modal__container__right {
		padding-right: 40px;
	}
	.about-modal__container__right p {
		font-size: 22px;
		line-height: 28px;
	}
}

@media (max-width: 760px) {
	.footer {
		padding: 0px 10px 70px 10px;
	}
	.footer__container {
		left: 0px;
		width: 100%;
	}
	.footer__contact {
		width: 33.33%;
	}
	.footer__contact__phone {
		width: 33.33%;
		padding-right: 0px;
	}
}

@media (max-width: 680px) {
	.about-modal__container__right {
		padding-right: 30px;
	}
}

@media (max-width: 630px) {
	body {
		font-size: 22px;
		line-height: 28px;
	}
	h2, h3, h4, h5 {
		max-width: 100%;
		left: 0px;
		font-size: 22px;
		line-height: 28px;
	}
	.about-modal__container__left {
		display: block;
		width: 100%;
		float: none;
		padding: 0px;
		margin-bottom: 30px;
	}
	.about-modal__container__right {
		display: block;
		width: 100%;
		float: none;
		padding: 0px;
		height: auto;
		overflow: hidden;
	}
	.about-modal__container__right p,
	.about-modal__name {
		font-size: 20px;
	}
	.about-modal__container__right > p:last-child {
		margin-bottom: 80px;
	}
	.about-modal__container {
		padding: 20px;
		overflow-y: scroll;
	}
}

@media (max-width: 500px) {
	.header__logo {
		transform: scale(0.75);
		transform-origin: left;
	}
	.header__icon {
		transform: scale(0.75);
		transform-origin: right;
	}
	.l-container--fade {
		height: calc(80px + 20vh);
	}
	body {
		font-size: 18px;
		line-height: 26px;
	}
	h2, h3, h4, h5 {
		font-size: 18px;
		line-height: 26px;
	}
	.footer__contact {
		display: block;
		float: none;
		width: 100%;
		margin-bottom: 20px;
	}
	.footer__contact__phone {
		display: block;
		float: none;
		width: 100%;
		margin-bottom: 20px;
		margin-top: 0px;
	}
	.about-modal__container__right p,
	.about-modal__name,
	.about-modal__position {
		font-size: 18px;
		line-height: 26px;
	}
}
.about-modal__container__right::-webkit-scrollbar,
.about-modal__container::-webkit-scrollbar {
  width: 8px;
  background-color: #6E86C3;
}
html::-webkit-scrollbar-track,
body::-webkit-scrollbar-track,
.about-modal__container__right::-webkit-scrollbar-track,
.about-modal__container::-webkit-scrollbar-track {
  background: #0D359B;
}
html::-webkit-scrollbar-thumb,
body::-webkit-scrollbar-thumb,
.about-modal__container__right::-webkit-scrollbar-thumb,
.about-modal__container::-webkit-scrollbar-thumb {
  background-color: #6E86C3;
  border-radius: 50px;
}
html,
body,
.about-modal__container__right,
.about-modal__container {
  scrollbar-color: #0D359B #6E86C3;
}