
.no-select *{
    user-select: none;
    -webkit-user-select: none;
    -webkit-tap-highlight-color: transparent;
}



header {
    display: block;
    position: relative;
    height: 300px;
    background-position: center;
    background-size: cover;
    font-family: 'Roboto', sans-serif;
}

header:before {
    content: "";
    display: block;
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 45%;
    background: linear-gradient(to bottom, var(--active_shadow) 0%, transparent 100%);
}

header:after {
    content: "";
    display: block;
    position: absolute;
    z-index: 1;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 45%;
    background: linear-gradient(to top, var(--active_shadow) 0%, transparent 100%);
}

header .layer {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    background: black;
    opacity: 0.5;
    height: 100%;
    width: 100%;
}

header h1 {
    display: none;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin: auto;
    color: white;
    text-shadow: 0 0 4px var(--black_shadow);
    text-align: center;
    height: max-content;
    width: max-content;
    text-transform: uppercase;
    z-index: 2;
}


.content {
    display: block;
    position: relative;
    padding: 30px;
    background: var(--bg_footer);
    font-family: 'Roboto', sans-serif;

}

.form {
    display: block;
    position: relative;
    padding: 30px;
    background: white;
    margin: auto;
    max-width: 1028px;
    width: 70%;
}
body.spread .form{
    padding-bottom: 305px;
    transition: all 0.35s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.form-content {
    display: block;
    position: relative;
    width: 60%;
}

.form h3 {
    font-weight: normal;
    font-size: clamp(14px, 2vw, 16px);
    margin-bottom: 20px;
    white-space: nowrap;
}

.form b {
    color: red
}

.form table {
    width: 100%
}

.form tr {
    border-bottom: 15px solid transparent
}

.form td {
    position: relative;
}

.form td.sel {
    border-right: 20px solid transparent
}

.form td.sel i{
    position: absolute;
    height: max-content;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 15px;
    transition: all 0.15s ease-out;
}

.form td.sel select:focus + i {
    color: var(--bleu);
    transform: rotate(180deg);
}

.form .pin {
    width: 115px;
    height: 115px;
}

.form select {
    appearance: none;
    cursor: pointer;
    display: block;
    height: 50px;
    padding: 10px;
    border: 1px solid rgba(0, 0, 0, 0.2);
    width: 100%;
    font-weight: 700;
    background-color: transparent;
}

.form input[type="file"] {
    position: absolute;
    width: 0;
    height: 0;
    opacity: 0;
    cursor: pointer;
}

.form label[for="pic"] {
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: var(--grey_5);
    color: var(--grey_7);
    font-size: 28px;
    text-align: center;
    cursor: pointer

}

.form label[for="pic"]:hover {
    background: var(--grey_7);
    color: var(--grey_5);
}

.form label[for="pic"] i {
    line-height: 115px;
}

.form input {
    appearance: none;
    cursor: auto;
    display: block;
    height: 50px;
    padding: 10px;
    border: 1px solid rgba(0, 0, 0, 0.2);
    width: 100%;
    font-weight: 700;
    background-color: transparent;
    margin-bottom: 15px;
}

.form label[for="cv"] {
    display: block;
    position: relative;
    padding: 20px 25px;
    background: var(--grey_5);
    color: var(--grey_font_2);
    font-weight: 700;
    text-align: center;
    margin-bottom: 15px;
    cursor: pointer;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.form label[for="cv"]:hover {
    color: var(--grey_5);
    background: var(--grey_font_2);
}

.form button {
    font-size: 18px;
    appearance: none;
    display: block;
    font-weight: bold;
    position: relative;
    padding: 20px 25px;
    width: 100%;
    background-color: var(--bleu);
    text-align: center;
    color: white;
    border: 0;
    overflow: hidden;
    text-transform: uppercase;
    cursor: pointer;
    margin-bottom: 30px;
}

.form .hover {
    font-size: 18px;
    top: 0;
    left: 0;
    appearance: none;
    display: block;
    position: absolute;
    font-weight: bold;
    padding: 20px 25px;
    width: 100%;
    background: var(--font_2);
    text-align: center;
    color: white;
    border: 0;
    overflow: hidden;
    text-transform: uppercase;
    cursor: pointer;
    transition: all 0.15s ease-out;
    transform: translate3d(-100%, 0, 0);
}

.form button:hover .hover {
    transform: translate3d(0, 0, 0);
}

.map{
    display: block;
    position: absolute;
    top:70px;
    right: -50px;
    width:40%;
}
.map .logo{
    display: block;
    position: relative;
    padding: 6px 30px;
}
.map > span {
    background:var(--bleu);
    cursor:pointer
}
.map span:not(.logo){
    border-top: 1px solid rgba(0,0,0,0.1);
}

.map span:not(.logo):before{
    content:"";
    display:block;
    position:absolute;
    height:1px;
    left:0;
    top:-1px;
    right: 0;
    background:var(--bleu);
    border-bottom: 1px solid rgba(0,0,0,0.1);
}

.map .spot{
    display: block;
    position: relative;
    padding: 15px 8px 25px 25px;
}
.map .spot .ag{
    color:white;
    display:block;
    font-size:18px;
    margin-bottom: 8px;
}

.map .spot + .local{
    display:block;
    position:relative;
    width:100%;
    height: 0;
    background-size: cover;
    background-position: center;
    transition: all 0.35s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.map .spot.active + .local{
    height: 245px;
}
body.spread .map .spot.active:before{
    display:none
}


.map ul{
    display:block
}
.map ul li{
    font-size:15px
}
.map ul:after{
    content:"Voir sur la carte";
    display:block;
    position:relative;
    color:white;
    font-weight:bold;
    margin-top:12px
}
.map ul li[data-map="pays"]{
    margin-bottom:12px
}
.map ul li[data-map="tel_1"]:before,
.map ul li[data-map="tel_2"]:before{
    content: "Tel :";
    display: inline-block;
    margin-right:4px;
    font-weight:bold
}

.techno{
    bottom: 0;
    left: 0;
    right: 0;
}

@media only screen and (max-width: 1028px) {
    header {
        height: 210px;
    }

    header .layer,
    header h1 {
        display: block;
    }

    .content {
        padding: 10px
    }
    .form {
        width:100%
    }
    .form h3 {
        white-space: normal;
    }
    .form-content {
        width: 100%
    }

    .map{display:none}


}