/* CSS Reset */
body, header, nav, main, footer, h1, div, img, ul, figure, figcaption, section, article, aside {
    margin: 0;
    padding: 0;
    border: 0;
}

/* Style rules for body and images */
body {
	background-color: #eba2eb;
}

img {
    max-width: 100%;
    display: block;
}

/* Style rule for box sizing applies to all elements */
* {
  box-sizing: border-box;
}

/* Style rules for mobile viewport */

/* Style rule for header */
header {
    top: 0;
    background-color: b09e80;
    height: 190px;
}

header img {
    margin: 0 auto;
}

/* Style rules for navigation area */
nav {
	padding: 1%;
    margin-bottom: 1%;
}

nav ul {
    list-style-type: none;
    text-align: center;
}

nav li {
    font-size: 1.5em;
    font-family: 'Francois One', sans-serif;
    border-top: 1px solid #fff;
}


nav li a {
    display: block;
    color: #fff;
    padding: 0.5em 1em;
    text-decoration: none;
}


/* Style rules for main content */
main {
    background-color: #fff;
    padding: 2%;
    font-size: 1.15em;
    font-family: 'Roboto Slab', serif;
}


#form {
    margin-top: 2%;
    background-color: #f2f2f2;
    padding: 2%;
}

/* Style rules for form elements */
fieldset, input, select, textarea  { 
    margin-bottom: 2%;
}

fieldset legend {
    font-weight: bold;
    font-size: 1.25em;
}



/* Style rules for footer content */
footer p {
    font-size: 0.75em;
    text-align: center;
    color: #fff;
    padding: 0 1em;
}


/* Media Query for Tablet Viewport */
@media screen and (min-width: 630px), print {

    /* Tablet Viewport: Style rule for header */
    header {
        padding-bottom: 2%;
    }
    
    /* Tablet Viewport: Style rules for nav area */
    nav li {
        border-top: none;
        display: inline-block;
        border-right: 1px solid #fff;
    }

    nav li a {
        padding: 0.1em 0.75em;
    }
    
    /* Tablet Viewport: Style rules for main content area */
    main ul {
        margin: 0 0 4% 10%;
    }

    /* Tablet Viewport: Style rules for table */
  
    
    /* Tablet Viewport: Style rule for form element */
    form {
        width: 70%;
        margin: 0 auto;
    }
    
}

/* Media Query for Desktop Viewport */
@media screen and (min-width: 1015px), print {
    /* Desktop Viewport: Style rule for header */
    header {
        width: 25%;
        float: left;
        padding-bottom: 0;
    }
    /* Desktop Viewport: Style rules for nav area */
    nav {
        float: right;
        width: 70%;
        margin: 4em 1em 0 0;
    }
    nav ul {
        text-align: right;
    }
    
    nav li {
        border: none;
    }

    nav li a {
        padding: 0.5em 1em;
    } 
    nav li a:hover {
        color: #000;
        background-color: #fff;
    }
    /* Desktop Viewport: Style Rules for main content */
    main {
        clear: left;
    }
    main h1 {
        font-size: 1.8em;
    }
    /* Desktop Viewport: Style rules for form elements */
    form {
        width: auto;
    }
    .form-grid {
        display: grid;
        grid-template-columns: auto auto auto;
        grid-gap: 20px; 
    }
    .btn {
        grid-column: 1 / span 3;
    }
    
}

