@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 300;
  src: local("Open Sans Light"), local("OpenSans-Light"), url("https://fonts.gstatic.com/s/opensans/v10/DXI1ORHCpsQm3Vp6mXoaTXhCUOGz7vYGh680lGh-uXM.woff") format("woff");
}

/*SOLVE BROWSERS DIFF*/
input::-moz-focus-inner
{
	border: 0;
}
input:-webkit-autofill
{
	background-color:transparent !important;
}


/**/
html
{
	background-position: center bottom;
	background-repeat:repeat-x;
	height:100%;
	background-attachment:fixed;
}


body
{
	padding:0;
	margin:0;
	font-family:Open Sans;
	word-wrap:break-word;
	line-height:180%;
	font-size:14px;
	min-width:1000px;
	display: flex;
	flex-direction: column;
	min-height: 100%;
}
#header
{
	width:1000px;
	margin:0 auto;
	padding: 0 0;
	height:140px;
}
header
{
	border-top: solid 5px #7ECEFD;
	margin:0px auto !important;
	font-variant: small-caps;
	font-size:60px;
	padding:0 !important;
	box-shadow: 0 0 5px 0 rgba(0,0,0,0.5);
	z-index:2;
	position:relative;
	height:205px;
	width:100%;
}
header img
{
	vertical-align:middle;
}
header>#header>a
{
	text-decoration:none;
	color:#2185C5;
	font-family: "Open Sans";
	float:left;
	margin: 20px 0;
}
header #searcher
{
	font-size:14px;
	float:right;
	clear: right;
	margin-top:20px;
	padding:5px;
	background-color: #E9F6FD;
	border-left:1px solid #D9E5EB;
	border-top:1px solid #D9E5EB;
}
header #searcher input/*, header #searcher input::-moz-focus-inner*/
{
	border: 0;
	outline:none;
	background-color:transparent;
	font-family:inherit;
	font-size:inherit;
}

header #searcher input[type=search]
{
	width:200px;
	margin-left:10px;
	color: grey;
}

header #searcher input[type=submit]
{
	background: url('images/search-button.png') no-repeat scroll 1px 1px transparent !important;
	width: 20px;
	height:20px;
	display:inline-block;
	padding:0;
	margin-left:10px;
	vertical-align:middle;
	cursor:pointer;
}

header #searcher input[type=submit]:hover
{
	background-position: 1px -25px !important;
}

header .language
{
	float: right;
	margin: 0;
}
header .language li
{
	display: inline-block;
	vertical-align: top;
	font-size: 14px;
	padding-left: 25px;
	padding-top:3px;
	margin: 0px 15px 5px 15px;
	font-weight: bold;
	background-repeat:no-repeat;
	background-position: left 2px;
}

header .language a
{
	text-decoration:none;
	color: #2185c5; 
	display:inline-block;
	transition: background 0.5s, color 0.5s;
	border-left: solid 1px white;
	border-right: solid 1px white;
}

header .language a:hover, header .language a.active
{
	background-color: #7ECEFD;
	color:white;
}


header .webmap
{
	font-size: 14px; 
	float: right; 
	background-image: url('images/webmap.svg'); 
	background-repeat: no-repeat; 
	background-position: left center; 
	padding-left: 30px; 
	color: rgb(33, 133, 197); 
	font-weight: bold; 
	cursor: pointer; 
	clear: right; 
	margin-left: 50px;
	margin-top:3px;
	/*margin: 25px 15px 0px 120px;*/
}
header .webmap:hover
{
	
}


#logo
{
	height:100px;
	
}

#top-menu
{
	/*background-color: rgba(85, 176, 176, 0.92);*/
	background-image: url('images/black_noise.jpg');
	box-shadow: 0 10px 10px -10px black inset;
	border-bottom: solid 5px rgba(0,0, 0, 0.3);
	background-clip: border-box;
	width:100%;
	top:0px;
}

#top-menu a
{
	color: inherit;
	text-decoration: inherit;
	display:block;
	/*width:100%;*/
	padding: 0px 10px 0px 30px;
}
#top-menu>ul>li>a
{
	padding:30px 0 10px 0;
}

#top-menu>ul
{
	width: 1000px;
	margin: 0px auto;
	padding: 0px;
	height:60px;
}

#top-menu>ul>li
{
	display:inline-block;
	width:20%;
	box-sizing: border-box;
	font-size:16px;
	text-transform: uppercase;
	/*padding:30px 0 10px 0;*/
	border-left: solid 1px rgba(0,0,0,0.2);
	border-right: solid 1px rgba(255,255,255,0.2);
	text-align:center;
	color:white;
	font-weight: bold;
	cursor: pointer;
	vertical-align:top;
	height:65px;
	transition:background 0.5s;
	
	background-repeat: no-repeat;
	background-position: center 5px;
	
}

#top-menu>ul>li:hover, #top-menu>ul>li.active
{
	background-color: rgba(33,133,197,0.5);
	border-left: solid 1px rgba(33,133,197,0.5);
	border-right: solid 1px rgba(33,133,197,0.5);
}

/* SUBMENU*/
#top-menu>ul>li>ul
{
	background-color:rgba(0,0,0,0.9);
	padding:0px;
	opacity: 0;
	max-height:0px;
	overflow:hidden;
	transition: opacity 0.5s, padding 0.5s, overflow 0.5s;
}
#top-menu>ul>li:hover ul
{
	opacity: 1;
	max-height:500px;
	padding-bottom:5px;
}

#top-menu>ul>li>ul>li
{
	font-size:14px;
	text-align:left;
	transition:background 0.5s;
}
#top-menu>ul>li>ul>li:hover, #top-menu>ul>li>ul>li.active
{
	background-color: rgba(33,133,197,0.5);
}


/* GO UP*/
nav#go-up
{
	background-color: #7ECEFD;
	border: solid 3px white;
	border-radius: 23px;
	width: 40px;
	height: 40px;
	position:fixed;
	bottom: 50px;
	right: 10px;
	background-image:url('images/go_up.svg');
	background-repeat:no-repeat;
	background-position: center 6px;
	z-index:500;
	transition: opacity 2s, background 0.5s;
}
nav#go-up:hover
{
	background-color: #2185C5;
}

nav#go-up a
{
	display:block;
	width:100%;
	height:100%;
	outline:none;
}




/* SLIDER */
#slider
{
	height:250px;
	overflow:hidden;
	margin:0 auto;
	position:relative;
	width: 100%;
}

#slider img
{
	background-size:cover;
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
	width: 100%;
	height:100%;
	transition: opacity 2s;
}

#slider .info
{
	background-color: rgba(0, 0, 0, 0.5);
	bottom:0px;
	position:absolute;
	width:100%;
	/*text-transform: uppercase;*/
	font-variant: small-caps;
	line-height:36px;
	font-size:36px;
	padding:10px 0;
	color:white;
	text-align:center;
}

#slider-label
{
	background-color: rgb(33,133,197);
	padding: 10px 0;
	font-size:16px;
}

#slider-label div
{
	width:1000px;
	margin: 0 auto;
	color:white;
	text-align:center;
}
#slider ul
{
	/*width: 150px;*/
	display:table;
	margin: 0 auto;
	cursor: pointer;
	position:relative;
}
#slider li
{
	border-radius: 15px;
	border: solid 3px white;
	width: 15px;
	height: 15px;
	display: inline-block;
	margin: 5px;
	cursor: pointer;
	transition: background 0.5s;
}
#slider .active, #slider li:hover
{
	background-color: #7ECEFD;
}



/* SECTIONS*/
.section-list
{
	width:100%;
	margin: 30px auto;
	padding:0;
	text-align:center;
}

.section-list article
{
	display: inline-block;
	width: 32.66%;
	box-sizing: border-box;
	/*height: 180px;
	background-color:grey;*/
	padding: 40px 20px;
	transition: border 1.5s;
	border: solid 1px transparent;
	border-radius: 5px;
	vertical-align:top;
	margin:0 0px;
	height: 480px;
}
.section-list div
{
	display:inline-block;
	width: 1%;
}

.section-list article:hover
{
	border: solid 1px #2185C5;
}

.section-list figure
{
	border: solid 5px #E9F7FF;
	border-radius: 60px;
	width: 82px;
	height: 82px;
	display:block;
	overflow:hidden;
	margin: 0 auto;
	padding:10px;
}

.section-list h1
{
	font-size: 40px;
	color: #2185C5;
	font-weight: normal;
	text-transform: uppercase;
	margin: 30px 0;
	display:block;
}

.section-list h5
{
	font-size: 20px;
	color: #7ECEFD;
	font-weight: bold;
	text-transform: uppercase;
}

.section-list p
{
	text-align: justify;
}


/* MIDDLE INFO*/

#middle-info
{
	background-image: url('images/black_noise.jpg');
	/*box-shadow: 0 0 5px 0 black;*/
	box-shadow: 0 10px 10px -10px black inset, 0 -10px 10px -10px black inset;
	/*border-bottom: solid 6px rgba(0,0, 0, 0.3);*/
	background-clip: border-box;
}
#middle-info aside
{
	width: 1000px;
	margin: 0 auto;
	height: 50px;
	display:block;
}



/* MAIN TEXT */

#core
{
	width: 1000px;
	margin: 0 auto;
	flex: 1 0 auto;
}

#core main
{
	width: 700px;
	display: inline-block;
	vertical-align: top;
}

#core main article
{
	text-align: justify;
	/*background-color: rgba(0,0,0,0.1);*/
	padding: 30px 30px 30px 0px;
}


#core h1
{
	font-size: 35px;
	color: #2185C5;
	font-weight: normal;
	text-transform: uppercase;
	margin: 30px 0;
	text-align: left;
	line-height:1;
	position: relative;
}

#core h2
{
	font-size: 20px;
	color: #7ECEFD;
	font-weight: bold;
	text-transform: uppercase;
	margin: 10px 0;
	text-align: left;
	line-height:1;
	position: relative;
}

#core h1 a, #core h2 a
{
	position: relative;
	top: -75px;
}

#core p+h2
{
	margin-top: 30px;
}


/*SIDE BAR*/
#core #side-bar
{
	width: 280px;
	display: inline-block;
	vertical-align: top;
	/*background-color: rgba(0,0,0,0.2);*/
	margin-top:35px;
	margin-left:20px;
}

#core #side-bar h1
{
	font-size: 25px;
	color: #7ECEFD;
}



/* NEWS*/
#core #side-bar aside article.news
{
	position: relative; /*to allow position of rotated date*/
	padding-left: 50px;
	min-height: 150px; /*so the date is always visible*/
	border-right: 2px solid #7ECEFD;
	margin: 10px 0px;
}

#core #side-bar aside .news .date
{
	background-color: #2185C5;
	height: 100%;
	width: 30px;
	position: absolute;
	left:0px
}

#core #side-bar aside .news .date span
{
	transform-origin: 0% 100%;
	transform: rotate(90deg);
	color:white;
	font-size:16px;
	font-weight: bold;
	display:block;
	height:30px;
	width:150px;
	margin: -30px 0px;
	text-align:center;
	text-transform: uppercase;
}

#core #side-bar aside .news h1
{
	font-size: 18px;
	margin:0;
	color: #2185C5;
	/*padding-top:10px;*/
}

#core #side-bar aside .news .content
{
	text-align: justify;
	padding: 10px 10px 0px 0px;
}



/* LOGIN*/
#core #side-bar aside.login
{
	margin-bottom:40px;
}

#core #side-bar aside.login form img
{
	float:left;
	height:72px
}
#core #side-bar aside.login form input[type=text], #core #side-bar aside.login form input[type=password]
{
	height:30px;
	width:159px;
	float:right;
	border: 0;
	border-left: solid 1px #D9E5EB;
	border-top: solid 1px #D9E5EB;
	padding: 0 20px;
	background-color: #E9F6FD;
	color: #808080;
	font-size:inherit;
}

#core #side-bar aside.login form input[type=submit]
{
	height:30px;
	width:100%;
	background-color: #7ECEFD;
	color: white;
	font-size: 15px;
	font-weight: bold;
	text-transform: uppercase;
	border: 0;
	transition: background 0.5s;
	cursor: pointer;
}

#core #side-bar aside.login form input[type=submit]:hover
{
	background-color: #2185C5;
	color: white;
}

#core #side-bar aside.login form input[type=submit], #core #side-bar aside.login form input[type=password]
{
	margin-top:10px;
}

#core #side-bar aside.login a
{
	float: right;
	color: #2185C5;
	font-weight: bold;
	font-size: 12px;
	cursor: pointer;
	text-decoration:none;
	transition:color 0.5s;
}

#core #side-bar aside.login a.create
{
	float: none;
}

#core #side-bar aside.login a:hover
{
	color: #2185C5;
}









/* FOOTER */

footer
{
	background-color: #2185C5;
	color: white;
	box-shadow: 0px 10px 10px -10px #000 inset;
}

footer ul.section
{
	width: 1000px;
	margin:0 auto;
	padding: 20px 0px;
	list-style-type: none;
}

footer li.section
{
	display:inline-block;
	width: 33.33%;
	box-sizing: border-box;
	vertical-align:top;
}

footer li.section h1
{
	font-variant: small-caps;
	font-size:28px;
}

footer li.section ul
{
	padding: 0  0 0 30px;
}

footer li.section li
{
	background-repeat:no-repeat;
	height:24px;
	padding: 5px 5px 5px 40px;
	margin: 5px 0px;
	list-style-type: none;
	background-clip:border-box;
	cursor: pointer;
	float:left; /*to avoid the button to get all the width long*/
	clear:both;
	background-image: url('images/logo_circle.svg');
	background-position: -4.25px -4.25px;
	background-size: auto 85px;
	font-weight: bold;
	border: solid 2px transparent;
}

footer li.section li:hover
{
	background-position: -4.25px -46.75px;
}


footer .copyright
{
	background-image: url('images/black_noise.jpg');
	height: 25px;
	box-shadow: 0px 0px 10px 0px #000;
	text-align: center;
}

footer .copyright span
{
	font-weight: bold;
	color: #7ECEFD;
	text-transform: uppercase;
	
}
