/*
     Tizziano Britez
	 9/15/24
	 styles.css
	
*/
/* CSS Reset */
body, header, nav, main, footer, img h1 {
	margin: 0;
	padding: 0;
	border: 0;
	
}
/* Style rule for images */
img {
	 max-width: 100%;
	 max-height: 100%;
	 display: block;
}
/* Style rule for box sizing applies to all elements */
*{
 box-sizing: border-box;
}
/* Main style rules for the Roboto */
header {
	  text-align: center;
	  font-size: 1.5em;
	  color: #373684;
}
header h1 {
	  font-style: "DM Serif Display", serif;
}
/* Style rules for navigation area */
nav{
	background-color: #373684;
}
nav ul {
	 list-style-type: none;
	 text-align: center;
}
nav li {
	 display: block;
	 border-top: 1px solid #e5e9fc;
	 font-size: 2em;
}
nav li a {
	  display: block;
	  color: #fff;
	  text-align: center;
	  padding: 0.5em 1em;
	  text-decoration: none;
}
/* Style rules for ul selector */
ul{
	padding: 0;
	list-style: none;
}
/* Style rules for main content */
main {
	padding: 2%;
	background-color: #e5e9fc;
	overflow: auto;
	font-family: "Roboto", sans-serif;
}
main p {
	font-size: 1.25em;
}
.action {
	font-size: 1.25em;
	color: #373684;
	font-weight: bold;
}
#info {
	clear: left;
	background-color: #c0caf7;
	padding: 1% 2%;
}
#info ul{
	margin-left: 10%;
}
.round{
	border-radius: 8%;
}
#contact .email-link{
	color: #ffffff;
	background-color: #373684;
	text-decoration: none;
	font-weight: bold;
}
.tel-link{
	background-color: #373684;
	padding: 2%;
	margin: 0% auto;
	width: 80%;
	text-align: center;
	border-radius: 5px; 
}
.tel-link a{
	color: #fff;
	text-decoration: none;
	font-size: 1.5em;
	display: block;
}
.map {
width: 95%;
height: 50%
}
/* Style rules for footer content */
footer { 
        text-align: center;
		font-size: 0.65em;
		clear: left;
}
/* Media Ouery for Tablet Viewport */
@media screen and (min-width: 550px), print{

}
/* Tablet Viewport: Show tab-desk class, hide mobile class */
.tab-desk{
	display: block;
}
.mobile{
	display: none;
}
/* Tablet viewport: Style rule for header content */
span.tab-desk{
	display: inline;
}
/* Tablet Viewport: Style rules for nav area */
nav li{
	border: none;
	display: inline-block;
	font-size: 1.5em;
	border-right: 1px solid #e5e9fc;
}
nav li:last-child {
 border-right: none;
}
nav li a{
    padding: 0.25em 0.5em;
}
/* Tablet Viewport: Style rule for map. */
/* Style rule for the map class */
.map{
	width: 500px;
	height: 450px;
}
/* Media Query for Desktop Viewport */
@media screen and (min-width: 769px), print {
}
/* Style rule for the grid */
.grid{
	grid-template-columns: repeat(4, 1fr);
}
/* Style rule for figcaption */
figcaption{
	font-size: 1em;
}
aside{
	grid-column: 1/ span 4;
}
	header{
		padding: 2%;
	}
	/* Desktop Viewport: Style rules for nav area */
	nav li a{
		padding: 0.5em 1.5em;
	
	}
	
	nav li a:hover{
		color: #373674;
		background-color: #e5e9fc;
	}
	
	#info ul{
		margin-left: 5%;
	}
	
	main h3{
		font-size: 1.5em;
	}
	
	#piano{
		width: 29%;
		float: left;
		margin: 0;
		margin-left: 2%;
		margin-right: 2%;
	}
	
	#guitar{
		
			width: 29%;
			float: left;
			margin: 0;
			margin-left: 2%;
			margin-right: 2%;
		}
	
	#violin{
		width: 29%;
		float: left;
		margin: 0;
		margin-left: 2%;
		margin-right: 2%;
	}
/* CSS reset */	
aside{
	text-align: center;
	font-size: 1.5em;
	font-weight: bold;
	color: #373684;
	text-shadow: 3px 3px 10px #8280cb;
}
figure{
	position: relative;
	max-width: 275px;
	margin: 2% auto;
	border: 8px solid #373684;
}
figcaption{
	position: absolute;
	bottom:0;
	background: rgba(55,54,132,0.7);
	color: #fff;
	width: 100%;
	padding: 5% 0;
	text-align: center;
	font-family: Verdana, Geneva, Tahoma, sans-serif;
	font-size: 1.5em;
	font-weight: bold;
}
/* Style rule for grid class */
.grid{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 20px;
}
/* Style rule for grid class */
 aside{
	grid-column: 1 / span 2;
 }

 /* Style rules for table */

table {
	border: 1px solid #373684;
	border-collapse: collapse;
	margin: 0 auto;
	width: 100%;
}

caption {
	font-size: 1.5em;
	font-weight: bold;
	padding: 1%;
}

th, td {
	border: 1px solid #373684;
	padding: 2%;
}

th {
	background-color: #373684;
	color: #fff;
	font-size: 1.15em;
}

tr:nth-child(odd) {
	background-color: #b7b7e1;
}