@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-display : block;
  font-weight: 400;
  src: url('../fonts/roboto-v20-latin-regular.eot');
  src: local(''),

       url('../fonts/roboto-v20-latin-regular.eot?#iefix') format('embedded-opentype'),
       url('../fonts/roboto-v20-latin-regular.svg#Roboto') format('svg');
}

html{
	scroll-behavior: smooth;
}

div{
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
-moz-box-sizing: border-box;    /* Firefox, other Gecko */
box-sizing: border-box;
}

body{
	display: block;
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
	box-sizing:border-box;
	margin:0px;
}

h1{
	font-size:40px;
	font-weight: 200;
}

h1.section-title{
	text-align: center;
	padding:40px;
	margin:auto;
}

h2.main-title{
	font-weight: 400;
  margin-left: 12px;
}

h2.light{
	text-align: center;
	font-weight: 100;
	padding: 40px;
	padding-top: 0px;
}


.centered-block{
	justify-content: center;
    align-items: center;
    align-content: center;
}

.max-width400px{
	max-width: 380px;
}

.top0{
	top:0px;
}

#return-to-top {
	z-index: 50;
    position: fixed;
    bottom: 100px;
    right: 30px;
    background: rgb(0, 0, 0);
    background: rgba(0, 0, 0, 0.7);
    width: 60px;
    height: 60px;
    text-decoration: none;
    -webkit-border-radius: 35px;
    -moz-border-radius: 35px;
    border-radius: 35px;
    -webkit-transition: all 0.3s linear;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.upicon{
	height:60%;
	width:60%;
	position: absolute;
	top:50%;
	left:50%;

		transform: translate(-50%,-50%);
}

.hide{
	display: none;
}

#return-to-top i {
    color: #fff;
    margin: 0;
    position: relative;
    left: 16px;
    top: 13px;
    font-size: 19px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#return-to-top:hover {
    background: rgba(0, 0, 0, 0.9);
}
#return-to-top:hover i {
    color: #fff;
    top: 5px;
}


.outter-shadow{
	z-index:10;
	position:relative;
	box-shadow: 0px 0px 3px black;
}

.padding-15px{
	padding: 10px;
}

.max-height{
	height:inherit;
}

.resized{
	height:100%;
}

.fill-width{
	width:100%;
}

.absolute{
	position:absolute;
}

.centered{
	align-items: center;
}

.centered-text{
	line-height: 100%;
	padding:7px 0px;
}

.flex{
	display:flex;
}

.flex-down{
	flex-direction: column;
}

.no-margin{
	margin:0px;
}

.filler{
	height:100vh;
}

.overflow-hidden{
	overflow: hidden;
}

.width-clamped{
	width:inherit;
	max-width: 100%;
}

.no-height{
	height:0px;
}

.padding-50px{
	padding:25px;
}

.padding-150px{
	padding:150px;
}

.no-padding{
	padding:0px;
}

.side-padding-50px{
	padding-left:10%;
	padding-right:10%
}

.right-padding-10{
		padding-right:10%
}

.feature-list{
	margin:auto;
	width:80%;
}

.mentions{
    margin:auto;
  width:60%;
}

.width-60{
	width:60%;
}

.flex-align-bottom{
	align-self:flex-end;
}

.flex-responsive{
	display:flex;
	justify-content: center;
}

.unselectable {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.select-custom {
  max-width:200px;
  position: relative;
  flex-direction: row;
  margin: auto;
}

.select-custom select {
  display: none; /*hide original SELECT element: */
}

.select-selected {
  background-color: #617e85;

      -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/* Style the arrow inside the select element: */
.select-selected:after {
  position: absolute;
  content: "";
  top: 14px;
  right: 10px;
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-color: #fff transparent transparent transparent;
}

/* Point the arrow upwards when the select box is open (active): */
.select-selected.select-arrow-active:after {
  border-color: transparent transparent #fff transparent;
  top: 7px;
}

/* style the items (options), including the selected item: */
.select-items div,.select-selected {
  color: #ffffff;
  padding: 8px 16px;
  border: 1px solid transparent;
  border-color: transparent transparent rgba(0, 0, 0, 0.1) transparent;
  cursor: pointer;
}

/* Style items (options): */
.select-items {
  position: absolute;
  background-color: #617e85;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 1;

   -webkit-touch-callout: none;
   -webkit-user-select: none;
   -khtml-user-select: none;
   -moz-user-select: none;
   -ms-user-select: none;
    user-select: none;
}

/* Hide the items when the select box is closed: */
.select-hide {
  display: none;
}

.select-items div:hover, .same-as-selected {
  background-color: rgba(0, 0, 0, 0.1);
}

.flex-row{
	flex-direction: row;
}

td{
	display: flex;
	vertical-align: center;
}

.flex-vertical-centered{
	padding:14px;
	align-items: center;
}

.margin-auto{
	margin: auto;
}

.right-align{
	text-align: right;
}

a.white:link {
  color: #273852;
  text-decoration: none;
}

a.white:visited {
	color:#273852;
}

a.white:hover {
	color:#5673a0;
}

a.white:active {
  color: #273852;
}

a.thin{
	font-weight: 400;
}

a.bold{
	font-weight: 550;
}

.anchor-parent{
	height:0px;
	width:0px;
}

.anchor-child{
	position:absolute;
	z-index:-10;
	top:-80px;
	left:0px;
}

.justify{
  text-align: justify;
  padding-top:10px;
  padding-bottom: 10px;
}

.main-icon{
  cursor: pointer;
}

button{
  background:none;
  border:none;
  cursor: pointer;
}

.d-block{
  display: unset;
}

.d-none{
  display: none !important;
}

.cookie{
  position: fixed;
  background: #101c25;
  width: 100%;
  left:0;
  bottom: 0;
  padding:16px;
  color: white;
  z-index: 1;
  padding: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align:justify;
}

.cookie-button{
  cursor: pointer;
  border: 1px solid white;
  transition-property: all;
  transition-duration: 0.1s;
  color: white;

  padding: 12px;
  margin-left: 32px;
}

.cookie-button:hover{
  background: white;
  color: #101c25;
}

.message-sent{
  position: fixed;
  background: #101c25;
  width: 100%;
  left:0;
  bottom: -100px;
  height: 80px;
  color: white;
  z-index: 1;

  transition-property: bottom;
  transition-duration: 0.5s;

  display: flex;
  align-items: center;
  justify-content: center;
}

.message-sent.show{
  bottom: 0px;
}

.asterisque{
  font-size: 22px;
}

.input-name{
  position: fixed;
  top:-600px;
}