body{
    font-family: Arial, sans-serif;
    background-color: #f6f8fa;
    margin: 0;
    padding: 0;
}
form{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(4, 1fr);
    gap: 4vh 5vw;
    margin: 3vw 5vw 0;
}
.form-section{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.div3, .div4{
    grid-row-start: 2;
}
.div5, .div6{
    grid-row-start: 3;
}
.div6{
    grid-row-start: 3;
}
.div7, .div8{
    grid-row-start: 4;
}      
h3{
    font-size: 1.5vw;
    text-transform: uppercase;
    font-weight: bold;
    color: #60687b;
    border-bottom: 1px solid #cddae8;
    padding-bottom: 10px;
    width: 100%;
    margin: 0 0 2vh;
    height: 1.5vw;
    visibility: initial;
}
input[type="radio"]{
    display: none;
}
label, .france{
    height: 10vh;
    background-color: #FFF;
    border: 1px solid #cddae8;
    border-radius: 10px;
    cursor: pointer;
    color: #6c7486;
    align-content: center;
    text-align: center;
    font-size: 1.5vw;
}
input[type="radio"]:checked+label, .France_selectionner{
    background-color: #6c7486;
    color:#FFFFFF;
}
.div1 label{
    width: 20vw;
}
.div2 label{
    width: 10vw;
}
.div3 label{
    font-size: 1vw;
    width: 8vw;
    font-size: 1vw;
}
.div3 label span{
    font-size: 1.2vw;
}
.div3 label[for="moins"], .div3 label[for="plus"]{
    width: 4vw;
}
.div4 label{
    width: 20vw;
}
select{
    background-color: #FFF;
    border: 1px solid #cddae8;
    border-radius: 10px;
    padding: 0 5%;
    color: #6c7486;
    font-size: 1.5vw;
    height: 10vh;
}
.france{
    width: 40%;
}
#pays_selection{
    width: 55%;
}
#region_selection{
    width: 100%;
}
.div6 label{
    font-size: 1.2vw;
    width: 8vw;
}
.div6 label span{
    font-size: 1.7vw;
}
.save-button.div8{
    height: 10vh;
}
.save-button.div8{
    height: 10vh;
    background-color: #6c7486;
    color: #FFF;
    border: none;
    border-radius: 10px;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 1.6vw;
    align-self: end;
}
.cache{
    visibility: hidden;
}
.notification{
    width: 85vw;
    border: 1px solid #cddae8;
    border-left: 15px solid #3fdc75;
    height: 5vh;
    margin: 3vh auto 0vw;
    padding: 0 2vw 0 2vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #6c7486;
}
.notification.suppression{
    border-left: 15px solid #FF0000;
}
.supprimer{
    color: #6c7486;
}