.account-page{
    margin-left: 400px;
    overflow-x: hidden;  
    overflow-y: auto; 
}
.account-responsive-menu{ display: none; }

.account-page, .account-section{
    width: 100%;
}

.account-page .title{
    font-weight: 500;
    font-size: 34px;
}

.account-content{
    display: flex;
}

.account-content .account-nav{
    height: calc(100vh - 150px);
    width: 310px;
    padding: 20px;
    margin-right: 30px;
    background: #34495E12;
    border-radius: 14px;
}

.account-content .account-nav ul{
    text-align: center;
    list-style: none; 
    counter-reset: li-counter;
    padding: 0;
}

.account-content .account-nav ul li{
    padding: 8px 20px;
    border-radius: 10px;
    font-size: 18px;
    counter-increment: li-counter;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
}

.account-content .account-nav ul li a, .account-content .account-nav ul li a:active { 
    color: #34495E; 
    text-decoration: none;
}

.account-content .account-nav ul li.active{
    background-color: #FFF;
    color: #34495E;
    font-weight: 500;
}

.logout-link{
    display: flex;
    align-items: center;
    gap: 10px;
}

.logout-link img{
    transform: rotate(90deg);
}

.account-content .step-list{
    width: calc(100% - 300px);
}

.account-step h2{
    font-size: 26px;
    font-weight: 500;
}

.account-step h3{
    font-size: 18px;
    font-weight: 500;
    margin-top: 20px;
}

.account-step p{
    font-size: 18px;
    line-height: 130%;
}

.account-box{
    border: 1px solid #E2E2E2;
    border-radius: 14px;
    padding: 30px 40px;
    margin-bottom: 24px;
}

/* Mon-compte page1 */

.picture-row{
    display: flex;
    align-items: center;
    gap: 24px;
    margin: 20px 0;
}

.account-step .picture-container{ 
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 24px;
    border-radius: 15px;
    box-shadow: 0px 30px 180px 10px #0000001A;
}

.account-step .picture{
    width: 80px;
    height: 80px;
    border-radius: 100%;
    background-size: cover;        
    background-position: center;   
    background-repeat: no-repeat;  
}
.account-step .picture-container p{ margin: 10px 0 0 0; } 

.highlight{
    font-weight: 500;
    font-size: 18px;
    line-height: 130%;
}

.upload-button{
    position: relative;
}

.upload-button input{ 
    width: 100%;
    height: 50px;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    cursor: pointer;
} 

.upload-button button{
    background: #34495E12;
    border: none;
    border-radius: 100px;
    padding: 10px 18px;
}

form{
    display: flex;
    flex-direction: column;
}

form .row{
    margin: 15px 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

form .col, form .col2, form .col3{
    display: flex;
    flex-direction: column;
}
form .col{ width: 100%; }
form .col2{ width: 50%; }
form .col3{ 
    width: 33%; 
    padding: 0 6px;
}

form .col3:first-child,
form .col2:first-child{ padding: 0 12px 0 0; } 
form .col:first-child{ padding: 0 6px 0 0; } 

form .col3:last-child,
form .col2:last-child,
form .col:last-child{ padding: 0 0 0 12px; } 

form input,
form select{ 
    height: 48px;
    padding: 8px 16px;
    border-radius: 8px;
    box-shadow: 0px 0px 10px 0px #FFFFFF0A inset;
    border: 1px solid #E2E2E2
}

form textarea{
    min-height: 100px;
    padding: 8px 16px;
    border-radius: 8px;
    box-shadow: 0px 0px 10px 0px #FFFFFF0A inset;
    border: 1px solid #E2E2E2
}

form .phone-input{
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px;
    border: 1px solid #E2E2E2;
    border-radius: 8px;
}

form .phone-input select{
    height: 40px;
    box-shadow: 0px 20px 40px 5px #00000012;
    border: none;
}
form .phone-input p{ margin: 0; }
form .phone-input input{ 
    width: 100%;
    height: 40px;
    border: none; 
}

form .radio-input{
    width: 50%;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

form .radio-input input{
    width: 28px;
    height: 28px;
    margin-right: 10px;
}

form .radio-input input[type="radio"]{
    appearance: none;
    outline: none;
    width: 28px;
    height: 28px;
    margin-right: 10px; 
    border-radius: 9999px;
    border: 2px solid #E2E2E2; 
    display: inline-grid; 
    place-items: center;
    cursor: pointer;
}

form .radio-input input[type="radio"]:checked{
    border: 2px solid #FF5C00; 
    background: radial-gradient(circle, #FF5C00 0 50%, transparent 52%);
}

form .radio-input label{
    font-size: 18px;
    line-height: 13%;
    margin: 5px 0 0 0;
}

form button.submit{
    width: 100%;
    max-width: 300px;
    display: flex;
    align-self: flex-end;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    padding: 10px 0;
    text-align: center;
    color: #FFF;
    background-color: #FF5C00;
    border-radius: 100px;
    border: none;
}

.contrat-list{
    display: flex;
    flex-wrap: wrap;
    gap: 4%;
}

.contract{
    width: 48%;
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
    box-shadow: 0px 50px 140px -30px #00000008 inset;
    border-radius: 20px;
    padding: 24px;
}

.contract .head{
    display: flex;
    justify-content: space-between;
}

.contract .head p{ 
    height: 40px;
    display: flex;
    align-items: center;
    font-weight: 500;
    padding: 5px 15px 5px 5px;
    border-radius: 100px;
    border-width: 2px;
    background-color: #FFF;
    color: #FF5C00;
    text-transform: uppercase;
    gap: 10px;
    font-size: 16px !important;
}

.contract.signed .head p{ 
    color: #3CBAC4;
}

.contract a{
    width: 100%;
    max-width: 225px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    padding: 10px 0;
    text-align: center;
    color: #FFF;
    background-color: #FF5C00;
    border-radius: 100px;
    border: none;
    cursor: pointer;
} 

.contract .subtitle{
    font-size: 18px;
    font-weight: 500;
}

.contract.signed a{ 
    background-color: transparent;
    justify-content: flex-start;
    color: #34495E;
    gap: 10px;
    font-weight: 500;
}

.no-padding{  padding: 0 !important;  }
.padding-r{ padding: 0 12px 0 0 !important; }
.responsive{ display: none; }

@media (max-width: 1260px) {
    .account-nav, .hide-responsive{ display: none !important; }
    .account-page{ margin-left: 0; }

    .responsive{
        display: block;
    }

    .account-page .return-button,
    .account-page .return-button:hover,
    .account-page .return-button:active{
        width: 115px;
        height: 52px;
        display: flex !important;
        align-items: center;
        justify-content: center;
        opacity: 1;
        gap: 10px;
        border-radius: 100px;
        padding-right: 16px;
        padding-left: 16px;
        background-color: #34495E12;
        font-size: 16px !important;
        font-weight: 500;
    }     
    
    .account-page .return-button img{ 
        width: 20px;
        height: 20px;
        transform: rotate(180deg);
    }

    .account-responsive-menu{   display: block; }

    .account-responsive-menu .picture-container{
        flex-direction: row;
        gap: 10px;
        font-size: 16px;
        box-shadow: none;
    }

    .account-responsive-menu .picture-container .picture{
        width: 40px;
        height: 40px;
    }
    .account-responsive-menu .picture-container p{ margin: 0; }

    .account-responsive-menu .account-navigation{
        display: flex;
        flex-direction: column;
        border-radius: 20px;
        padding: 20px;
        gap: 8px;
        background-color: #FFF;
        box-shadow: 0px 10px 20px -5px #0000000A;
    }

    .account-responsive-menu .account-navigation ul{ 
        display: flex;
        flex-direction: column;
        list-style: none; 
        margin: 0;
        padding: 0;
        gap: 10px;
    }

    .account-responsive-menu .account-navigation ul li{
        height: 52px;
        display: flex;
        justify-content: space-between;
        padding: 0 18px;
        border-radius: 10px;
        background: #34495E12;
    }

    .account-responsive-menu .logout-link{
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        margin: 40px auto;
    }

    .account-responsive-menu .account-navigation ul li a, .account-responsive-menu .logout-link{ 
        font-size: 16px;
        font-weight: 500;
        color: #34495E;
    }

    .account-responsive-menu .account-navigation ul li a{
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .account-page .title{
        margin: 30px 0; 
        font-size: 20px; 
    } 
    .account-page .account-box{ padding: 20px; }
    .account-page .account-box h2{ font-size: 18px; }

    .account-page form .row{
        flex-wrap: wrap;
        margin: 0;
        gap: 20px;
    }

    .account-page form .row .col, 
    .account-page form .row .col2, 
    .account-page form .row .col3,
    .account-page form  .col2{
        width: 100% !important;
        margin: auto 0;
        padding: 0;
    }

    .account-page form .row label
    ,.account-page form .col label{ font-size: 14px; }

    .account-page form .row input,
    .account-page form .col input,
    .account-page form .row textarea,
    .account-page form .col textarea,
    .account-page form .row select,
    .account-page form .col select{ font-size: 15px; }

    .account-page form .radio-ctn{
        justify-content: flex-start;
        gap: 0;
    }

    .account-page form .radio-ctn .radio-input{
         width: auto; 
         margin-right: 20px;
    }

    .account-page form .radio-ctn .radio-input label{
        display: flex;
        align-items: center;
    }

    .account-page form button.submit{
        align-self: center;
        margin-bottom: 30px;
        font-size: 16px;
    }

    .account-page .upload-button button{ width: 100%; }
    .account-page .picture-container p{ font-size: 14px; }

    .contrat-list .contract{
        width: 100%;
    }
}