*, *::before, *::after{
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-family: 'Roboto', sans-serif;
    font-family: 'Source Sans 3', sans-serif;
}



/* --- HEADER --- */

.banner,
.navbar,
.nav-menu{
    display: flex; 
    user-select: none;  
}

.banner{
    gap: 0.3rem;
    
}

header ul,
.hero-date{
    text-transform: uppercase;

}

.nav-link{
    transition: 0.7s ease;
}

.hamburger{
    display: none;
    cursor: pointer;
}

.bar{
    display: block;
    width: 25px;
    height: 3px;
    margin: 5px auto;
    -webkit-transition:all 0.3s ease-in-out;
    transition:all 0.3s ease-in-out;
    background-color: #0E0E0E;
}


header ul{
    list-style-type: none;
    gap: 1.25rem;
    color: #090909;
    font-weight: 600;
    
}

.main__contact{
    height: 100vh;
}

header ul a{
    text-decoration: none;
    color: #090909;
}

header ul a:hover,
header ul a:focus,
a.active{
    color: #35078a;
    border-bottom: 4px solid #35078a;
    transition: .5s;
}


.navbar{
    justify-content: space-between;
    padding: 0.625em;
    align-items: center;
}

.banner img{
    width: 10%;
    max-width: 24px;
}

.banner h1{
    font-family: 'Roboto', sans-serif;
    font-weight: 700;
    font-size: 1rem;
    color: #0E0E0E;
}

header ul,
.hero-date{
    font-size: 0.875rem; 
}

/* --- HERO SECTION --- */

.hero{
    background-image: url(/Images/article-image-hero.png);
    background-size: cover;
    width: 100%;
}

.hero:hover,
.banner:hover{
    cursor: pointer;
}

.intro{
    margin-left: 1.42em;
    padding-top: 5.71em;
    max-width: 750px;
    width: 90%;
    color: #ffffff;
    margin-bottom: 1.42em;
}

.intro__date{
    font-weight: 400;
    font-size: 0.875rem;
    text-transform: uppercase;
}

.intro__h2{
    font-weight: 700;
    font-size: 2rem;
    
}

.intro__paragraph{
    font-weight: 400;
    font-size: 1rem;
    padding-bottom: 1.75em;
    
}

/* --- BLOGS SECTION --- */

.blogs{
    display: flex;
    flex-direction: column;
    gap: 1.875em;
    text-align: center;

}

.blogs__hidden{
    display: none;
}

.blogs__one img{
    width: 100%;
    border-radius: 5px;
    object-fit: cover;
    height: 200px;
}

.blogs__one{
    display: block;
    margin: 0 auto;
    width: 90%;
}

.blogs__one__date,
.blogs__one__h2,
.blogs__one__paragraph{
    text-align: left;
}

.blogs__one__date{
    margin-top: 0.625em;
    text-transform: uppercase;
}

.blogs__one__h2{
    margin-top: 0.417em;
    margin-bottom: 0.417em;
}

.view__more a{
    font-size: 1rem;
    font-weight: 600;
    color: #000000;
    text-shadow: 0.0125em 0.03125em 0.0625em #000000;
}

.view__more{
    margin-bottom: 2.5em;
}


/* --- FOOTER --- */

footer{
    text-align: center;
    background: #202020;
    padding: 2.5em;
    font-size: 1rem;
    font-weight: 600;
    color: #ECECEC;
    width: 100%;
}

.copyright{
    font-weight: 400;
    color: #D7D7D7;
    display: block;
}

/* --- VIEW__MORE --- */

.view__more{
    text-align: center;
    margin-top: 1.875em;
}

.view__more__hero__intro{
    padding-top: 2.5em;
    margin: 0 auto;
    width: 90%;
}

.view__more__hero__date{
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.5;
    color: #151515;
    text-transform: uppercase;
}


.hero__color{
    color: #151515;
}

.hero__margin{
    margin-top: 0.625em;
}

.view__more__hero img{
    width: 90%;
    margin: 0 auto;
    display: block;
    margin-top: 1em;
    border-radius: 3px;
}

.hero__bottom{
    margin-bottom: 0.625em;
}

.learning__progress{
    margin: 0 auto;
    width: 90%;
}


.learning__progress h2{
    font-weight: 700;
    font-size: 1.125rem;
    line-height: 1.5;
    color: #151515;
    margin-bottom: 0.8333em;
    margin-top: 0.8333em;
}

.recent__posts h3{
    font-weight: 700;
    font-size: 1.125rem;
    line-height: 1.5;
    color: #000000;
    margin: 1em 0;
    text-align: center;
    margin-top: 1.875em;
}

.blogs__bottom{
    margin-bottom: 3em;
}




/* --- ABOUT ME --- */



.about__me{
    margin: 1.875em auto;
    width: 90%;
}

.about__me__img{
    width: 200px;
    width: 200px;
    height: 200px;
    object-fit: cover;
    border-radius: 50%; 

}

.about__me h2{
    font-weight: 700;
    font-size:2.188rem;
    line-height: 1.5;
    color: #151515;
    margin-bottom: 0em;

}

.about__me p{
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.5;
    color: #151515;
    margin: 0.625em 0 1.25em 0;
}



/* --- MEDIA QUERIES --- */

@media(min-width: 540px){

    .blogs{
        display: grid;
        grid-template-columns: repeat(2, 1fr);

    }
} 

@media(min-width: 1024px){

    .blogs{
        grid-template-columns: repeat(3, 1fr);
    }

    .banner h1{
        font-size: 1.25rem;
    }

    header ul,
    .hero-date{
    font-size: 1rem; 
    }

    .banner img{
        width: 10%;
        max-width: 34px;
    }

    .learning__progress__margin{
        margin-top: 4em;
    }

    .learning__progress,
    .view__more__hero__intro{
        width: 80%;       
    }

    .main{
        background: #FAFAFA;
    }

    .about__me{
        display: flex;
        gap: 20px;
        padding-top: 5em;
        align-items: center;
    }

    .about__me__text{
        width: 80%;
    }
    

    
    .learning__progress h2,
    .recent__posts h3,
    .blogs__one__h2{
        font-size: 1.5rem;
    }

    .learning__progress p{
        font-size: 1.125rem;
    }




    .intro__h2{
        font-size: 2.5rem;
        
    }

    .banner{
        margin-left: 1.42em;
    }

    header ul{
        margin-right: 1.42em;
    }

    header{
        padding:1.25em 0;
    }

    .intro{
        padding-top: 12em;
    }
}

@media(min-width: 2560px){

    body{
        width: 1440px;
        margin: 0 auto;
    }
}

@media(max-width: 425px){
    .hamburger{
        display: block;
    }

    .hamburger.active .bar:nth-child(2){
        opacity: 0;
    }

    .hamburger.active .bar:nth-child(1){
        transform: translateY(8px) rotate(45deg);
    }

    .hamburger.active .bar:nth-child(3){
        transform: translateY(-8px) rotate(-45deg);
    }

    .nav-menu{
        position: fixed;
        left: -100%;
        top: 40px;
        gap: 0;
        flex-direction: column;
        background-color: #fff;
        width: 100%;
        text-align: center;
        transition: 0.3s;
    }

    .nav-item{
        margin: 16px 0;
    }

    .nav-menu.active{
        left: 0;
    }
}

