@font-face {
    font-family: GraublauWeb;
    src: url("../../font/BlackDiamond.otf") format("opentype");
}

*{
	box-sizing: border-box;
}

html, body{
	font-family: Montserrat;
	font-size: 14px;
	color: #1e414e;
	background-color: #f1f1f1;
}

body{
	padding-top: 100px;
}

a{
	color: #0067a6;
}

a:hover{
	color: #32b782;
	text-decoration: none;
}


header{
	position: fixed;
	z-index: 9;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100px;
	background: rgba(241, 241, 241, 0.9);
	border-bottom: 1px solid #ccc;
}

header .container{
	position: relative;
	padding-top: 10px;
	padding-bottom: 10px;
}

.logo{
	height: 80px;
	position: absolute;
	top: 10px;
	left: 15px;
}

.menu{
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.menu-item{
	position: relative;
	width: auto;
}

.menu-item > a{
	text-transform: uppercase;
	color: #003846;
	font-size: 15px;
	font-weight: 600;
	height: 80px;
	line-height: 80px;
	padding-left: 10px;
	padding-right: 10px;
}

.menu-item > a:hover{
	color: #32b782;
}

.menu-item.menu-special > a{
	color: #0067a5;
}

.menu-item.menu-special.selected > a:hover{
	color: #0067a5 !important;
}

.menu-icon{
	position: relative;
	top: -2px;
	display: inline-block;
	width: 6px;
	height: 6px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	background-image: url(../img/Arrow_Menu_Right.svg);
}


.menu-section{
	display: none;
	position: absolute; 
	z-index: 2;
	top: 80px;
	padding-top: 10px;
	left: 0px;
	background: #f1f1f1;
	padding: 15px;
	white-space: nowrap;
	border-top: none;
}

.menu-section > a{
	display: block;
	font-size: 14px;
	line-height: 14px;
	color: #003846;
}

.menu-section > a:hover{
	text-shadow:0px 0px 1px black;
}

.menu-section > a:not(:last-child){
	margin-bottom: 8px;
}

.menu-item.selected > a{
	color: #003846 !important;
	text-shadow:0px 0px 1px black;
	position: relative;
}

.menu-item.selected .menu-section{
	display: block;
}

.menu-item.selected .menu-icon{
	background-image: url(../img/Arrow_Menu_Down.svg);
}



.search{
	position: relative;
	width: 180px;
	margin-left: 10px;

}

.search input{
	width: 100%;
	height: 32px;
	line-height: 32px;
	background: #fff;
	border: none;
	outline: none;
	padding-left: 10px;
	padding-right: 30px;
	color: #003846;
}
	
.zoom{
	position: absolute;
	top: 5px;
	right: 10px;
	font-size: 14px;
	color: #003846;
}

.zoom img{
	height: 20px;
}


#mobile-menu{
	display: none;
}


.mobile-top{
	display: flex;
	margin-bottom: 20px;
}


.mobile-logo img{
	height: 40px;
}

.mobile-close{
	width: 100%;
	text-align: right;
	position: relative;
	top: 6px;
	left: -4px;
}

.mobile-close img{
	height: 12px;
}

.mobile-search{
	display: flex;
	margin-top: 30px;
	margin-bottom: 30px;
	align-items: center;
}
.mobile-search-input{
	width: 100%;
	max-width: 360px;
}
.mobile-search .search{
	margin-left: 0px;
}
.mobile-search-lang{
	width: 30px;
	text-align: right;
}
.mobile-contacts{
	font-size: 13px;
	color: #003846;
	margin-bottom: 5px;
	font-weight: 600;
}
.mobile-contacts a{
	color: #003846;
}


.mobile-link{
	margin-bottom: 20px;
}
.mobile-link > a{
	text-transform:uppercase;
	display: block;
	color: #003846;
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 10px;
}
.mobile-link > a.mobile-special{
	color: #0067a5;
}
.mobile-section{
	margin-bottom: 30px;
}

.mobile-section > a{
	display: block;
	color: #003846;
	font-size: 14px;
	margin-bottom: 4px;
}


footer{
	padding: 60px;
	background: #0067a4;
	color: #fff;
}

footer a{
	color: #fff;
}

footer a:hover{
	color: #fff;
	text-decoration: underline;
}

.footer-label{
	font-size: 12px;
	font-weight: 500;
	text-transform: uppercase;
}
.footer-content{
	font-size: 16px;
	font-weight: 300;
	margin-bottom: 20px;
}
.copy{
	margin-top: 20px;
	text-align:center;
}
.credits{
	margin-top: 20px;
	text-align: center;
	font-size: 13px;
	color: #ccc;
}
.credits a{
	color: #ccc;
}


.home-slide{
	background-size: cover;
	background-position: center center;
	background-color: #333;
	color:#fff;
}

.home-slide-bg{height: 600px;position: relative;}

.home-slide-bg .container{position: relative;z-index: 2;}
.home-slide-overlay{z-index: 1;position: absolute; left: 0px; top: 0px; background-color: rgba(0,0,0,0.4); height: 100%; width: 100%;}
.home-slide:not().slick-current .home-slide-overlay{display: none;}

.banner-content{width:50%;padding-top:100px;}
.banner-title{font-weight:700;font-size:40px;line-height:40px;text-transform:uppercase;margin-bottom:10px;}
.banner-subtitle{font-weight:400;font-size:40px;line-height:44px;text-transform:uppercase;}
.banner-text{font-size:16px;line-height:24px;margin-top:50px;}
.banner-button{margin-top:30px;}



#banner{margin-bottom:0px !important;}
#banner .slick-dots{
	bottom: 25px;
}
#banner .slick-dots li{
	width: 16px;
	height:16px;
}
#banner .slick-dots li button::before{
	border: 3px solid #fefefe;
	border-radius: 50%;
	content: '';
}
#banner .slick-dots li.slick-active button::before{
	background: #fefefe;;
}


.about .container{
	position: relative;
	z-index: 1;
	background: #fff;
	padding: 40px;
	bottom: -40px;
}

.about-title{
	font-size: 40px;
	line-height: 50px;
	font-weight: 400;
	margin-top: 40px;
}

.about-text{
	font-size: 14px;
	line-height: 18px;
	margin-top: 40px;
	margin-bottom: 20px;
}
.about-text ul{
	margin-bottom: 20px;
	padding-left: 10px;
}
.about-text li{
	font-size: 18px;
	line-height: 24px;
	font-weight: 600;
	color: #1e414e;
	margin-left: 0px;
	margin-bottom: 10px;
}

.websites .container{
	position: relative;
	z-index: 1;
	top: -80px;

}

.website{
	background: #fff;
	padding: 40px;
}

.website-image{
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	height: 140px;
}

@media screen and (min-width: 991px){
	.website-1 .website-image{
		height: 80px;
		margin-bottom: 20px;
	}

	.website-2, .website-3{
		padding-top: 20px;
	}
}


.website-text{
	color: #003846;	
	font-size: 14px;
	line-height: 18px;
	margin-top: 20px;
	margin-bottom: 20px;
}


.slogan{
	background: #66bd9a;
	padding: 100px 0px;
	color: #003846;
	font-size: 50px;
	font-family: GraublauWeb;
	text-align: center;
}

.slogan .container{
	position: relative;
	z-index: 1;
	top: -20px;
}

.partners{padding:40px 0px;background:#fff;}
.partners-title{color: #003846;font-size: 18px;text-transform:uppercase;font-weight:600;margin-bottom:20px;}

.page{padding-top:100px;padding-bottom:100px;}
	
	
.member{max-width: 300px;}
.member-image{margin-bottom: 20px;}
.member-title{font-size:30px;line-height:34px;font-weight:700;}
.member-subtitle{font-size:20px;line-height:24px;font-weight:600;margin-top:10px;}
.member-text{font-size:14px;line-height: 18px;margin-top:20px;}
	

.iconbox{border:1px solid #0067a6;display:flex;margin-bottom:50px;align-items:center;}
.iconbox-image{display:inline-block;width:90px;height:90px;line-height:90px;text-align:center;position:relative;left:-45px;background:#0067a6;color:#fff;font-size:50px;}	
.iconbox-aside{text-align:right;width:calc(100% - 90px);padding:40px;}
.iconbox-title{font-size:20px;line-height:24px;font-weight:600;}
	
.iconbox:nth-child(odd){border:1px solid #32b782;}
.iconbox:nth-child(odd) .iconbox-image{background:#32b782;}
	
	
.mission{max-width:800px;}
	
	
.press{display:flex;align-items: stretch;gap:20px;text-align:center;margin-bottom:40px;}
.press-image{background:#fff;width:200px;align-items: center;display: flex;padding:10px;}
.press-image img{width:100%;}
.press-content{background:#fff;width:100%;padding-top: 40px;padding-bottom:40px;}
.press-button{background:#fff;white-space:nowrap;align-items: center;display: flex;padding:10px;}

.press-title{text-transform:uppercase;margin-bottom:20px;font-weight:600;font-size:24px;line-height:30px;}
.press-text{margin-bottom:20px;font-size:16px;line-height:20px;}
.press-media{font-style:italic;ont-size:16px;line-height:20px;}




.projects{}

.project{margin-bottom: 20px;background:#fff;padding:20px;break-inside: avoid;height: calc(100% - 20px);}
.project-image{margin-bottom:20px;}
.project-image img{width: 100%;}
.project-title{font-size:20px;line-height:24px;font-weight:600;text-transform:uppercase;margin-bottom:20px;}
.project-title a{color:#003846;}
.project-text{margin-bottom:20px;font-size:14px;line-height:18px;}
.project-banner{
	background-repeat: no-repeat;
	background-position:center center;
	background-size: cover;
	height: 500px;
}



.news-item{margin-bottom: 20px;background:#fff;padding:10px;}
.news-image img{width: 100%;}
.news-title{font-size:20px;line-height:24px;font-weight:600;text-transform:uppercase;margin-bottom:20px;}
.news-title a{color:#003846;}
.news-text{margin-bottom:20px;font-size:14px;line-height:18px;}
.news-banner{
	background-repeat: no-repeat;
	background-position:center center;
	background-size: cover;
	height: 500px;
}

.essay-title{text-transform:uppercase;font-size:20px;font-weight:600;margin-bottom:10px;}
.essay-author{font-size:16px;color: #0067a6;margin-bottom:10px;}

.date{text-decoration:italic;font-size:16px;margin-bottom:20px;}


.search-result{border-bottom:1px solid #ccc;margin-bottom:40px;padding-bottom:40px;}
.search-title{text-transform:uppercase;font-size:20px;font-weight:600;margin-bottom:10px;}
.search-text{font-size:14px;margin-bottom:10px;}


.alignright{
	float: right;
	margin: 0 0 5px 5%;
}


.button{padding: 0px 15px;height:50px;line-height:47px;display: inline-block;font-weight:600;}
.button-blank{border:2px solid #fff;color:#fff;}
.button-blank:hover{background:#fff;color:#003846;}
.button-green{border:2px solid #003846;color:#003846;}
.button-green:hover{border:2px solid #66bd9a;background: #66bd9a;color:#fff;}

	
.dropdown{
	width: 100%;
	background: #fff;
	border: none;
	height: 40px;
	outline: none;
}

h1{font-size:50px;margin-bottom:40px;font-weight:300;text-transform:uppercase;}
h1 b{font-weight:700;}
h2{font-size:40px;margin-bottom:40px;font-weight:700;}
h3{font-size:16px;margin-bottom:20px;font-weight:600;text-transform:uppercase;}
h4:not(:first-child){margin-top: 20px;}
h5:not(:first-child){margin-top: 20px;}

.txt{font-size:16px;line-height:24px;}
.txt img{max-width: 100%;height: auto !important;}
.txt iframe{max-width: 100%;}

.fw-divider-line{height: 1px;}
.fw-divider-line.fw-line-solid { border-bottom: 2px solid #ccc; }
.fw-divider-line.space-md { margin-bottom: 30px; padding-top: 30px; }

.fw-accordion{margin-bottom: 20px;}
.panel{margin-bottom: 10px;}

.panel-heading{cursor: pointer; border: 1px solid #ccc; padding: 10px; padding-right: 50px; position: relative; background: #fff;}
.panel-heading a{color: #333;}
.panel-body{border: 1px solid #ccc; border-top: none; padding: 10px; background: #fff;}
.panel-icon{position: absolute; top: calc(50% - 10px);right: 10px;}
.panel-icon .fa{font-size: 20px;}
.panel-icon .fa-minus{display: none;}


.panel.active .fa-plus{display: none;}
.panel.active .fa-minus{display: block;}

.ad-thumbs{opacity:0;}
.fw-slider-container .slick-prev{left: 5px;z-index: 1;}
.fw-slider-container .slick-next{right: 5px;z-index: 1;}
.fw-slider-container {margin-bottom: 50px !important;}

.gallery{
	margin-top: 40px;
	margin-bottom: 40px;
	align-items: center;
}

.gallery::after{
	clear: both;
}
.gallery a{display:block;cursor:pointer;box-sizing:border-box;height:auto !important;line-height:100% !important;margin-bottom:10px;}

.gallery .thumb{width:100%;margin:0px;box-sizing:border-box;}

.gallery .caption{
	display:block;
	position:absolute;
	bottom:-1px;
	left: 15px;
	width: calc(100% - 30px);
	background:rgba(255,255,255,0.8);
	color:#000;
	padding:10px;
	font-size:14px;
} 

.gallery .caption p{line-height:14px;padding:0px;margin:0px;}



#cookies{position:fixed;z-index:100;bottom:0px;left:0px;width:100%;background:#333;padding-top:10px;padding-bottom:10px;}
#cookies_text{font-size:14px;line-height:14px;color:rgba(255,255,255,0.8);}
#cookies table td{border:none !important;}
#cookies table td:not(:last-child){padding-right:10px;}

.cookies-button{
	display: inline-block;
	color: #000;
	background: #f4f0eb;
	padding: 10px 20px;
	text-transform:uppercase;
	font-size:13px;
	font-weight:bold;
	white-space: nowrap;
}

@media screen and (max-width:640px){
	#cookies_agree a{min-width:100px;}
}

@media (max-width:1000px){
	#cookies table{float:left !important;}
}


.vd{}
.vm{display: none;}

@media screen and (max-width: 991px){
	.about{text-align:center;}
	.about img{max-height: 80px;}
	.about .container{width: calc(100vw - 40px);margin-left: 20px;margin-right: 20px;max-width:100%}
	.about-title{margin-bottom: 40px;font-size: 20px;line-height: 30px;}

	
	.websites .container{width: calc(100vw - 40px);margin-left: 20px;margin-right: 20px;max-width:100%;background: #fff;}
	.website-image{background-position: center center;}
	.website{padding-bottom:20px;}
	.websites .col-lg-4:not(:last-child) .website{ border-bottom: 1px solid rgba(0,0,0,0.1);}

	.websites .col-lg-4{padding-left:0px;padding-right:0px;}
	
}

@media screen and (max-width: 1199px){
	.vd{display:none;}
	.vm{display: block;}
	
	header{height: 60px;}
	.logo{height: 40px;}
	
	.menu{height: 36px;}
	.menu-item.vm .fa{font-size:20px;margin-right: 15px;position: relative; bottom: -2px;}
	
	
	
	header{
		height: 60px;
	}
	
	body{
		padding-top: 60px;
	}
	
	body.opened-menu{
		height: 100%;
		overflow: hidden;
	}
	
	body.opened-menu #mobile-menu{
		position: fixed;
		display: block;
		width: 100vw;
		height: 100vh;
		overflow-y: auto;
		background-color: #f1f1f1;
		z-index: 10;
		padding: 15px;
		padding-top: 10px;
		padding-bottom: 50px;
		top: 0px;
		left: 0px;
	}
	
	.search{
		width: 100%;
	}
	
	.search input{
		height:  30px;
		line-height: 30px;
		font-size: 12px;
	}
	
	.zoom{
		top: 5px;
		font-size: 10px;
	}


	footer{
		padding-top: 20px;
		padding-bottom: 20px;
		text-align: center;
	}
	
	.privacy{
		margin-top: 40px;
		margin-bottom: 20px;
	}
	
	.banner-content{width: 100%;padding-top:60px;}
	.banner-title{font-size:30px;line-height:30px;}
	.banner-subtitle{font-size:30px;line-height:32px;}
	.banner-text{position: absolute; bottom: 160px; left: 15px; font-size:16px;line-height:20px;margin-top:60px;padding-right: 20%;}
	.banner-button{position:absolute; bottom: 80px; left: 15px; margin-top:20px;}

	.home-slide-bg{height: auto;}
	.home-slide-bg .container{height: 890px;max-height: calc(100vh - 60px);}


	.iconbox-aside{padding: 20px;width:calc(100% - 50px);}
	.iconbox-title{font-size: 16px;line-height: 20px;}
	.iconbox-image{left: -10px;width: 50px;height:50px;font-size:30px;line-height:50px;}
	
	.news-image{margin-bottom:20px;}

	.press{flex-direction:column;gap:0px;}
	.press-image{background:#fff;width:100%;justify-content: center;padding-top:40px;}
	.press-image img{width: auto;max-width:100%;}
	.press-button{justify-content: center;padding-bottom:40px;}

	.gallery a{max-width:192px !important;width:calc(50% - 20px);max-height:192px !important;height:40vw !important;line-height:40vw !important;margin:10px !important;}
	.gallery .thumb{max-height:calc(40vw - 4px) !important;}

	.projects{column-count: 1;column-gap: 0px;}
}

@media screen and (max-width: 800px){
	

	.slogan{
		font-size: 40px;
		line-height: 42px;
	}
}
