/*
File Name: styles.css
*/

/* CSS Reset */
body, header, nav, main, footer, h1, div, img, ul, section {
	margin: 0;
	padding: 0;
	border: 0;
}

/* Style rules for body and images */
body {
	background-color: #8B0000;
}

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

/* Style rules for mobile viewport */

/* Style rule for header */
header {
	top: 0;
	background-color: #000;
	height: 190px;
	color: #fff;
}

header img {
	height: 180px;
	width: 200px;
	margin: 0 auto;
}

/* Style rules for hamburger menu */
.mobile-nav a {
	color: #fff;
	font-family: 'Merriweather', serif;
	text-align: center;
	font-size: 2em;
	text-decoration: none;
	padding: 3%;
	display: block;
}

.mobile-nav a.menu-icon {
	display: block;
	position: relative;
	right: 0;
	top: 0;
}

/* Show mobile class, hide tablet-desktop class and menu-links id */
.mobile {
	display: block;
}

.tablet-desktop, #menu-links {
	display: none;
}

/* Style rules for main content */
main {
	background-color: #fff;
	padding: 2%;
	font-size: 1.15em;
	font-family: 'Inter', sans-serif;
}

.tel-link {
	background-color: #8B0000;
	padding: 2%;
	margin: 0 auto;
	width: 80%;
	text-align: center;
	border-radius: 5px;
}

.tel-link a {
	color: #000;
	text-decoration: none;
	font-size: 1.5em;
	font-family: 'Merriweather', serif;
	display: block;
}

.hours {
	margin-left: 10%;
}

.action {
	font-family: 'Merriweather', serif;
	font-weight: bold;
	color: #800000;
}

table {
	border: 1px solid #000;
	border-collapse: collapse;	
	margin: 0 auto;
	width: 100%;
}
	
caption {
	font-size: 1.5em;
	font-weight: bold;
	font-family: 'Merriweather', serif;
	padding: 1%;
}

th {
	border: 1px solid #000;
	padding: 2%;
}

#info {
	text-align: center;
	margin: 0 2%;
}

.round {
	border-radius: 8px;
}

#contact {
	text-align: center;
}

#contact a {
	color: #000;
	text-decoration: none;
}

.map {
	border: 2px solid #000;
	width: 95%;
	height: 50%;
}

.order {
	font-size: 1em;
	font-family: 'Inter', san-serif;
	text-align: center;
	text-decoration: none;		
}

.delivery {
	margin: auto;
	width: 100%;
	padding: 2%;
}

.delivery img {
	display: inline-block;
	padding: 2%;
	height: 60px;
	width: 60px;
}

.action {
	font-family: 'Merriweather', serif;
	font-weight: bold;
	font-size: 1.25em;
	color: #800000;
}	

.sgamb-menu {
	font-size: 1.5em;
	text-align: center;
}


.column {
	background-color: #8B0000;
	text-align: center;
	width: 92%;
	margin-bottom: 10px;
	margin-left: 2px;
	margin-right: 2px;
	padding: 10px;
}	

.column a {
	color: #fff;
	text-decoration: none;
	font-family: 'Merriweather', serif;
	display: inline-block;
}

.row::after {
	content: "";
	clear: both;
	display: table;	
}


/* Style rules for footer content */
footer .copyright {
	font-size: 0.75em;
	text-align: center;
	color: #fff;
	padding: 2% 4%;
	float: left;
	width: 75%;
}

footer p a {
	color: #fff;
	text-decoration: none;
}

.social {
  	float: right;
	width: 20%;
	padding: 2%;
}

.social img {
	display: inline-block;
	padding: 2%;
	height: 2em;
	width: 2em;
}

/* Media Query for Tablet Viewport */
@media screen and (min-width: 630px), print {

	/* Tablet Viewport: Show tablet-desktop class, hide mobile class */
	.tablet-desktop {
		display: block;
	}

	.mobile, .mobile-nav {
		display: none;
	}

	/* Tablet Viewport: Style rule for header */
	header {
		position: static;
		padding-bottom: 2%;
		
	}

	/* Tablet Viewport: Style rules for nav area */
	nav {
		padding: 1%;
		margin-bottom: 1%;
	}

	nav ul {
		list-style-type: none;
		text-align: center;
	}

	nav li {
		font-size: 1.75em;
		font-family: 'Merriweather', serif;
		display: inline-block;
		border-right: 1px solid #fff;
	}
	
	nav li:last-child {
		border-right: none;
	}

	nav li a {
		padding: 0.1em 0.75em;
		display: block;
		color: #fff;
		text-decoration: none;
	}
	
	.tel-num {
		font-size: 1.25em;
	}

	
	.map {
		width: 600px;
		height: 450px;
	}

	.delivery {
		margin: auto;
		width: 100%;
		padding: 2%;
	}

	.delivery img {
		display: inline-block;
		padding: 2%;
		height: 120px;
		width: 140px;
	}

	.delivery img {
		display: inline-block;
		padding: 2%;
		height: 60px;
		width: 60px;
	}
	
	.action {
		font-family: 'Merriweather', serif;
		font-weight: bold;
		font-size: 1.25em;
		color: #800000;
	}

	.specials-images {
		padding: 5%;
		text-align: center;
	}
	

	.column {
		background-color: #8B0000;
		float: left;
		width: 30%;
		margin-bottom: 10px;
		margin-left: 2px;
		margin-right: 2px;
		padding: 10px;
	}
	
	.column a {
		color: #fff;
		text-decoration: none;
		font-family: 'Merriweather', serif;
		display: inline-block;
	}

	.row::after {
		content: "";
		clear: both;
		display: table;
	}
		

	/* Tablet Viewport: Style rules for table */
	table {
		border: 1px solid #000;
		border-collapse: collapse;	
		margin: 0 auto;
		width: 50%;
	}
	
	caption {
		font-size: 1.5em;
		font-weight: bold;
		font-family: 'Merriweather', serif;
		padding: 1%;
		
	}

	th {
		border: 1px solid #000;
		padding: 2%;
	}
}

/* Media Query for Desktop Viewport */
@media screen and (min-width: 959px), print {

	/* Desktop Viewport: Style rule for header */
	header {
		width: 20%;
		float: left;
		padding-bottom: 0;
	}

	/* Desktop Viewport: Style rules for nav area */
	nav {
		float: right;
		width: 75%;
		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: #fff;
		background-color: #000;
		transform: scale(1.3);
	}
	
	/* Desktop Viewport: Style rules for main content */
	main {
		clear: left;
	}

	main h1 {
		font-size: 1.8em;
	}

	#info {
		max-width: 100%;
		text-align: center;
		margin: 0 2%;
	}

	.delivery {
		margin: auto;
		width: 100%;
		padding: 2%;
	}

	.delivery img {
		display: inline-block;
		padding: 2%;
		height: 245px;
		width: 265px;
	}

	.specials-images {
		display: inline-block;
		padding: 5%;
	}

	.column {
		background-color: #8B0000;
		float: left;
		width: 31.5%;
		margin-bottom: 10px;
		margin-left: 2px;
		margin-right: 2px;
		padding: 10px;
	}
	
	.column a {
		color: #fff;
		text-decoration: none;
		font-family: 'Merriweather', serif;
		display: inline-block;
	}

	.row::after {
		content: "";
		clear: both;
		display: table;
	}
	
}

/* Media Query for Large Desktop Viewports */
@media screen and (min-width: 1921px) {

	#container {
		width: 1920px;
		margin: 0 auto;
	}

	table {
		width: 80%;
	}

}

/* Media Query for Print */
@media print {

	body {
		background-color: #8B0000;
		color: #000;
	}

}