/*@font-face {
font-family: 'ProximaNova';
src: url('../fonts/ProximaNova-Regular.eot?#iefix') format('embedded-opentype'),  
     url('../fonts/ProximaNova-Regular.otf')  format('opentype'),
	 url('../fonts/ProximaNova-Regular.woff') format('woff'), 
	 url('../fonts/ProximaNova-Regular.ttf')  format('truetype'), 
	 url('../fonts/ProximaNova-Regular.svg#ProximaNova-Regular') format('svg');
font-weight: normal;
font-style: normal;
 } 
 @font-face {
font-family: 'ProximaNova';
src: url('../fonts/ProximaNova-Bold.eot?#iefix') format('embedded-opentype'),  
     url('../fonts/ProximaNova-Bold.otf')  format('opentype'),
	 url('../fonts/ProximaNova-Bold.woff') format('woff'), 
	 url('../fonts/ProximaNova-Bold.ttf')  format('truetype'), 
	 url('../fonts/ProximaNova-Bold.svg#ProximaNova-Bold') format('svg');
font-weight: bold;
font-style: normal;
 }
 @font-face {
font-family: 'Gotham';
src: url('../fonts/GothamBold.eot?#iefix') format('embedded-opentype'),  
     url('../fonts/GothamBold.otf')  format('opentype'),
	 url('../fonts/GothamBold.woff') format('woff'), 
	 url('../fonts/GothamBold.ttf')  format('truetype'), 
	 url('../fonts/GothamBold.svg#ProximaNova-Bold') format('svg');
font-weight: bold;
font-style: normal;
 }*/

body, html{
	height:100%;
	width:100%;
	padding: 0;
	font-size:15px;
}
body{
	background-color: rgb(245,245,245);
	font-family: 'Titillium Web', sans-serif;
	line-height: 1.3;
	color:rgb(255, 255, 255);
}
a:hover{
	text-decoration: none;
}
ul, p, li, form{
	padding: 0;
	margin: 0;
}
ul li{
	list-style: none;
}

section{
	width:100%;
	max-width: 1920px;
	margin: 0 auto;
}
sub, sup{
	line-height: 1.3;
}
/*----------------------------------------------------------------- HOME PAGE ---------------------------------*/
/* --------------------------- MENU ----------------------*/
#menu{
    position: relative;
	height: 5.5rem;
	max-width: 1920px;
	margin: 0 auto;
}
#menu #page_title{
	text-transform: uppercase;
	font-weight: bold;
	font-size:1.06rem;
	letter-spacing: 0.25rem;
}
#menu #page_title #mm_logo{
	height: 2.8rem;
	margin: 0 2rem;
}
#menu #header_bar nav ul{
	display: flex;
}
#menu_nav{
	display: block;
}
#menu_nav input,
#menu_nav span{
	display: none;
}

#menu_nav ul{
	text-transform: uppercase;
	font-size: 0.86rem;
	font-weight: bold;
}
#social a{
	color: #60c1ee;
}
#menu_nav ul li{
	padding: 0 1.2rem;
}
#menu_nav ul li a{
	letter-spacing: 0.185rem;
	padding: 1rem 1.6rem;
}
#menu #header_bar li:last-of-type a{
	color:rgb(83,193,239);
}
#menu #header_bar #social a{
	padding: 1rem 1.35rem;
}
#menu #header_bar #social img{
	height: 1.53rem;
}
#menu #header_bar{
	position: absolute;
	background: rgb(27,77,120);
	background: linear-gradient(90deg, rgba(10,163,228,1)  0%, rgba(32,53,89,1) 73.74%, rgba(32,53,89,1) 100%);
	width:100%;
	top:0;
	left:0;
	padding: 0.9rem 4.4rem 1.1rem 4.4rem;
	max-height: 5.5rem;
	z-index: 1;
	display: flex;
	align-items:center;
	justify-content:space-between;
	box-shadow: 0 1em 1em rgba(0,0,0,0.15);
}
#menu #header_bar a{
	color:rgb(255,255,255);
	display: block;
}
/* -------------------------- HEADER ------------------------*/
#map_container{
	clear: both;
	height: calc(100% - 5.5rem);
	position: relative;
	display:flex;
}
#map_container #map {
	height: 100%;
	width: 73.74%;
}
#map_container #map #content{
	padding:0.5rem;
}
#map_container #map .gm-ui-hover-effect{
	top: 0 !important;
    right: 0 !important;
}
#map_container #map #content h1{
	font-size:1.3rem;
}
#map_container #map #content p{
	font-size:1rem;
}
#map_container #map #content a:last-of-type{
    display: block;
    margin-top: 0.5rem;
}
#map_container #mapLoading {
	display:none;
	height: 100%;
	width: 73.74%;
  	background-color: rgba(255,255,255,0.90);
    position: absolute;
    z-index: 50;
}
#map_container #mapLoading img{
	width:15rem;
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
}
#map_container #map{
	color:rgb(0,0,0);
}
#map_container .scroll-wrapper{
	width:26.26% !important;
}
#map_container #map_aside{
	right: 0;
	top:0;
	width:26.26%;
	background-color: rgb(32,53,89);
	height: 100%;
	z-index: 2;
}

#map_container #corona_map_aside{
	right: 0;
	top:0;
	width:77%;
	background-color: rgb(32,53,89);
	height: 100%;
	overflow: auto;
	z-index: 2;
    line-height: 1.2;
    font-size: 1.1rem;
	color: rgb(255, 255, 255);
	padding-bottom: 2rem;
}
/* Works on Firefox */
#map_container #corona_map_aside {
	scrollbar-width: thin;
	scrollbar-color: rgb(83,193,239) rgb(32,53,89);
}
  
  /* Works on Chrome, Edge, and Safari */
#map_container #corona_map_aside::-webkit-scrollbar {
	width: 12px;
}
#map_container #corona_map_aside::-webkit-scrollbar-track {
	background: rgb(32,53,89);
}
  
#map_container #corona_map_aside::-webkit-scrollbar-thumb {
	background-color: rgb(83,193,239);
	border-radius: 20px;
	border: 3px solid rgb(32,53,89);
}
#map_container #corona_map_aside h3{
	font-size: 2rem;
	line-height: 2rem;
    padding: 1.13rem 0 .63rem 0;
    color: rgb(83,193,239);
    font-weight: bold;
}
#map_container #corona_map_aside a{
	color: rgb(83,193,239);
}

#map_container #corona_map_aside ul{
	padding: 0.5rem 0 0.5rem 2rem;
}
#map_container #corona_map_aside li{
	list-style: disc;
	line-height: 1.3;
}

#map_container.corona .scroll-wrapper{
	width:77vw !important;
}

#map_container.corona .scroll-wrapper,
#map_container #corona_map_aside{
	display: none;
}


#map_container #map_aside #main_categories{
	display: flex;
	border-bottom: 2px solid rgb(42,69,115);
	max-height: 5rem;
	box-sizing: border-box;
	overflow: hidden;
}
#map_container #map_aside #main_categories li{
	width:50%;
	text-align: center;
	background-color: rgb(255, 255, 255);
}
#map_container #map_aside #main_categories li a{
	display: block;
	font-size: 0.86rem;
	font-weight: bold;
	letter-spacing: 0.185rem;
	text-transform: uppercase;
	padding: 1.9rem 0;
	color:rgb(32,53,89);
	background-color: rgb(255,255,255);
	cursor:pointer;
}
#map_container #map_aside #main_categories li:first-of-type a{
	color:rgb(255,255,255);
	background-color: rgb(32,53,89)
}
#map_container #map_aside #category_container{
	height: calc(100% - 5rem);
}
#map_container #map_aside #category_container form > div{
	height: 100%;
	background-color: rgb(32,53,89);
	display: none;
}
#map_container #map_aside #category_container form > div.active{
	display: block;
}
#map_container #map_aside #category_container form > div h1{
	font-size: 1.4rem;
	font-weight: bold;
	text-transform: uppercase;
	padding:2.5rem 1rem;
	text-align: center;
	letter-spacing: 0.38rem;
}
#map_container #map_aside #category_container form > div li label{
	display: block;
	position: relative;
	cursor: pointer;
	padding: 1.63rem 6rem 1.63rem 7.8rem;
	margin:0;
	font-size: 1.25rem;
	font-weight: bold;
	text-transform: uppercase;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	color:rgb(121, 132, 171);
	text-align: left;
	letter-spacing: 0.1rem;
}
#map_container #map_aside #category_container form > div li label input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}
#map_container #map_aside #category_container form > div li label span {
	position: absolute;
	top: 1.63rem;
	left: 3.1rem;
	height: 1.6rem;
	width: 1.6rem;
	background-color: rgb(255, 255, 255);
	border-radius: 0.8rem;
}
#map_container #map_aside #category_container form > div li label span:after {
	content: "";
	display: none;
	position: absolute;
	height:0.94rem;
	width:0.94rem;
	left:0.33rem;
	top:0.33rem;
	background-color: rgb(83,193,239);
	border-radius: 0.47rem;
}
#map_container #map_aside #category_container form > div li label:hover,
#map_container #map_aside #category_container form > div li label.active{
	color:rgb(255,255,255);
	background-color: rgb(51,74,115);
}
#map_container #map_aside #category_container form > div li label input:checked ~ span:after {
	display: block;
}

#map_container #map_aside #category_container form > #practices_categories{
	background-color: rgb(255,255,255);
}
#map_container #map_aside #category_container form > #practices_categories h1{
	color: rgb(32,53,89);
}
#map_container #map_aside #category_container form > #practices_categories li label{
	color: rgb(189, 191, 193);
}
#map_container #map_aside #category_container form > #practices_categories li label:hover,
#map_container #map_aside #category_container form > #practices_categories li label.active{
	color:rgb(255,255,255);
	background-color: rgb(83,193,239);
}
#map_container #map_aside #category_container form > #practices_categories li label span {
	background-color: rgb(189, 191, 193);
}
#map_container #map_aside #category_container form > #practices_categories li label:hover span,
#map_container #map_aside #category_container form > #practices_categories li label input:checked ~ span {
	background-color: rgb(255,255,255);
}

/* ----------------------------------- Cases -------------------------------*/
#cases{
	background: rgb(27,77,120);
	background: linear-gradient(0deg, rgba(10,163,228,1)  0%, rgba(32,53,89,1) 100%), url("../img/bg_pattern.png") repeat;
	background-blend-mode: multiply;
	padding: 11rem 9.5rem 18.73rem 9.5rem;
}
#cases .carousel{
	border-top: 1.2rem solid rgb(83,193,239);
}
#cases .carousel .carousel-item img{
	height:45.2rem;
    object-fit: cover;
}
#cases .carousel:before,
#cases .carousel:after{
	content: "";
	position: absolute;
	top:-1.2rem;
	width: 1.2rem;
	height: calc(50% + 2.7rem);
	background-color: rgb(83,193,239);
}
#cases .carousel:before{
	left:-1.2rem;
}
#cases .carousel:after{
	right:-1.2rem;
}
#cases .carousel .carousel-item::after{
	content: "";
	position: absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background-image:url("../img/slider_over_layer.png");
	background-repeat:no-repeat;
	background-position:bottom center;
	background-size:contain;

}
#cases .carousel .carousel-inner .carousel-caption{

}

/* ----------------------------- Carousel ------------------------*/
.carousel-control-next, 
.carousel-control-prev{
	width: 3.06rem;
	height: 3.06rem;
	margin: auto 0;
	background-color: rgba(210,211,213,0.3);
	opacity: 1;
}
.carousel-control-next:hover, 
.carousel-control-prev:hover{
	background-color: rgba(210,211,213,0.6);
}
.carousel-control-next-icon, 
.carousel-control-prev-icon{
	width: 0.54rem;
	height: 0.67rem;
}
.carousel-control-prev-icon{
	background-image: url("../img/left_arrow_white.svg");
}
.carousel-control-next-icon{
	background-image: url("../img/right_arrow_white.svg");
}
.carousel-caption{
	left: 3.74rem;
	right: 3.74rem;
	text-align: left;
	top: calc(50% - 1.55rem);
	bottom: 3.6rem;
	max-width: 85%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	flex-wrap: nowrap;
	padding: 0;
}
.carousel-caption .country{
	font-size: 1.5625rem;
	text-transform: uppercase;
	font-weight: bold;
	line-height: 3.06rem;
	border-radius: 1.53rem;
	background-color: rgb(83,193,239);
	padding: 0 1.5rem;
	width: fit-content;
	width: -moz-fit-content; 
    width: -webkit-fit-content;
    width: -x-fit-content;
}
.carousel-caption h2{
	font-size: 2.8rem;
	font-weight: bold;
}
.carousel-caption a{
	font-size: 1.5625rem;
	line-height: 3.06rem;
	padding: 0 1.5rem;
	width: fit-content;
	width: -moz-fit-content;   
    width: -webkit-fit-content;
    width: -x-fit-content;
	border: 2px solid rgb(255, 255, 255);
	border-radius: 1.53rem;
	color: rgb(255,255,255);
}
.carousel-caption p{
	font-size: 1.5625rem;
}
.carousel-caption a:hover{
	background-color: rgba(210,211,213,0.6);
}
.carousel-indicators{
	bottom: 2.86rem;
	margin-bottom: 0;
}
.carousel-indicators li{
	cursor: pointer;
	width: 2rem;
	height: 2rem;
	border-radius: 1rem;
	margin: 0 0.8rem;
	background-color: transparent;
}
.carousel-indicators li:hover,
.carousel-indicators li.active{
	background-color: transparent;
}
.carousel-indicators li::before{
	display: none;
}
.carousel-indicators li::after{
	width: 0.53rem;
	height: 0.53rem;
	background-color: rgba(255,255,255,0.5);
	top: 0.73rem;
	left: 0.73rem;
	border-radius: 0.27rem;
}
.carousel-indicators li:hover::after,
.carousel-indicators li.active::after{
	background-color: rgba(255,255,255,1);
}

/* ------------------------ Case list ------------------------*/
#cases-container{
	z-index: 1;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: flex-start;
	align-content: flex-start;
}
#cases-container article{
	width: 32.32%;
	margin-right:1.51%;
	margin-top: 5.46rem;
	box-sizing: border-box;
}
#cases-container article:nth-child(3n+3) {  
  	margin-right:0;
}
#cases-container article a{
	color: rgb(255,255,255);
}
#cases-container div{
	position: relative;
}
#cases-container div img{
	display: block;
    position: relative;
	width: 100%;
	height: 20rem;
    z-index: 0;
    object-fit: cover;
}
#cases-container article h1{
	margin: 1.6rem 0;
	font-size: 1.5625rem;
	font-weight: bold;
}
#cases-container article span{
	font-size: 1.106rem;
}
#cases-container article .submitted::before{
	content: "\00a0\00a0|\00a0\00a0";
}
#cases-container article a:hover div{
	/*border: 0.93rem solid rgb(83,193,239);*/
	box-sizing: border-box;
}
#cases-container article a:hover div::after{
	content: "";
	position: absolute;
	bottom:0;
	right:0;
	border: 0.93rem solid rgb(83,193,239);
	top: 0;
	left: 0;
}

/* ----------------------- Partners ----------------- */
#partners{
	background: rgb(241,241,242);
	background: linear-gradient(0deg, rgb(241,241,242)  0%, rgb(241,241,242) 100%), url("../img/bg_pattern.png") repeat;
	background-blend-mode: multiply;
	padding: 0 9.5rem 8.53rem 9.5rem;
	color: rgb(0,0,0);
	z-index: 1;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
	align-content: flex-start;
}
#partners h1{
	color: rgb(150,152,154);
	text-transform: uppercase;
	text-align: center;
	font-weight: bold;
	font-size: 3.33rem;
	padding: 8.4rem 0;
	width:100%;
}
#partners article{
	width: 32.32%;
	margin-bottom: 5.46rem;
	box-sizing: border-box;
	background-color: rgb(255, 255, 255);
	display: flex;
	flex-direction: column;
    justify-content: space-between;
    flex-wrap: nowrap;
}
#partners article img{
	display: block;
    position: relative;
	width: 100%;
	height: 19.2rem;
    z-index: 0;
    object-fit: cover;
}
#partners article h2{
	font-size: 1.5625rem;
    text-transform: uppercase;
    font-weight: bold;
	line-height: 4.53rem;
	text-align: center;
	color: rgb(255,255,255);
	/*background-color: rgb(32,53,89);*/
	background-color: rgb(51,51,51);
	margin: 0;
	padding-bottom: 3px;
}
#partners article h3{
	font-size: 1.5625rem;
    font-weight: bold;
	padding: 1.6rem 4.46rem;
	margin: 0;
}
#partners article p{
	font-size: 1.4rem;
	padding: 0 4.46rem 3.06rem 4.46rem;
	margin: 0;
}
#partners article span{
	font-size: 1.4rem;
    font-weight: bold;
	line-height: 4.06rem;
	text-align: center;
	background-color: rgb(220,221,223);
	display: block;
	margin: 0;
	padding-bottom: 3px;
	color:rgb(128,128,128);
}

/* ----------------- Footer -----------------*/
#footer{
	background: rgb(27,77,120);
	background: linear-gradient(0deg, rgba(10,163,228,1)  0%, rgba(32,53,89,1) 100%), url("../img/bg_pattern.png") repeat;
	background-blend-mode: multiply;
	padding: 0 0 1.2rem 0;
	text-align: center;
}
#footer img{
	padding: 6rem 20px 6.4rem 20px;
	/*width: 16.06rem;*/
	vertical-align: bottom;
}
#footer span{
	font-size: 1.1rem;
	font-weight: bold;
	display: block;
}
#footer a{
	display: inline-block;
	color:rgb(255, 255, 255);
	padding:0.5rem;
	font-weight: bold;
	font-size: 1.1rem;
}


/* --------------------------------------------------------------------- CASES PAGE --------------------------------------*/
/* ------------------- Case content ------------------*/

#case_content, #best_content{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
}
#case_content #case_text_container{
	width: 73.67%;
	background-color: rgb(255, 255, 255);
	padding-top: 7rem;
	color:rgb(0,0,0);
}
#case_content #case_text_container #case_text_header{
	padding: 0 14.13rem;
}
#case_content #case_text_container #case_text_header .tag,
#map_data .tag{
	display: inline-block;
	font-size: 1.26rem;
	text-transform: uppercase;
	font-weight: bold;
	line-height: 2.53rem;
	color: rgb(255, 255, 255);
	background-color: rgb(239,73,79);
	border-radius: 1.26rem;
	padding: 0 1.26rem;
	margin-right: 0.8rem;
	letter-spacing: 0.1rem;
}
#map_data .tag{
	font-size: 1.1rem;
	margin-bottom: .5rem;
}
#map_data.dot_green .tag{
	background-color: rgb(32 166 6);
}
#map_data.dot_red .tag{
	background-color: rgb(205 42 0);
}
#map_data.dot_yellow .tag{
	background-color: rgb(201 191 0);
}
#case_content #case_text_container #case_text_header h1{
	line-height: 2.8rem;
	padding: 2.13rem 0 2.13rem 0;
	color: rgb(0,73,141);
	font-weight: bold;
	margin:0;
}
#case_content #case_text_container #case_text_header .date{
	color: rgb(239,73,79);
	font-size: 1.13rem;
}
#case_content #case_text_container #case_text_body{
	padding:1rem 14.13rem 5rem 14.13rem;
	line-height:1.6;
	font-size: 1.4rem;
	text-align:center;
}
#case_content #case_text_container #case_text_body p{
	margin-top: 0;
    margin-bottom: 1rem;
	text-align:left;
	overflow-wrap: break-word;
}
#case_content #case_text_container #case_text_body code{
	color:rgb(0,0,0);
	font-weight:bold;
	font-size: 1.4rem;
	text-align:left;
}
#case_content #case_text_container #case_text_body img{
	padding:2rem 0;
	max-width:100%;
	height:auto;
}
#case_content #case_text_container #case_text_body b{
	color: rgb(0,73,141);
}
#case_content #case_aside{
	width: 26.33%;
	background-color: rgb(32,53,89);
	padding-bottom: 4rem;
}
#case_content #case_aside h3{
	text-transform: uppercase;
	font-size: 1.26rem;
	font-weight: bold;
	color:rgb(83,193,239);
	text-align: left;
	letter-spacing: 0.1rem;
	margin: 2.5rem 0 1.6rem 0;
	padding: 0 6.6rem;
}
#case_content #case_aside h3:first-of-type{
	margin: 7.7rem 0 1.6rem 0;
}
#case_content #case_aside a{
	display: block;
	padding: 1.2rem 6.6rem;
	color: rgb(255, 255, 255);
	font-size: 1.1rem;
}
#case_content #case_aside a:hover{
	background-color: rgb(51,74,115);
}
#case_after{
	width:100%;
	background-color: rgb(230,231,232);
	text-align: center;
	padding: 6.9rem 0;
	color:rgb(169,171,174);
}
#case_after h2{
	padding: 0;
	bottom: 0;
	text-transform: uppercase;
	font-size: 2.73rem;
	font-weight: bold;
}

/*--------------------------- Best practices on case page ----------------------------*/
#best_p{
	background: rgb(41,151,202);
	background: linear-gradient(0deg, rgb(41,151,202) 0%, rgb(41,151,202) 100%), url(../img/bg_pattern.png) repeat;
	background-blend-mode: multiply;
	padding: 12rem 14.13rem;
	color:#fff;
}
#best_p h2,
#best_p h3{
	text-align: center;
	text-transform: uppercase;
	font-size: 2.5rem;
	font-weight: bold;
	letter-spacing: 0.1rem;
	margin: 1rem 0;
}
#best_p h1{
	margin-top:2.5rem;
	font-size: 2.5rem;
	font-weight: bold;
	color:rgba(255,255,255);
}
#best_p .practice{
	border-top: 2px dashed rgb(255, 255, 255);
	margin-top: 2rem;
	padding-bottom: 2rem;
}
#best_p .practice h4,
#best_p .practice .more{
	margin:4.66rem auto 0 auto;
	text-align: center;
	width: fit-content;
	width: -moz-fit-content;   
    width: -webkit-fit-content;
    width: -x-fit-content;
	font-size: 1.6rem;
	text-transform: uppercase;
	font-weight: bold;
	color: rgb(41,151,202);
	background-color: rgb(255, 255, 255);
	line-height: 3.06rem;
	border-radius: 1.53rem;
	padding: 0 1.53rem;
}
#best_p .practice .more{
	font-size: 1rem;
	line-height: 2rem;
	float:right;
	border-radius: 0.8rem;
	margin:0;
}
#best_p .practice p{
	font-size: 1.4rem;
	padding: 1.6rem 0;
	line-height:1.6;
}
#m_best_p{
	padding: 3.8rem 30rem 6.6rem 30rem;
	text-align: center;
}
#m_best_p h3{
	text-align: center;
	text-transform: uppercase;
	font-size: 2.76rem;
	font-weight: bold;
	letter-spacing: 0.78rem;
	color: rgb(41,151,202);
	line-height: 12.73rem;
}
#m_best_p a{
	display: block;
	color: rgb(41,151,202);
	text-transform: uppercase;
    font-size: 1.25rem;
    letter-spacing: 0.1rem;
	font-weight: bold;
	line-height: 6.13rem;
}


/* ------------------------------------ Best practice page ------------------------------*/

#best_content #best_p{
	width: 73.67%;
	background: rgb(255, 255, 255);
	padding: 5.5rem 14.13rem 9.4rem 14.13rem;
	color:rgb(0,0,0);
    min-height: 55rem;
}
#best_content #best_p h1{
	color:rgb(0,73,141);
}
#best_content #best_p h2{
	color:rgb(0,73,141);
	font-size:1.6rem;
	letter-spacing: 0.5rem;
}
#best_content #best_p .practice{
	padding-bottom:4rem;
	border-bottom: 1px solid rgb(220,221,223);
	clear:both;
}
#best_content #best_p .practice .tag,
#best_content #best_p .practice .more{
	display: inline-block;
	font-size: 1.26rem;
	text-transform: uppercase;
	font-weight: bold;
	line-height: 2.53rem;
	color: rgb(255, 255, 255);
	background-color: rgb(83, 193, 239);
	border-radius: 1.26rem;
	padding: 0 1.26rem;
	margin-right: 0.8rem;
	letter-spacing: 0.1rem;
}
#best_content #best_p .practice .more{
	font-size: 1rem;
	line-height: 2rem;
	float:right;
	border-radius: 0.8rem;
}
#best_content #best_p .practice .tag a{
	color:rgba(255,255,255);
}
#best_content #best_p .practice h1{
	line-height: 2.8rem;
    padding: 2.13rem 0 2.13rem 0;
    color: rgb(0,73,141);
    font-weight: bold;
    margin: 0;
    text-align: left;
    text-transform: initial;
}
#best_content #best_aside{
	width: 26.33%;
	background-color: rgb(41,151,202);
	padding-bottom: 4rem;
	text-align:center;
	position: relative;
}
#best_content #best_aside .list{
	margin-top:3.5rem;
    position: fixed;
    width: 26.33%;
}
#best_content #best_aside .list h2{
	font-size: 1.4rem;
    font-weight: bold;
    text-transform: uppercase;
    padding: 4.5rem 1rem;
    text-align: center;
    letter-spacing: 0.38rem;
}
#best_content #best_aside .bottom{
	position: absolute;
    width: 100%;
    bottom:0;
}
#best_content #best_aside a{
	display: block;
	text-transform: uppercase;
	font-size: 1.25rem;
	letter-spacing: 0.1rem;
	padding: 1rem 1.6rem;
	color: rgb(255, 255, 255);
	font-weight: bold;
}
#best_content #best_aside a:hover{
	background-color: rgb(83,193,239);
}


/* -------------------- Article page ------------------*/
#article{
    background: rgb(255, 255, 255);
    padding: 5rem 14.13rem;
    line-height: 1.6;
    font-size: 1.4rem;
    color: rgb(0,0,0);
    min-height:35rem;
}
#article .date{
	display:block;
	color: rgb(239,73,79);
    font-size: 1.13rem;
    margin-bottom:3rem;
}
#article h1, #article h2, #article h3, #article h4, #article h5{
	padding: 2.13rem 0 2.13rem 0;
    color: rgb(0,73,141);
    font-weight: bold;
    margin: 0;
}
#article h1{
	line-height: 2.8rem;
}
#article h2{
	line-height: 2.2rem;
}
#article h3{
	line-height: 1.8rem;
}
#article h4{
	line-height: 1.6rem;
}
#article h5{
	line-height: 1.4rem;
}

#article ul, #article ol{
	padding-left:3rem; 
}
#article ul li{
	list-style:initial;
}
#article p{
	padding: 1.5rem 0;
}
    

@media only screen and (max-width: 1700px) {
  body, html{
	font-size:14px;
  }
  #menu #header_bar #menu_items ul li a {
    padding: 1rem 1rem;
  }
}
@media only screen and (max-width: 1500px) {
  body, html{
	font-size:12px;
  }
}
@media only screen and (max-width: 1200px) {
  body, html{
	font-size:10px;
  }
  #case_content #case_text_container{
  	padding-top:3rem;
  }
  #case_content #case_text_container #case_text_header,
	#case_content #case_text_container #case_text_body,
	#best_p, #m_best_p, #best_content #best_p, #best_content #best_aside,
	#article{
		padding:2rem 3rem;
		font-size:1.2rem;
	}
	#case_content #case_text_container #case_text_header{
  	padding-bottom:0;
  }
  #partners article,
  #cases-container article{
  	width:48%;
  }
  #case_content #case_aside a,
  #case_content #case_aside h3{
 	    padding: 1.2rem 2.2rem;
  }
}



@media only screen and (max-width: 768px) {
	body, html{
	  font-size:14px;
    }
	/*#map_aside,*/
	.carousel-indicators{
	  display:none;
	}
	/* ---------------------- Map ---------------------- */
	#map_container{
		height:70%;
		margin-top: 3.5rem;
	}
	#map_container #map{
		width:100%;
		margin-right:0;
		height:100%;
	}
	/*#map_container .scroll-wrapper,*/
	#case_categories h1,
	#practices_categories h1,
	#map_container #map_aside #main_categories,
	#map_container .gm-fullscreen-control{
		display:none;
	}

	#map_container #map_aside #category_container,
	#map_container #map_aside #category_container form > div{
		height: auto;
	}

	#map_container #map_aside,
	#map_container .scroll-wrapper{
		position: absolute;
		width: auto;
		top: 3rem;
		background-color: transparent;
	}
	#map_container #map_aside[data-category-index="1"]{
		left:0;
		right: auto;
	}
	#map_container #map_aside[data-category-index="2"]{
		left:auto;
		right: 0;
		text-align: right;
	}
	#map_container #map_aside #practices_categories li label{
		text-align: right !important;
	}

	#map_container #map_aside #category_container form > div li label:hover{
		color: rgb(121, 132, 171);
		background-color: transparent;
	}
	#map_container #map_aside #category_container form > div li label.active {
		color: rgb(255,255,255) !important;
		background-color: rgb(51,74,115) !important;
	}

	#map_container #map_aside #category_container form > #practices_categories li label{
		color: rgb(189, 191, 193);
		background-color: transparent;
	}
	
	#map_container #map_aside #category_container form > #practices_categories li label:hover {
		color: rgb(189, 191, 193);
		background-color: transparent;
	}
	
	#map_container #map_aside #category_container form > #practices_categories li label:hover span{
		background-color: rgb(189, 191, 193);
	}
	#map_container #map_aside #category_container form > #practices_categories li label.active {
		color: rgb(255,255,255) !important;
		background-color: rgb(83,193,239) !important;
	}

	#mobileMapFilter{
		position: absolute;
		display: block !important;
		background-color: #fff;
		padding: 0.87rem 1.38rem;
		width: 100%;
	}
	#mobileMapFilter nav a{
		float: left;
		color: rgb(27,78,121);
		font-weight: bold;
		vertical-align: middle;
	}
	#mobileMapFilter nav a img{
		height: 1.15rem;
		width: auto;
		margin-right: 0.5rem;
	}
	#mobileMapFilter nav a:last-of-type{
		float: right;
	}
	#mobileMapFilter nav a:last-of-type img{
		margin-right: 0;
	}
	#category_container{
		display: none;
	}

	#map_container #map_aside #category_container form > div li label{
		padding: 1rem 2rem 1rem 4rem;
		font-size: 1rem;
	}
	#map_container #map_aside #category_container form > div li label span{
		top: 1.3rem;
		left: 1.6rem;
		height: 0.8rem;
		width: 0.8rem;
		border-radius: 0.4rem;
	}
	#map_container #map_aside #category_container form > div li label span:after{
		height: 0.47rem;
		width: 0.47rem;
		left: 0.16rem;
		top: 0.16rem;
		background-color: rgb(83,193,239);
		border-radius: 0.24rem;
	}
	#map_container #map_aside #category_container .active .filterDone{
		display: inline-block !important;
	}

	#map_container #map_aside #category_container .filterDone{
		display: inline-block;
		border-radius: 0.5rem;
		line-height: 2rem;
		font-size: 0.8rem;
		background-color: #fff;
		color: rgb(32,53,89);
		padding: 0 0.6rem;
		text-transform: uppercase;
		font-weight: bold;
		margin: 1.2rem 1.6rem;
	}
	#map_container #map_aside #category_container #practices_categories .filterDone{
		background-color:rgb(32,53,89);
		color:  #fff;
	}



	/* ---------------------- Header ---------------------- */
	#menu{
		height: auto;
		position: fixed;
		top:0;
		left:0;
		right: 0;
		z-index: 5;
	}
	#menu #header_bar{
		display:block;
		text-align: left;
		position:relative;
		height:auto;
		max-height:initial;
		padding: 0.97rem 1.07rem 0.97rem 1.39rem;
		box-shadow: none;
	}
	#menu #header_bar > div,
	#menu #header_bar > nav{
		width:100%;
	}
	#menu #page_title{
	    text-align: left;
	}
	#menu #page_title #mm_logo{
		height: 1.55rem;
		margin: 0;
	}
	#menu #page_title span{
		vertical-align: middle;
		font-size: 0.75rem;
		margin-left: 0.5rem;
	}
	#menu #menu_items{
		display: none;
	}

	#menu #header_bar #social{
		position: absolute;
	    right: 2.38rem;
	    top: 0;
	    width: auto;
	}
	#menu #header_bar #social a {
		padding: 0.98rem 1rem 1.03rem 1rem;
	}

	/* --------------------- Menu --------------------------*/
	#menu_nav{
		display: block;
		overflow: hidden;
	}

	#menu_nav #menuToggle{
		display: block;
		float: left;
		top: 0;
		right: 0;
		z-index: 1;
		-webkit-user-select: none;
		user-select: none;
	}

	#menu_nav #menuToggle input{
		display: block;
		position: absolute;
		cursor: pointer;
		top:0;
		right: 0;
		width:3.2rem;
		height: 3.25rem;
		opacity: 0; /* hide this */
		z-index: 2; /* and place it over the hamburger */
		-webkit-touch-callout: none;
	}

	#menu_nav #menuToggle span{
		display: block;
		position: absolute;
		cursor: pointer;
		top:1.35rem;
		right: 1rem;
		width: 1.1rem;
		height: 2px;
		margin-bottom: 3px;
		background: #ffffff;
		border-radius: 3px;
		z-index: 1;
		transform-origin: 0px 0px;
		transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
					background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
					opacity 0.55s ease;
	}

	#menu_nav #menuToggle span:first-child{
		transform-origin: 0% 0%;
	}
	#menu_nav #menuToggle span:nth-last-child(3){
		transform-origin: 0% 100%;
		margin-top:5px;
	}

	#menu_nav #menuToggle span:nth-last-child(2){
		transform-origin: 0% 100%;
		margin-top:10px;
	}

	#menu_nav #menuToggle input:checked ~ span{
		opacity: 1;
		margin-left: 2px;
		transform: rotate(45deg) translate(0px, 50%);
		background: #ffffff;
	}

	#menu_nav #menuToggle input:checked ~ span:nth-last-child(3){
		opacity: 0;
		transform: rotate(0deg) scale(0.2, 0.2);
	}

	#menu_nav #menuToggle input:checked ~ span:nth-last-child(2){
		transform: rotate(-45deg) translate(0px, -50%);
	}

	#menu #header_bar #menu_nav ul{
		position: fixed;
		display: block;
		padding: 0.75rem 0;
		top: 3.4rem;
		width: 320px;
		right: -100%;
		background: rgb(27,77,120);
		background: linear-gradient(90deg, rgba(10,163,228,1) 0%, rgba(32,53,89,1) 73.74%, rgba(32,53,89,1) 100%);
		border-left: 1px solid rgba(10,163,228,1);
		list-style-type: none;
		-webkit-font-smoothing: antialiased;
		transform-origin: 0% 0%;
		transition: all 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
	}

	#menu_nav ul li{
		text-align: center;
		display: block;
		text-transform: uppercase;
		font-weight: bold;
		width: 100%;
	}
	#menu_nav ul li a{
		padding: 0.75rem 0;
		font-size: 0.75rem;
	}

	#menu_nav #menuToggle input:checked ~ ul{
		right: 0 !important;
	}

	/* ---------------------- Carousel ---------------------- */
	#cases{
		padding: 0;
		background: linear-gradient(0deg, rgba(10,163,228,1) 0%, rgba(32,53,89,1) 100%);
		padding-top: 2rem;
	}
	#cases .carousel{
		margin: 0;
		border-top: 0;
	}
	#cases .carousel::before,
	#cases .carousel::after{
		display: none;
	}
	#cases .carousel .carousel-item img,
	#cases-container div img{
		height:15.5rem;
	}
	.carousel-control-next,
	.carousel-control-next:hover, 
	.carousel-control-prev,
	.carousel-control-prev:hover{
		background-color: #fff;
		opacity: 1;
	}
	.carousel-control-next-icon, .carousel-control-prev-icon{
		width: 0.8rem;
    	height: 1rem;
	}
	.carousel-control-prev-icon{
		background-image: url("../img/left_arrow_blue.svg");
	}
	.carousel-control-next-icon{
		background-image: url("../img/right_arrow_blue.svg");
	}
	#case_content #case_aside,
	#case_content #case_aside h3{
		text-align:center;
	}
	#case_content #case_aside a, #case_content #case_aside h3 {
    	padding: 0 2.2rem;
	}
	#case_content #case_aside h3:first-of-type{
		margin-top:2.2rem;
	}
	.carousel-caption .country{
		font-size: 1rem;
		line-height: 1.3;
		border-radius: 8px;
		padding: 0 .5rem;
	}
	.carousel-caption h2{
		font-size: 1rem;
		font-weight: bold;
	}
	.carousel-caption a{
		font-size: 1rem;
		line-height: 1.3;
	}
	.carousel-caption p{
		font-size: 1rem;
		display: none;
	}




	/* ---------------------- Cases & partners ---------------------- */
	#partners{
		display: none;
	}
 	#cases-container article{
		position: relative;
		padding: 1.5rem 2rem;
		width:100%;
		margin: 0;
		border-bottom: 1px solid #00ccff;
	}
	#cases-container article h1{
		font-size: 1.1rem;
		margin-top:1.7rem;
		margin-bottom: 0.8rem;
	}
	#cases-container article span{
		font-size: 0.9rem;
	}
	#cases-container article .date{
		position: absolute;
		top:1.5rem;
		left:2rem;
	}
	#cases-container article .submitted::before{
		display: none;
	}
 	#cases-container article div img{
		 display: none;
	}
	#cases-container article a:hover div::after{
		display: none;
	}
    /* ---------------------- Footer ---------------------- */
  	#footer img {
		padding: 4rem 0 2rem 0;
		width: 50%;
	  }
	#footer a, #footer span {
		font-size: 0.9rem;
	}
	#footer{
		padding-bottom: 0.6rem;
	}
  	
  	/* --------- Case page ------------- */
  	
  	#case_content #case_aside,
  	#case_content #case_text_container,
  	#best_content #best_p, #best_content #best_aside{
  		width:100%;
  	}
  	#case_content #case_text_container{
  		padding-top:4rem;
  	}
  	#case_content #case_text_container #case_text_header h1{
  		padding: 1.13rem 0 2.13rem 0;
  	}
  	#case_content #case_text_container #case_text_header .tag,
  	#best_content #best_p .practice .tag{
  		margin-bottom:1rem;
  	}
  	#case_content #case_text_container #case_text_header,
  	#case_content #case_text_container #case_text_body,
  	#best_p, #m_best_p, #best_content #best_p, #best_content #best_aside,
  	#article{
  		padding:3.5rem 3rem 2rem 3rem;
  		font-size:1.2rem;
  	}
  	#case_content #case_text_container #case_text_header{
  		padding:2rem 3rem 0 3rem;
  	}
  	#case_content #case_text_container #case_text_body img,
  	#best_content #best_p .practice img,
  	#article img{
  		max-width:100%;
  		height:auto;
  	}
  	#best_content #best_aside .bottom,
  	#best_content #best_aside .list{
  		width:100%;
  		position:relative;
	}
	#case_content #case_text_container #case_text_body{
		padding-top: 0;
	}
	  
	#m_best_p h3{
		font-size: 1.8rem;
		line-height: 1.6;
		letter-spacing:0.2rem;
	}
	#m_best_p a{
		line-height: 2.2;
	}


	/* ------------------- Corona --------------------*/

	#map_container.corona{
		display: block;
		height: auto;
	}
	#map_container.corona #corona_map{
		height: 50vh !important;
	}
	#map_container #corona_map_aside{
		width: 100%;
		height: auto;
		border-bottom: 2px solid #fff;
		padding-bottom: 20px;
	}
	#map_container #corona_map_aside #map_data{
		padding-top: 20px !important;
	}




}

@media only screen and (max-width: 400px) {
	body, html{
	  font-size:13px;
    }
 	#case_content #case_text_container #case_text_header, 
 	#case_content #case_text_container #case_text_body, 
 	#best_p, #m_best_p, #best_content #best_p, 
 	#best_content #best_aside, #article{
		font-size: 1.2rem;
		padding:3.5rem 2rem 2rem 2rem;
	 }
	 #case_content #case_text_container #case_text_body{
		 padding-top: 0;
	 }
}


@media only screen and (min-width: 1250px) {

	#menu_nav,
	#menu #header_bar li:last-of-type a  {
		margin-left: 4rem;
	}
}