/*===============
 General Styling 
 ================*/
a{
    display: block;
    text-decoration: none;
}

body{
    margin: 0;
    padding: 0;
}

ul{
    list-style: none;
    margin: 0;
    padding: 0;
}

img{
    max-width: 100%;
    display: block;
}

 

/*================
 Typography 
 ================*/
body{
    font-size: 1.125rem;
    font-weight: 400;
    line-height: 1.4;
    font-family: "Public Sans";
}

@font-face {
    font-family: "Public Sans";
    src: url(./font/PublicSans-VariableFont_wght.ttf);
}




 /*================
 Layout
 ================*/
/* Header Styling */
.main_header{
    z-index: 100;
}
nav{
    max-width: 1440px;
    width: 90%;
    margin: 2em auto;
    display: flex;
    justify-content: space-between;
}

.request_nav_link{
    max-width: 150px;
    text-align: center;
    padding: .5em 1em;
    background: linear-gradient(0.25turn, hsl(136, 65%, 51%), hsl(192, 70%, 51%));
    color: #fff;
    border-radius: 1.5em;
    transition: opacity .3s;
}

.request_nav_link:hover{
    opacity: .6;
}

.logo{
    padding: .5em;
    text-align: center;
}

/* Navigation Menu */

.hambuger_menu{
    display: none;
}

.nav_list{
    display: flex;
}

.list_item{
    margin-left: 1.5em;
}

.nav_link{
    color: hsl(233, 8%, 62%);
    transition: color .5s ease-in;
}

.nav_link:hover,
.nav_link:focus {
    color: hsl(233, 26%, 24%);
    border-bottom: 4px solid hsl(136, 65%, 51%);
}

/* Main_container Styling */
.hero_main_container{
    width: 100%;
    background: hsl(0, 0%, 98%);
    margin-bottom: 0;
}

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

.hero_section{
    width: 94%;
    /* max-height: 600px; */
    margin: 0 0 0 auto;
}

.hero_text{
    width: 40%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.hero_text h1{
    margin-top: 0;
    margin-bottom: .5em;
    font-size: 2.2rem;
    font-weight: 400;
    color: hsl(233, 26%, 24%);
}

.hero_text p{
    margin-top: 0;
    max-width: 400px;
    color: hsl(233, 8%, 62%);
}

.hero_image{
    width: 50%;
    background-image: url(./images/bg-intro-desktop.svg);
    background-position: left center;
    background-repeat: no-repeat;
    background-size: cover;
}

/* Bank Features */
.features_main_container{
    background: hsl(220, 16%, 96%);
    padding: 4em 0;
}

.feature_container{
    width: 90%;
    margin: auto;
}

.feature_container p{
    color: hsl(233, 8%, 62%);
}

.feature_container h2{
    margin-top: 0;
    margin-bottom: .5em;
    font-size: 1.8rem;
    font-weight: 400;
    color: hsl(233, 26%, 24%);
}

.feature_container .feature_text{
    margin-top: 0;
    width: 60%;
    margin-bottom: 3em;
}

.feature_container .container{
    gap: 1.5em;
}       

.box{
    width: 30%;
}

.box h3{
    margin: 1em 0;
    margin-top: 1.5em;
    font-size: 1.5rem;
    font-weight: 400;
    color: hsl(233, 26%, 24%);
}

/* Article Styling */
.article_section{
    background: hsl(0, 0%, 98%);
}

.article_container{
    width: 90%;
    margin: auto;
    padding: 3em 0;
}

.article_container .container{
    flex-wrap: wrap;
    flex: 1;
    align-items: center;
}

.article{
    max-width: 300px;
    width: 100%;
    background: hsl(0, 0%, 100%);
    margin-bottom: 2em;
}

.article img{
    width: 100%;
    height: 150px;
    max-height: 100%;
    object-fit: cover;
}

.article_body{
    padding: 0 1.5em;
}

.article_author{
    font-size: .9rem;
    color: hsl(233, 8%, 62%);
    margin-top: 2em;
    margin-bottom: 0;
}

.article_title{
    font-size: 1.2rem;
    font-weight: 400;
    color: hsl(233, 26%, 24%);
    margin:.5em 0;
    padding: 0;

}

.article_text{
    font-size: 1rem;
    color: hsl(233, 8%, 62%);
    padding-top: 0;
    margin-top: 0;
    margin-bottom: 2em;
}

/* Footer Styling */

.main_footer{
    background: hsl(233, 26%, 24%);
}

.footer_container{
    width: 90%;
    margin: auto;
    padding: 3em 0;
    display: flex;
    justify-content: space-between;
}


.footer_container .container{
    width: 60%;
}

.bottom_footer_text{
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    margin-right: 0;
}
.bottom_footer_text p{
    color: hsl(233, 8%, 62%);
}



.footer_logo .logo{
    margin-bottom: 2em;
}

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

.footer_nav_list a{
    color: hsl(220, 16%, 96%);
    margin-bottom: 1em;
    font-size: 1rem;
}



/*================
Media Queries
 ================*/



/* Navigation Media Queries */

@media screen and (max-width: 840px) {
    nav .request_nav_link{
        display: none;
    }
}  




@media screen and (max-width: 648px) {
    .hambuger_menu{
        display: block;
        cursor: pointer;
    }

    nav{
        position: relative;
    }

    .nav_list{
        position: absolute;
        top: -1000px;
        left: 10px;
        right: 10px;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        background: hsl(0, 0%, 100%);
        height: 400px;
        width: 90%;
        margin: auto;
        box-shadow: 2px 3px 10px hsl(233, 26%, 24%);
        transition: top 1s ease-in;
    }

    .nav_link{
        margin-bottom: 1.5em;
        color: hsl(233, 26%, 24%);
    }

    .open_menu.nav_list{
        top: 100px;
    }

    .close-hambuger{
        display: none;
    }

    .open_menu.close-hambuger{
        display: block;
    }

    .open_menu.open-hambuger{
        display: none;
    }

    .container{
        flex-direction: column;
    }

    .container > div{
        width: 100%;
        text-align: center;
    }

    /* Hero Section */

    .hero_image{
        order: -1;
        margin-bottom: 2em;
    }

    .hero_text p{
        margin: auto;
        margin-bottom: 2em;
    }

    .hero_text .request_nav_link{
        margin: auto;
        margin-bottom: 3em;
    }

    /* Feature Section Media Queries */
    .feature_container p{
        margin: auto;
        text-align: center;
    }

    .feature_container h2{
        text-align: center;
    }

    .box img{
        margin: 0 auto;
    }

    .box{
        margin-bottom: 3em;
    }


    /* Footer Section Media Queries */

    .footer_container{
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    .footer_logo{
        margin-bottom: 1.5em;
    }

    .footer_logo .logo{
        margin: 2em auto;
    }

    .bottom_footer_text{
        margin-top: 2em;
        align-items: center;
    }
} 