@import url('reset.css');
@import url('duplet-open.css');

html, body {
	height: 100%;
}

body {
	display: flex;
	flex-direction: column;
	font-family: Duplet Open Regular;
}

.header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 100;
	padding: 51px 0;
}

.header.hidden {
	transform: translateY(-100%);
}

.header.active {
	background: #fff;
	transition: transform 1s;
}

.header .container {
	display: flex;
}

.header-nav {
	margin-left: auto;
	padding-top: 14px;
}

.header-nav .item {
	position: relative;
	margin-left: 22px;
	padding-top: 14px;
	color: #0A2257;
	font-size: 17px;
	font-family: Duplet Open Semibold;
	text-decoration: none;
}

.header-nav .btn {
	display: none;
	border-color: #fff;
	background: #fff;
}

.header-nav .item::after,
.footer-nav a::after{
	content: '';
	position: absolute;
	top: 100%;
	left: 0;
	width: 0%;
	height: 3px;
	margin-top: 5px;
	background: #B3FFA2;
	transition: width 0.5s;
}

.header-nav .active::after,
.header-nav .item:hover::after,
.footer-nav a:hover::after{
	width: 100%;
}

.header.white.active {
	background: #0A2257;
}

.header.white .item {
	color: #fff;
}

.page {
	flex: 1;
}

.footer {
	background: #0A2257;
	color: #fff;
}

.footer .container {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding-top: 102px;
	padding-bottom: 55px;
}

.footer-section {
	width: 49%;
}

.footer-nav {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding-top: 10px;
}

.footer-nav a {
	position: relative;
	margin-bottom: 36px;
	color: inherit;
	font-size: 22px;
	text-decoration: none;
}

.footer-adress p {
	line-height: 30px;
	font-size: 20px;
}

.footer-adress .btn {
	margin-top: 85px;
	border-color: #B3FFA2;
	background: #B3FFA2;
}

.footer-adress .btn:hover {
	border-color: #fff;
}

.footer-adress .btn:hover::before {
	background: #fff;
}

.footer-nav, .footer-adress {
	margin-bottom: 112px;
}

.footer-logo img {
	width: 380px;
}

.footer-description {
	padding-top: 16px;
	padding-right: 7%;
	line-height: 21px;
	font-size: 14px;
}

.footer-description a{
	color: #fff;
	text-decoration: underline;
}

.footer-description a:hover{
	color: #fff;
	text-decoration: none;
}

.footer-bottom {
	width: 100%;
	margin-top: 79px;
	padding-top: 26px;
	border-top: 1px solid #FFFFFF80;
	color: #FFFFFF80;
	line-height: 23px;
	font-size: 20px;
}

.footer-bottom .design {
	margin-bottom: 16px;
}

.footer-bottom .design a{
    color: #FFFFFF80;
    text-decoration: none;	
}

.footer-bottom .design a:hover{
    color: #FFF;	
}

.footer-bottom .tos a {
	color: inherit;
	text-decoration: none;	
}

.footer-bottom .tos a:hover span{
	color: #fff;
}

.footer-bottom .tos a + a::before {
	content: '|';
	margin: 0 16px;
}

/*green colored layout*/
.green .footer {
	background: #00403A;
}

.green .header.active,
.green.menu-open .header {
	background: #00403A;
}

.green .page-heading {
	background: #00403A;
}

/*generic and default styles*/
.container {
	max-width: 1210px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}

.page-heading {
	background: #0A2257;
	color: #fff;
}

.page-heading .container {
	padding-top: 233px;
	padding-bottom: 75px;
}

h1, .title {
	line-height: 80px;
	font-size: 65px;
	font-family: Duplet Open Semibold;
}

img {
	display: inline-block;
	max-width: 100%;
}

b {
	font-family: Duplet Open Bold;
}

.btn {
	position: relative;
	display: inline-block;
	height: 54px;
	padding: 0 15px 0 19px;
	border: 1px solid #0A2257;
	color: #0A2257;
	line-height: 50px;
	font-size: 20px;
	font-family: Duplet Open Semibold;
	text-decoration: none;
	cursor: pointer;
	transition: color 0.3s, background 0.3s;
}

.btn::before {	/*hover animation element*/
	content: '';
	position: absolute;
	left: 0;
	right: 100%;
	top: 0;
	bottom: 0;
	transition: all 0.3s;
}

.btn:hover::before {
	right: 0;
}

.btn > span {
	position: relative;
}

.btn.link::after {
	content: '';
	position: relative;
	display: inline-block;
	vertical-align: middle;
	width: 14px;
	height: 13px;
	margin-left: 26px;
	background: url("data:image/svg+xml,%3Csvg width='14' height='13' viewBox='0 0 14 13' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.6758 12H11.6758V3.27344L1.35156 12.7373L0 11.2627L10.1045 2H0.675781V0H13.6758V12Z' fill='%230A2257'/%3E%3C/svg%3E%0A") center/contain no-repeat;
}

.text-animation {
	opacity: 0;
	position: relative;
	bottom: -30px;
	transition: opacity 0.7s, bottom 0.7s;
}

.btn.text-animation {
	transition: color 0.3s, background 0.3s, opacity 0.7s, bottom 0.7s;
}

.text-animation.active {
	opacity: 1;
	bottom: 0;
}

/*generic text page*/
.page-text {
	padding: 70px 0 100px;
}

.page-text h2 {
	margin-bottom: 20px;
	line-height: 44px;
	font-size: 32px;
}

.page-text p {
	margin-bottom: 20px;
	line-height: 30px;
	font-size: 20px;
}

@media (max-width: 900.98px) {
	.menu-open {
		overflow: hidden;
	}

	.menu-open .header:not(.white) {
		background: #fff;
	}

	.header-nav {
		position: fixed;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		top: 140px;
		left: 0;
		right: 0;
		height: 0;
		padding: 0;
		opacity: 0;
		overflow: hidden;
		padding-left: 30px;
		background: #0A2257 url('../img/pattern-mobile.png') bottom repeat-x;
		transition: height 0.5s, padding 0.5s, opacity 0.5s;
	}

	.menu-open .header .header-nav {
		height: 100%;
		padding-top: 99px;
		opacity: 1;
	}

	.header-nav .item {
		margin-left: 0;
		margin-bottom: 39px;
		color: #fff;
		font-size: 30px;
	}

	.header-nav .btn {
		display: block;
		margin-top: 55px;
	}

	.mobile-menu-btn {
		width: 30px;
		height: 40px;
		margin-left: auto;
		background: url("data:image/svg+xml,%3Csvg width='26' height='21' viewBox='0 0 26 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M26 17.85V21H0V17.85H26ZM26 8.925V12.075H0V8.925H26ZM26 0V3.15H0V0H26Z' fill='%230A2257'/%3E%3C/svg%3E%0A") center no-repeat;
		cursor: pointer;
	}

	.menu-open .mobile-menu-btn {
		background-image: url("data:image/svg+xml,%3Csvg width='26' height='21' viewBox='0 0 26 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect y='18' width='16' height='3' fill='%230A2257'/%3E%3Crect y='9' width='26' height='3' fill='%230A2257'/%3E%3Crect width='26' height='3' fill='%230A2257'/%3E%3C/svg%3E%0A");
	}

	.white .mobile-menu-btn {
		background-image: url("data:image/svg+xml,%3Csvg width='26' height='21' viewBox='0 0 26 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M26 17.85V21H0V17.85H26ZM26 8.925V12.075H0V8.925H26ZM26 0V3.15H0V0H26Z' fill='white'/%3E%3C/svg%3E%0A");
	}

	.menu-open .white .mobile-menu-btn {
		background-image: url("data:image/svg+xml,%3Csvg width='26' height='21' viewBox='0 0 26 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect y='18' width='16' height='3' fill='white'/%3E%3Crect y='9' width='26' height='3' fill='white'/%3E%3Crect width='26' height='3' fill='white'/%3E%3C/svg%3E%0A");
	}

	.container {
		padding-left: 55px;
		padding-right: 55px;
	}

	.footer-section {
		width: 100%;
	}

	.footer-nav {
		margin-bottom: 51px;
	}

	.footer-adress {
		margin-bottom: 62px;
	}

	.footer-adress .btn {
		margin-top: 47px;
	}

	.footer-logo {
		order: 4;
	}

	.footer-bottom {
		order: 5;
	}

	.footer-description {
		margin-bottom: 103px;
	}
}

@media (min-width: 768px) {
	.footer-bottom .design span br{
		display: none;
    }
}
@media (max-width: 767.98px) {

	.header {
		padding: 22px 0;
	}

	.header .container > a {
		align-self: center;
	}

	.header img {
		width: 86px;
	}

	.header-nav {
		top: 84px;
	}

	.menu-open .header .header-nav {
		padding-top: 46px;
	}

	.header-nav .item {
		margin-bottom: 24px;
		font-size: 22px;
	}

	.footer .container {
		padding-top: 52px;
		padding-bottom: 65px;
	}

	.footer-nav {
		margin-bottom: 34px;
	}

	.footer-nav a {
		margin-bottom: 24px;
		font-size: 16px;
	}

	.footer-adress {
		margin-bottom: 37px;
	}

	.footer-adress p {
		line-height: 23px;
		font-size: 16px;
	}

	.footer-adress .btn {
		margin-top: 34px;
	}

	.footer-description {
		margin-bottom: 37px;
	}

	.footer-logo {
		width: 123px;
	}

	.footer-bottom .design span {
		display: block;
		line-height: 28px;
	}

	 .container {
		padding-left: 31px;
		padding-right: 31px;
	}

	h1, .title {
		line-height: 46px;
		font-size: 36px;
	}

	.btn {
		height: 39px;
		padding: 0 14px;
		line-height: 39px;
		font-size: 16px;
	}

	.btn.link::after {
		margin-left: 16px;
		width: 10px;
		height: 10px;
	}

	.page-text h2 {
		line-height: 27px;
		font-size: 20px;
	}

	.page-text p {
		line-height: 23px;
		font-size: 16px;
	}
}

@media (max-width: 400.98px) {
	.footer-bottom .tos a + a::before {
		margin: 0 4px;
	}
}

@media (max-width: 375.98px) {
	.footer-bottom .tos a + a::before {
		margin: 0 4px 0 0;
	}
}