:root {
  --main1: #6ec7ed; /*#1DD3B0;*/
  --main2: #72c8bb; /* #1DD3B0; /*#AFFC41; */
  --second1:#086375;
  --second2:#086375;/* #3C1642; */
  --submitbutton:#48c353;
  --submitbuttonhover:#20AF24;
/*
  --main1: #6ec7ed;
  --main2: #72c8bb;
  --second1:#8cd1f0;
  --second2:#8dd1db;
  --submitbutton:#48c353;
  --submitbuttonhover:#20AF24;
  */
}


*{
  margin:0;
  padding:0;
  font-family:Outfit;
}
body{
  background:linear-gradient(45deg,var(--main1) 0%, var(--main2) 100%); /*//rgb(110,199,238)*/
  display:flex;
  flex-direction: column;
  justify-content: space-between;
  overflow-x: hidden;
}
#bannerwrapper{
  display:block;
  position:relative;

}
#banner{
  position: absolute;
  bottom:0;
  left:10px;
  color:white
}#banner h1{
  color:black;
}

a{
  text-decoration: none;
}
nav{
  display:flex;
  flex-direction:column;
  justify-content: flex-end;
  align-items: center;
  background-color:white;
  min-height:100px
}
nav ul{
  list-style-type: none;
  display:flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}

nav ul li a{
  display:inline-block;
  color:gray;
  text-decoration:none;
  font-size:1.1em;
  padding:15px 50px;
  transition:0.2s;
}
nav ul li a:hover{
  color:black;
  font-weight: bold;
  transition:0.2s;
}

#mobilebanner{
  display:none;
}
h1, h3, p, label{
  color:white;
}
p{
  font-size:1.2em;
}
h1{
    color:white;
    font-size:3em;
}
input{
  border-radius:5px;
  background-color:rgba(256,256,256, 0.5);
  padding:10px;
  border:none;
  margin-top:5px;
  transition:0.2s;
}

input:focus{

  background-color:rgba(256,256,256,1);
  padding:10px 15px;
  transition:0.2s;
  outline:none;
}

#first{
  height:150px;
  padding:30px;
}

form{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-height:600px;
  width:40%;
  padding:25px;
  min-width:200px;
  max-width:700px;
  border-radius:20px;
  border-top-left-radius:0px;
  border-bottom-left-radius:0px;
  background:linear-gradient(45deg, var(--second1) 0%, var(--second2) 100%);
  box-shadow:1px 1px 10px 10px rgba(100,100,100,0.05);
}
.wrapper {

  display:flex;
  flex-direction:column;
  justify-content:space-around;
}
.items{
  display:flex;
  flex-direction:row;
  justify-content:flex-start;
  align-items:baseline;
  flex-wrap:wrap;
  padding:5px 0px;
}

.wrapper:first-of-type .items{
  padding:0;
  height:1px;
  display:flex;
  flex-direction: row;
  justify-content: flex-end;
  position:relative;
}

form .wrapper:first-of-type .items img{
  display:block;
  position:relative;
  width:100px;
  height:100px;
  margin-top:-75px;
  margin-right:-50px;
}
form .wrapper:last-of-type .items{
  display:flex;
  flex-direction: row;
  justify-content: flex-end;
}

.items label{
  flex-grow:0;
  flex-shrink:0;
  margin:0px 2px;
}

.items input[type="number"]{
  flex-grow:1;
  flex-shrink:1;
  max-width:100px;
  margin:0px 2px;
}

.items input[type="text"]{
  flex-grow:1;
  flex-shrink:1;
  min-width:100px;
  margin:0px 2px;
  z-index:2;
}

#address_searchbar{
  display:flex;
  flex-direction: column;
  flex-grow:1;
  flex-shrink:1;
  margin:0px 2px;
}

#address_searchbar input, .guessAddresses{
  flex-grow:1;
  flex-shrink:1;
  margin:0px 2px;
}

form input, form label{
  font-size:1.1em;
}

#results{
display:none;
position:absolute;
max-height:150px;
overflow-y: scroll;
margin-left:2px;
background-color:white;
color:lightblue;
border-bottom-right-radius:10px;
border-bottom-left-radius:10px;
z-index:1;
}

.guessAddresses{
  padding:10px 5px;
}
.guessAddresses:hover{
cursor:pointer;
color:darkgray;
background-color:rgba(100,100,100,0.05)
}

.inputSet{
background-color:rgba(256,256,256,1);
padding:10px 15px;
transition:0.2s;
}

.wrapper:nth-of-type(3) .items{
  display:flex;
  flex-direction:column;
  justify-content:space-around;
}
.wrapper:nth-of-type(3) .items div{
  display:flex;
  flex-direction:row;
  justify-content:space-around;
  margin-top:15px;
}

.wrapper:nth-of-type(3) .items div ul{
  list-style-type: none;
  display:flex;
  flex-direction: column;
  justify-content:center;

}

.themes{
  background-color: white;
  display:flex;
  flex-direction: row;
  justify-content: space-between;
  align-items:center;
  padding:5px 10px;
  border-radius:10px;
  min-width:240px;
  width:100%;
  margin:3px 0px;
}

#ranks{
  max-width:50px;
}
.libelles{
  color:white;
  display:flex;
  flex-direction: row;
  justify-content: space-between;
  align-items:center;
  padding:5px 10px;
  min-width:200px;
  width:100%;
  margin:3px 0px;
  height:30px;
}
.themes:hover{
  cursor:pointer;
}

.dragged{
  box-shadow: 0px 0px 20px 1px rgba(0,0,0,0.1);
  cursor:grabbing;
}
.themes img{
width:30px;
height:30px;
}

#middle{
display:flex;
flex-direction: row;
justify-content: space-between;
position:relative;
width:100%;
min-height:500px;
padding:0px;
}

#right{
  width:60%;
  display:flex;
  flex-direction:column;
  flex-grow:1;
  background-color: rgba(0,0,0,0);
}

#sumup{
background-color:white;
max-height:250px;
display:flex;
display:none;

flex-grow:1;
margin-top:50px;
color:var(--second1);
}

#sumup *{
  color:var(--second1);
}

#sumup > div{
  display:flex;
  flex-direction: row;
  justify-content: space-between;
  padding:15px;
}
#sumup > div > div{
  display:flex;
  flex-direction: row;
}
#sumup > div > div:first-of-type div{
  display:flex;
  flex-direction: column;
}

#sumup > div > div:nth-of-type(2) div{
  display:flex;
  flex-direction: column;
  align-items: center;
  text-align:center;
  padding:0px 45px;
}

#sumup > div > div:nth-of-type(2) div img{
  max-width:100px;
}

#sumup  > div:first-of-type > div:first-of-type > div:nth-of-type(2){
  padding:0px 15px;
}

#sumup div img{
  width:150px;
  height:150px;
  border-radius:15px;
}


label[for="submit"]{
padding:10px;
border-radius:15px;
background-color:var(--submitbutton);
color:white;
font-size: 1.4em;
transition:0.2s;
display:inline-block;
width:180px;
}

label[for="submit"]:hover{
cursor:pointer;
background-color:var(--submitbuttonhover);
transition:0.2s;
}


::-webkit-scrollbar {
  display:none;
}

/* Track */
::-webkit-scrollbar-track {
  border:none;
  background-color:rgba(0,0,0,0);
}

/* Handle */
::-webkit-scrollbar-thumb {
  background: rgba(0,0,0,0.05);
  border-radius: 10px;
  margin-right:2px;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: rgba(0,0,0,0.2);
  transition:0.2s;
  cursor:pointer;
}

footer{
  background-color:rgba(50,50,50,1);
  font-size:0.8em;
  color:rgba(60,60,60,1);
  display:flex;
  flex-direction: column;
  justify-content: space-around;
  align-items: center;
  margin-top:75px;
}
footer div{
  flex-grow: 0;
  flex-shrink: 1;
  color:rgba(60,60,60,1);
}
#wrappernextstepbutton, #nextstepbutton{
  display: none;
}

#mobilenav ul li a{
  padding:10px;
  font-size:1.3em;
  color:grey;
  transition:0.25s;
}

#mobilenav ul li a:hover{
  color:black;
  transition:0.25s;
}

@media screen and (max-width: 800px) {
  #first{
    display:none;
  }
  
#bannerwrapper{
    display: none;
    
}
  #mobilebanner{
    display:flex;
    justify-content: space-between;
    align-items: center;
    height:10vh;
    background-color:black;
    color:white;
    position:fixed;
    z-index:10;
    width:100vw;
  }
  #mobilebanner div,  #mobilebanner h2{
    padding:0 15px;
  }
  #mobilenavbutton{
    display: none;
  }
  #mobilenavbutton:checked + #mobilenav{
    display:block;
    opacity:1;
    position:fixed;
    right:0;
    transition:0.35s;
    width:50vw;
  }
  #mobilenavbutton:not(checked) + #mobilenav{
    opacity:0;
    right:-50vw;
    width:0;
    transition:0.35s;
  }
  #mobilenav{
    position:fixed;
    top:10vh;
    right:-50vw;
    background-color: white;
    transition:0.35s;
    height:90vh;
    box-shadow: 0px 0px 20vw 0px rgba(0,0,0,0.6);
  }
#mobilenav ul {
  list-style-type: none;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
#mobilenav ul li{
    padding:10px 0px;
    font-size:1.3em;
}



  #middle{
    display:flex;
    flex-direction: column;
    justify-content: space-between;
    width:100%;
  }
  #middle form{
    flex-grow: 1;
    width:auto;
    border-radius:0px;
  }

  .wrapper:first-of-type{
    display:none;
  }
  .wrapper:nth-of-type(2), .wrapper:nth-of-type(3){
    height:90vh;
    justify-content: center;
  }
  .wrapper:nth-of-type(2) > div{
    padding:15px 0px;
  }
#right{
    width:auto;
    
}

  #sumup > div{
    display:flex;
    flex-direction: column;
    justify-content: space-between;
    padding:15px;
  }
  #sumup > div > div{
    display:flex;
    flex-direction: row;
  }
  
  #nextstepbutton, #wrappernextstepbutton{
    display: block;
    position:fixed;
    border-radius: 15px;
    padding:10px;
    color:white;
    background-color: grey;
    bottom:25px;
    right:25px;
  }

}
