html {
    box-sizing: border-box;
}

*, *before, *after {
    box-sizing: inherit;
}

#wrapper {
    margin:10px;
    padding:10px;
    border-radius: 8px;
    background-color:rgb(29, 129, 223);
}

.wrapper-flex {
    display: flex;
    flex-wrap: wrap;
}

.wrapper-grid {
    display: grid;
    gap: 20px;
}

p {
    display: flex;
    flex-wrap: wrap;
}

.element-flex {
    display: flex;
    flex-wrap: wrap;
    gap: 30px 30px;
    justify-content: space-between;
}

.nav-link-flex {
    display: flex;
    flex-wrap: wrap;
    flex: 0 1 50%;
    gap: 10px 10px;
    flex-basis: 100%

}

.main-flex {
    display:flex;
    flex-wrap: wrap;
    flex: 0 1 70%;
}

.nav-flex {
    display:flex;
    flex-wrap:wrap;
    flex: 0 1 100%;
    align-items: center;
    align-content: center;
}

.welcome-text {
    text-indent: 1em;
}

nav a:link, a:link {
    color:goldenrod;
}

nav a:visited, a:visited {
    color:rgb(104, 80, 190);
}

nav a:hover a:hover {
    outline: solid 1px aquamarine;
}

nav a:focus a:focus{
    outline: solid 1px aquamarine;
}

nav a:active a:active {
    color:orangered;
}

main {
    padding: 0px 20px 20px 20px;
}

header {
    flex: 0 1 100%;
}

footer {
    padding:8px;
    margin: 10px 0 0 0;
    background-color: rgb(117, 201, 178);
    border-radius:8px;
    width:360px;
}

.background {
    background-color: lavender;
}

#logo {
    display:block;
    height: 79px;
    margin: 16px;
    padding:12px;
    border-radius: 8px;
    text-indent: -1000em;
    font-size: 3em;
    background:url(../04-floatingzoo/images/zoo_logo.png) no-repeat center;
    background-color:silver;
}


#species {
    background: seagreen;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    column-gap: 20px;
}

#species img {
    width:100%;
    border: 2px solid black;
    padding: 4px;
    background:aquamarine;
}

.business-font {
    font-family: 'Times New Roman', Times, serif;
    font-style: italic;
}

.body-font {
    font-family:Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif;
}

.species-font {
    font-family:'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
    background-color:goldenrod;
    font-size:large;
}

ul {
    background-color: beige;
    padding-right: 42px;
    border-radius: 9px;
}

nav li {
    padding: 12px;
}

li {
    background-color:lightgray;
    text-align:center;
    border-radius: 6px;
    list-style: none;
    margin: 10px 0 10px 0;
    width: 100%;
}

.return-button {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
    margin-left: 0.5rem;
    padding-left: 0.8rem;
    background: rgb(22, 22, 22);
    border-radius: 4px;
    transition-duration: 300ms;
    width: 226px;
    box-shadow: 2px 2px black;
    font-family: sans-serif;
}

.return-button:hover {
    background: rgb(45, 45, 45);;
    transition-duration: 300ms;
}

.return-button a {
    color: white !important;
    text-decoration: none;
}

.return-button p {
    margin: 0;
    padding-top: 0.8rem;
    padding-bottom: 0.8rem;
}

.normal-background {
    background: none;
}

@media screen and (min-width: 768px) {
    .nav-flex {
        flex: 0 1 20%;
        align-content: start;
    }

    nav li{
        padding: 6px;
    }

    .nav-link-flex {
        flex-basis:auto;
        gap: 10px 5px;
    }

    .main-flex {
        flex: 0 1 65%;
    }

    .element-flex {
        flex: 0 1 auto;
        gap: 7px 7px;
        justify-content: space-between;
    }

    .wrapper-grid {
        display: grid;
        grid-template-columns: 3fr 7fr;
    }

    header, footer{
        grid-column: span 2;
    }

    #species {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media screen and (min-width: 1000px) {
    .nav-flex {
        flex: 0 1 20%;
        align-content: flex-start;
    }

    .element-flex {
        justify-content: flex-start;
    }

    #species {
        grid-template-columns: repeat(3, 1fr);
    }
}