body {
    font-family: 'Nunito Sans', 'Arial', sans-serif;
    position: relative;
    margin: 0;
    overflow-x: hidden;
}
navbar{
	position: sticky;
	top: 0;
	display: flex;
	align-items: center;
	height: 50px;
	width: 100%;
	background: #fcfcfc;
	border-bottom: 1px solid #e8e8ef;
	padding-left: 15px;
}
navbar #logo{
	border: 1px solid grey;
	border-radius: 15px;
	padding: 5px;
	align-items: center;
	display: flex;
	flex-wrap: nowrap;
}
navbar #logo img {
	height: 20px;
	width: auto;
	margin-right: 5px;
    filter: brightness(1.2);
}
navbar #logo p {
	margin: 0;
	padding-right: 5px;
}
navbar #search-bar {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	width: 30vw;
	max-width: 280px;
	padding: 5px;
	height: 21px;
	color: grey;
	display: flex;
	align-items: center;
	border: 1px solid #ccc;
	border-radius: 25px;
	overflow: hidden;
	background: white;
}
navbar #search-bar img{
	height: 15px;
	margin: 0 8px;
	filter: opacity(0.6);
}
navbar #search-bar input{
	flex: 1;
    padding: 10px;
    border: none;
    outline: none;
    font-size: 0.875em; /* 14 px */
}
footer{
	display: flex;
	justify-content: center;
	height: 50px;
	align-items: center;
	position: absolute;
	bottom: 0;
	width: 100%;
	background: #fcfcfc;
	border-top: 1px solid #e8e8ef;
}


h1{
	font-size: 2.5em;
    font-weight: 600;
    line-height: 1.15;
}
h2{
    font-size: 1.75em;
    margin: 1.5em 0 .35em;
    line-height: 1.3;
    word-wrap: break-word;
    word-break: break-word;
    font-weight: 500;
}

#main{
	width: 80vw;
	margin: 0 auto;
	padding-top: 8vh;
	padding-bottom: 8vh;
}
#top{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#left{
	min-width: 250px;
	width: 40vw;
	max-width: 650px;
	text-align: justify;
}
#left p{
	margin-top: 0;
}

#right{
	width: 300px;
	border-radius: 15px;
	margin-top: 35px;
}
#right img{
	width: 100%;
	border-radius: 15px;
}

#tree .category{
	display: flex;
	margin-bottom: 10px;
	justify-content: flex-end;
}
#tree .title, #tree .name{
	width: 150px;
}
#tree p{
	text-align: center;
}

#especes .espece{
}

#articles{
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}
.snapshot{
	width: 200px;
	min-width: 200px;
/*	border: 1px solid #e8e8ef;*/
	border-radius: 15px;
	margin-bottom: 30px;
	margin: auto 15px;
}
.snapshot a{
	text-decoration: none;
	color: black;
}
.snapshot img{
	width: 100%;
    height: 150px;
    object-fit: cover;
	border-radius: 15px;
}
.snapshot .titre{
	font-weight: bold;
	padding-left: 5px;
	margin-bottom: 0;
	margin-top: -3px;
}
.snapshot .bottom{
	padding-left: 5px;
	margin-top: 3px;
	margin-bottom: 0;
	line-height: 16px;
}


@media (max-width: 768px) {
    navbar{
    	justify-content: space-around;
    	padding-left: 0;
    }
    navbar #search-bar{
    	transform: none;
    	position: initial;
	}
	#left {
		width: auto;
	}
}
