* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    color: #373d20;
}

body{
    background-color: #dbe7d3;
}

#wrapper {

    margin: 0 auto; 
    min-height: 100vh;
    /* primary grid */
    display: grid;
    grid-template-areas: 
        "header"
        "nav"
        "main"
        "footer";
    grid-template-columns: 1fr;
    grid-template-rows:
        minmax(220px, auto) 
        minmax(40px, auto) 
        1fr 
        minmax(50px, auto);
} 


h2 {
    font-family: "Impact", "sans-serif";
    color: #373d20;
    font-size: 3em;
    text-align: left;
}

h3 {
    font-family: "Impact", "sans-serif";
    font-size: 2em;
    color: #373d20;
    text-align: left;
}

p {
    font-family: Calibri, sans-serif;
    color: #373d20;
}

/* ---------------------------------------------------------------- header --- */

header{ 
    grid-area: header;
    border-top: 4px solid #2c4c3b;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

header h1{
    font-family: "Bebas Neue", "sans-serif";
    text-align: center;
    justify-content: center;
    color: #2c4c3b;
    /* background-color: #769a6e; */
    font-size: 4em;
}

header h2 {
    /* align-items: center; */
    text-align: center;
    color: #373d20;
    /* background-color: #769a6e; */
    font-weight: normal;
    font-size: 2.5em;
    padding: 0.5em 0 0.5em 0;
}


/* ---------------------------------------------------------------- nav -------- */

nav {
    grid-area: nav;
    background-color: #2c4c3b;
    /* border-top: 1px solid #769a6e;
    border-bottom: 1px solid #769a6e;  */
}

nav ul{
    display: flex;
    /* flex-direction: row; */
    /* align-items: center; */
    flex-direction: row;
    flex-wrap: wrap;
    list-style: none;
    justify-content: space-between;
    margin: 0 15em 0 15em;
    font-family: Calibri, sans-serif;
    /* gap: 2em; */
    /* padding: 0.74em; */
    /* font-size: 1em; */
}

nav a{
    text-decoration: none; 
    color: white;
    display: block;
    padding: 1em;
}

nav a:hover{
    color: #656d4a;
    background-color: white;
    font-style: italic;
}

  /* -------------------------------------------main-index----------------------- */

#main-index {
    grid-area: main;
    margin: 3em 15em 3em 15em;
    display: grid;
    grid-template-areas: 
        "main-content-1" "main-content-2";
    grid-template-columns: 
        1fr 1fr;
    grid-template-rows: 1fr;
    padding: 1em 0 1em 0; 
    gap: 3.5em;
}

#main-index #maincontent1{
    grid-area: "main-content-1";
    gap: 0.5em;
}

#main-index #maincontent2{
    grid-area: "main-content-2" ;
}

#main-index section{
    /* border: 1px solid lightblue; */
    /* background-color:  lightblue; */
    /* box-shadow: 1em lightblue; */
    padding: 1em;
    display: flex;
    flex-direction: column;
    gap: 1em;
}
   
    
#main-index p{
    letter-spacing: 0.05em;
    line-height: 1.5em;
    text-align: justify;
}




  /* ----------------------------------------------main-map-page----------------------- */
#main-map-page{
    grid-area: main;
    display: grid;
    grid-template-areas: 
        "filter map";
    grid-template-rows: 1fr;
    grid-template-columns: 
        1fr 3fr;
    margin: 3em 15em; 
    gap: 1em;
}

#main-map-page .filter{
    grid-area: filter;
    border: 1px solid #2c4c3b;
    display: flex;
    flex-direction: column;
}

#map-filter-title{
    font-size: 1.5em;
    border-bottom: 1px solid #2c4c3b;
    padding: 0.5em;
}

#map-filter-subtitle{
    font-size: 1em;
    padding: 0.5em;
    font-weight: bold;
}

#main-map-page ul{
    display: flex;
    flex-direction: column;
    list-style: none;
    padding: 0.5em;
    font-size: 1em;
    font-family: Calibri, sans-serif;
    gap: 0.5em;

}

#submit-location{
    align-items: end;
    margin-top: auto;
    text-align: center;
    padding: 1em;
    background-color: #b3c186;
}

#submit-location a{
    text-decoration: none;
    color: maroon;
}

#submit-location:hover{
    font-weight: bold;
    color: black;
}

#map{
    grid-area: map;
}


  /* ----------------------------------------------main-about------------------------ */

/* ABOUT PAGE */

#main-about {
    grid-area: main;
    margin: 3em 15em;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3.5em;
}

#main-about section {
    padding: 1em;
    display: flex;
    flex-direction: column;
    gap: 1em;
}

#main-about p {
    letter-spacing: 0.05em;
    line-height: 1.6em;
    text-align: justify;
}


/* RESPONSIVE */

@media (max-width: 1024px) {

    #main-about {
        margin: 2em 4em;
        grid-template-columns: 1fr;
    }

    #about-features {
        margin: 0 4em 3em 4em;
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {

    #main-about {
        margin: 1.5em;
    }

    #about-features {
        margin: 1.5em;
    }
}


  /* ----------------------------------------------main-resources-page-sustainably------------------------ */

#main-resources{
    margin: 3em 15em;
    display: flex;
    flex-direction: column;
    gap: 1em;
}

#resources-title{
    font-size: 2em;
    text-align: center;
}

#resources-subtitle{
    text-align: center;
}

#resources-list{
    list-style: disc;
    display: flex;
    flex-direction: column;
    gap: 0.8em;
    align-items: left;
}

#resources-list li{
    line-height: 1.5em;
}

#resources-list a{
    text-decoration: none;
    color: #2c4c3b;
    font-weight: bold;
}

#resources-list a:hover{
    text-decoration: underline;
}


  /* ----------------------------------------------main-contact-page------------------------ */
#main-contact{
    grid-area: main;
    padding: 2em 0;
    display:flex;
    flex-direction: column;
    gap: 2em;
    /* width: 50px; */
    margin: 1em;
}

.form-select{
    max-width: 700px;
    margin: 0 auto;
    width: 100%;
}

fieldset{
    display: flex;
    flex-direction: column;   
    gap: 1em; 
    padding: 0.5em;
}


input [type="submit"]{
    background-color: #2c4c3b;
    color: white;
    border: none;
}


  /* -------------------------------------------footer----------------------- */

footer{
    grid-area: footer;
    justify-content: space-between;
    align-items: center;
    background-color:#2c4c3b;
    color: white; 
    display: flex;
    flex-direction: row;
}

footer ul {
    display: flex;
    flex-direction: row;
    list-style: none;
    justify-content: right;
}
 
footer p{
    color: white;
    padding: 1em;
} 

footer ul {
    padding: 0.75em;
    gap: 1em;
}

.socials-icon:hover{
    border-radius: 75%;
    box-shadow: 0px 0px 0px 4px #a98467;
}  


/* ----------------------------------------------------header media query--- */
@media screen and (max-width:1050px){
   header h1{
        font-size: 3em;
    }

    header h2{
        font-size: 2em;
    }


/*mediaquery - nav --------*/
    #wrapper{
        grid-template-areas: 
            "header"
            "menu"
            "main"
            "footer";
        grid-template-rows: auto 1fr;
        grid-template-columns: 1fr;    
    }

    nav{
        grid-area:menu;
    }

    nav ul{
        margin:auto;
    }

    header {
        grid-area: header;
        /* height: 10em; */
        padding: 1.5em 1.5em 1em 1.5em ;
        border-bottom: 1px solid #2c4c3b;
                        /* background-color: green; */

        }

    #main-index{
        display: grid;
                /* background-color: red; */

        grid-area: main;
        grid-template-columns: 1fr;
        grid-template-areas: 
            "maincontent1"
            "maincontent2";
        margin: 0 1em;
        gap: 0.5em;
    }

    footer{
        grid-area: footer;
    }
    
/* ----------------------------------------------------main-map-page media query--- */

    #main-map-page{
        grid-template-areas: 
            "filter"
            "map";
        grid-template-columns: 1fr;
        grid-template-rows:
            auto;
        margin: 0.5em;
    }

    #main-map-page .filter{
        grid-area: filter;

    }

    #map{
        grid-area: map;
    }

    /* ----------------------------------------------------main-living-sustainably-page media query--- */

    #main-living{
        margin: 1em;
    }

    #sustainability-guides-ul li{
        width: 100%;
    }    


    /* ---------------------------------------------------main-resources-page media query--- */

    /* #resources-list{
        margin: 0;
        padding: 0;
    } */



    #main-resources{
    margin: 0em 3em;
    padding: 2em 0;
    height: 50em;

} 
    /* #resources-list{
    align-items: left ;
}  */
    /* ---------------------------------------------------main-contact-page media query--- */

    #main-contact{
        padding: 2em 4em;
        /* margin: 0;
        gap:0 */
    }


}