*, *::before, *::after{
    margin: 0;
    padding: 0%;
    box-sizing: border-box;
}
:root {
    --background-color: rgb(255, 255, 255);
    --text-color: black;
    --b1:#8f00ff;
    --b2:#fcd5ce;
    --bg-1:#ef476f;
    --bg-2:#f78c6b;
    --bg-3:#ffd166;
    --bg-4:#06d6a0;
    --bg-5:#118ab2;
    --bg-6:#073b4c;
}
body.dark-mode {
    --background-color: black;
    --text-color: white;
}
body{
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 400;
    line-height: 1.1;
    color: var(--text-color);
    padding: 4rem 1rem 0rem 1rem;
    background-color: var(--background-color);
}
nav{
    position: absolute;
    top: 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
    padding: 0px 30px;
    align-items: center;
    left: 0;
    
    backdrop-filter: blur(15px);
}
nav #c{
    background-color: white;
    border-radius: 50px;
    padding: 10px;
}
.photo{background: linear-gradient(60deg, var(--b2) 10%, var(--b1) 100%);}
.aboutme{background: linear-gradient(130deg, var(--b1) 10%, var(--b2) 100%);}
.languages{background-color: var(--bg-1);}
.start{background-color: var(--bg-2);}
.communication{background-color: var(--bg-3);}
.emoji{background-color: var(--bg-4);}
.goal{background-color: var(--bg-5);}
.progress{background-color: var(--b2);}

.container{
    display: grid;
    grid-template-columns: 1fr 2fr 1fr;
    grid-template-rows: 12rem 12rem 12rem;
    max-width: 80rem;
    grid-template-areas: 
        'column1 column2 column3'
        'column1 column2 column3'
        'column1 column4 column4'
    ;
    gap: 1rem;
    margin-inline: auto;
}
.container > *, .inside-elements{
    display: grid;
    gap: 1rem;
}
.inside-elements{
    grid-template-columns: 1fr 1fr;
}
.inside-elements:nth-child(1){
    grid-template-columns: .96fr 2fr;
}
.element{
    border-radius: 10px;
}
.column-one{
    grid-area: column1;
}
.column-two{
    grid-area: column2;
}
.column-three{
    grid-area: column3;
}
.column-four{
    grid-area: column4;
}

.photo{
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}
.photo img{
    margin-top: 20px;
    margin-bottom: 20px;
    border-radius: 50%;
}
.photo h1{
    font-size: 2.5em;
    font-weight: 500;
}
.photo span{color: var(--b1); font-weight: 700; text-decoration: wavy underline; background-color: var(--bg-4);}
.photo h5{
    margin-top: 10px;
}
.aboutme{
    padding: 20px;
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 10px;
}
.aboutme h2{
    font-size: 2em;
}
.aboutme button{
    width: 150px;
    height: 40px;
    font-size: 1.5em;
    background-color: var(--background-color);
    backdrop-filter: blur(20px);
    color: var(--text-color);
    border: 2px solid var(--text-color);
    border-radius: 30px;
    transition: .3s ease;
}
.aboutme button:hover{
    background-color: rgba(255, 255, 255, 0.712);
    transform: scale(1.1);
}
.aboutme img{
    border-radius: 10px;
}
.emoji{
    color: var(--text-color);
    padding: 20px;
    line-height: 1.1;
    text-align: left;
}
.emoji h4{
    background-color:var(--background-color);
    padding: 10px;
    border-radius: 20px;
}
.emoji h2{color: var(--bg-6);}
.emoji span{color: var(--bg-3); background-color: var(--bg-6);}
.languages{
    color: var(--background-color);
    padding: 20px;
}
.languages ul{
    display: flex;
    list-style: none;
    gap: 20px;
    margin-top: 10px;
    flex-wrap: wrap;
}
.languages ul li{
    background-color: var(--b2);
    padding: 10px;
    color: black;
    border-radius: 40px;
    transition: .2s ease;
}
.languages ul li:hover{
    background-color: rgb(255, 122, 122);
}
.start{
    padding: 10px;
}
.communication{
    padding: 10px;
}
.clock{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
}
.clock img{
    border-radius: 50%;
}
.clock div{
    font-size: 1em;
    font-weight: 800;
    text-align: left;
}
.clock h2{
    font-size: 2.5em;
    font-weight: 800;
}
.goal{
    padding: 20px;
}
.goal .clock{
    font-size: 0.6em;
}
.progress{
    padding: 10px;
}
.con{
    gap: 80px;
}
.progress .con , .left,.right{
    display: flex;
    align-items: center;
}
.left{
    gap: 30px;
    background-color: #ffb71b;
    padding: 10px;
    border-radius: 20px;
}
.right{
    gap: 30px;
    background-color: #7455ff;
    padding: 10px;
    border-radius: 20px;
}
.element{
    transition: .3s ease;
}
.element:hover{
    transform: translateY(-10px);
}
@media all and (max-width:1280px){
    .container{
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 12rem 12rem 12rem 12rem;
        grid-template-areas: 
            'column1 column1'
            'column2 column3'
            'column2 column3'
            'column4 column4'
        ;
    }
    .column-one{
        grid-template-columns: 1fr 1fr;
    }
    .photo{
        flex-direction: row;
        gap: 20px;
        justify-content: center;
    }
    .photo h5{
        display: none;
    }
    .emoji{
        line-height: 1.3;
    }
    .aboutme{
        flex-direction: row;
        justify-content: center;
        line-height: 1.9;
    }
    .aboutme button{
        height: 70px;
    }
}
@media all and (max-width:920px){
    .con{
        gap: 10px;
    }
}
@media all and (max-width:870px){
    .container{
        grid-template-columns: 1fr;
        grid-template-rows: auto auto;
        grid-template-areas: 
            'column1'
            'column3'
            'column2'
            'column4'
        ;
    }
    .column-one{
        grid-template-columns: 1fr 1fr;
    }
    .inside-elements, .inside-elements:nth-child(1),.column-one{
        grid-template-columns: 1fr;
    }
    .progress .con {
        flex-direction: column;
    }
}

@media all and (max-width:620px) {
    .photo{
        gap: 0;
        flex-direction: column;
    }
    .aboutme{
        flex-direction: column;
    }
    .clock{
        flex-direction: column;
        text-align: center;
    }
    .left, .right{
        flex-direction: column;
    }
}