/*
Author: Bryan Schaefer
Date: October 8, 2025
File Name: styles.css
*/

/* css Reset */
body, header, nav, main, footer, img, h1, h3, ul, aside, figure, figcaption {
	margin: 0;
	padding: 0;
	border: 0;
}

/* Style rules for body and images */
body {
	background-color: #f6eee4;
}

img {
	max-width: 100%;
	display: block;
}

/* Style rules for mobile viewport */

/* Style rules to show mobile class and hide tab-desk class */
    .mobile {
        display: block;
}
        
    .tab-desk {
        display: none;
}

/* Style rules for header area */
    .mobile h1, .mobile h3 {
        padding: 2%;
        text-align: center;
}

    .mobile h1 {
        font-family: 'Emblema One', cursive;
}
    
    .mobile h3 {
        font-family: 'Lora', serif;
}

/* Style rules for navigation area */
nav {
	background-color: #2a1f14;
}

nav ul {
	list-style-type: none;
	text-align: center;
}
	
nav li {
	display: block;
	font-size: 1.5em;
	font-family: Geneva, Arial, sans-serif;
	font-weight: bold;
	border-top: 0.5px solid #f6eee4;
}
	
nav li a {
	display: block;
	color: #f6eee4;
	padding: 0.5em 2em;
	text-decoration: none;
}
	
/* Style rules for main content */
main {
	padding: 2%;
	font-family: 'Lora', serif;
}
	
main p {
	font-size: 1.25em;
    margin: .1em;
}

main h3 {
    padding-top: 2%;
}

main ul {
    list-style-type: square;
}
	
.link {
    color: #4d3319;
    text-decoration: none;
    font-weight: bold;
    font-style: italic;
}

.action {
	font-size: 1.75em;
	font-weight: bold;
	text-align: center;
}

#contact {
        text-align: center;
}

.round {
    border-radius: 6px;
}

aside {
    text-align: center;
    font-size: 1.5em;
    font-weight: bold;
    text-shadow: 4px 4px 10px #c5a687;
}

figure {
    border: 4px solid #2a1f14;
    box-shadow: 6px 6px 10px #c5a687;
    max-width: 400px;
    margin: 2% auto;
}

figcaption {
    padding: 2%;
    border-top: 4px solid #2a1f14;
}

#info ul {
    margin-left: 10%;
}

.tel-link {
    background-color: #2a1f14;
    padding: 2%;
    width: 80%;
    margin: 0 auto;
}

.tel-link a {
    color: #f6eee4;
    text-decoration: none;
    font-weight: bold;
}

.id {
	text-align: center;
	}
	
/* Style rules for footer content */
footer {
	text-align: center;
	font-size: 0.85em;
	background-color: #2a1f14;
	color: #f6eee4;
	padding: 1% 0%;
}
	
footer a {
	color: #f3e6d8;
	text-decoration: none;
}

/* Media Query for Tablet Viewport */
    @media screen and (min-width: 620px), print {
        
     /* Tablet Viewport: Show tab-desk class; hide mobile class */
        .tab-desk {
            display: block;
        }
            
        .mobile {
            display: none;
        }
            
    .grid {
        display: grid;
        grid-template-columns: auto auto;
}
        
    aside {    
        grid-column-gap: 10px;
        grid-column: 1 / span 2;
}

/* Media Query for Large Desktop Viewports */
    @media screen and (min-width: 1921px) {
        body {
            background: linear-gradient(#f6eee4, #78593a);
            }
        #wrapper {
            width: 1920px;
            margin: 0 auto;
        }
        main {
            background-color: #f6eee4;
        }
        
     .grid {
         display: grid;
         grid-template-columns: auto auto auto auto;
     }
     
     aside {
         grid-column: 1 / span 4;
         font-size: 3em;
    }
    
/* Media Query for Print */
    body {background-color: #fff;
                color: #000;
        }
 
/* Tablet Viewport: Style rules for nav area */
    nav li {
        border-top: none;
        display: inline-block;
        font-size: 1.25em;
 }
    nav li a {
        padding: 0.5em;
 }

/* Media Query for Desktop Viewport */
    @media screen and (min-width: 1000px), print {
        
    /* Desktop Viewport: Style rules for nav area */
    nav li {
        font-size: 1.5em;
}

    nav li a {
        padding: 0.5em 1.5em;
    }

    nav li a:hover {
        color: #2a1f14;
        background-color: #f6eee4;
        opacity: 0.5;
}
    
    .grid {
        display: grid;
        grid-template-columns: auto auto auto;
}

    aside {
        grid-column-gap: 30px;
        grid-column: 1 / span 3;
        font-size: 2em;
}

/* Desktop Viewport: Style rules for main content */
    #info ul {
        margin-left: 5%;
}
}