/* main contents */
body {
	background-color: #000;
}

main {
	
	background-color: #fff;
	padding: 2%;
	font-size: 1.15em;
	font-family: 'Roboto Slab', serif;
}
/* Style rules for mobile viewport /*
/* show mobile class and hide tablet desktop class */
body, header, nav, main, footer, h1, div, img, ul, figure, figcaption {
	margin: 0;
	padding: 0;
	border: 0;
}
/* navbar */
header {
/* 
	position: -webkit-sticky;
	position: sticky; */
	z-index: 1000;
	top: 0;
	background-color: #000;
	height: 190px;
}
header img {
	margin: 0 auto;
}

.round {
	border-radius: 8px;
}

nav {
	padding: 1%;

}
#form {
	margin-top: 2%;
	background-color: #f2f2f2;
	padding: 2%;
}
#form h2{
	text-align: center;
}
fieldset, input, select, textarea {
	margin-bottom: 2%;
}
fieldset legend {
	font-weight: bold;
	font-size: 1.25em;
}
label {
	display: block;
	padding-top: 3%;
}
form #submit {
	margin: 0 auto;
	border: none;
	display: block;
	padding: 2%;
	background-color: #b3b3b3;
	font-size: 1em;
	border-radius: 10px;
}
nav ul {
	list-style-type: none;
	margin:0;
	text-align: center;
	
}
nav li {

	font-size: 1.5em;
	font-family: 'Francois One', Arial, sans-serif;
	font-weight: bold;
	border-top: 1px solid #fff;
}

.mobile {
	display: block;
}

.tablet-desktop {
	display: none;
}
nav li a {
	display:block;
	color:#fff;
	text-align: center;
	padding: .5em 1em;
	text-decoration: none;
	
}
img {
	display:block;
	max-width:100%;
	
	 
}
* {
	box-sizing: border-box;
}
main {
	clear: left;
	background-color: #fff;
	padding: 2%;
	font-size:1.25em;
	font-family: 'Roboto Slab', serif;
}
.tel-link {
	background-color: #404040;
	padding: 2%;
	margin: 0 auto 0 auto;
	width: 80%;
	text-align: center;
	border-radius: 5px;
}
.tel-link a {
	color: #fff;
	text-decoration: none;
	font-size: 1.5em;
	display: block;
}
/* footer */
footer p {
	font-size: 0.75em;
	text-align: center;
	color: #fff;
	padding: #fff;
}
/* Media query for tablet viewport */
@media screen and (min-width: 630px) {
	.tablet-desktop {
		display: none;
	}
	.mobile {
		display: block;
	}
	.mobile h3 {
		text-shadow: 5px 5px 8px grey;
	}
	/* tablet viewport: syu;e rule for hearder */ 

	header {
		position: static;
		padding-bottom: 2%;

	}
	table {
		border: 1px solid #000;
		margin: 0 auto;
		width: 100%;
		border-collapse: collapse;
	}
	caption {
		font-size: 1.5em;
		font-weight: bold;
		padding: 1%;
	}
	th, td {
		border: 1px solid black;
		padding: 2%;
	}
	th {
		background-color: #000;
		color: #fff;
		font-size:1.15em;
	}
	tr:nth-child(odd){
		background-color: #ccc;
	}
	.grid {
		display: grid;
		grid-template-columns: auto auto auto;
		grid-gap: 20px;
	}
	nav li {
		border-top: none;
		display: inline-block;
	}
	nav li:last-child {
		border-right: none;
	}
	main ul {
		margin: 0% 0% 4% 10%;
	}
	.tel-num {
		font-size: 1.25em;

	}
	.map {
		width:600px;
		height: 450px;
	}
}
/* Desktop viewport */
@media screen and (min-width: 1015px) {
	.tablet-desktop {
		display: block;
	}
	.mobile {
		display: none;
	}
	header {
		width: 25%;
		float:left;
		padding-bottom: 0;
	}
	nav {
		float: right;
		width: 70%;
		margin: 4em 1em 0 0;
	}
	nav ul {
		text-align: right;
	}
	nav li a {
		margin-bottom: 10px;
	}
	main {
		clear: left;
	}
	main h1 {
		font-size: 1.8em;
	}
	#weights, #cardio, #training {
		float: left;
		width: 29%;
		margin: 0% 2%;
	}
		.grid-item4 {
		grid-column: 1 / span 3;
	}
}

@media screen and (min-width: 1921px) {
	#container {
		width:1920px;
		margin: 0 auto;
	}
	table {
		width: 80%;
	}
}
@media print {
	body {
		background-color: #fff;
		color: #000;
	}
}
@media screen and (min-width: 630px), print {
	header {
		width: 25%;
		float:left;
		padding-bottom: 0;
	}
	.pic-text {
		font-size: 1.5em;
		padding: 10px;
	}
	aside {
		text-align: center;
		font-size: 1.25em;
		font-style: italic;
		font-weight: bold;
		padding:2%;
		background-color: rgba(204,204,204,.9);
		box-shadow: 5px 5px 8px #000;
		text-shadow: 5px 5px 5px #000;
	}
	.map {
		width: 600px;
		height: 450px;
	}
	form {
		width: 70%;
		margin: 0 auto;
	}

}
@media screen and (min-width: 1015px), print {
	nav li a {
		color:#000;
		background-color: #fff;
	}
	nav li a:hover {
		color:#000;
		background-color: #fff;
	}
	main {
		clear: left;
	}
	#excercises {
		border-bottom: 1px solid #000;
		background-color: #f2f2f2;
		padding: 1% 2%;
		background: linear-gradient(to right, #ccc, #fff);
	}
	form {
		width: auto;
		display: grid;
		grid-template-columns: auto auto auto;
		grid-gap: 20px;
	}
	.btn {
		grid-column: 1 / span 3;
	}
	.pic-text {
		font-size: 1.5em;
		padding: 20px;
	}
	.frame {
		opacity: .9;
	}
	.frame:hover {
		opacity: 1;
		box-shadow: 8px 8px 8px #000;
	}
	main h1 {
		font-size: 1.75em;
	}
	article h3 {
		font-size: 1.75em;
	}
}
footer p a {
	color: #fff;
	text-decoration: none;
}
#weights, #cardio, #training {
	margin: 0 2%;
}
#exercise {
	clear: left;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
	background-color: #f2f2f2;
	padding: 1% 2%;
}
#exercise dt {
	font-weight: bold;
}
#exercise dd {
	padding: 0.5% 1% 2% 0;
}
#contact {
	text-align: center;
}
#contact a {
	color: #666600;
	text-decoration: none;
}
article {
	padding: 2%;

}
article h3 {
	text-align: center;

}
article img {
	margin: 0 auto;
}
article ul {
	margin-left: 10%;
}
article:nth-of-type(2) {
	background-color: rgba(204,204,204,.9);
}

.action {
	font-size: 1.35em;
	color: #666600;
	font-weight: bold;
	text-shadow: 5px 5px 8px #ccc;
}
.external-link {
	color: #666600;
	font-weight: bold;
	text-decoration: none;
	
}
.map {
	border: 2px solid #000;
	width: 95%;
	height:800px;
	
}
.frame {
	position: relative;
	max-width: 450px;	
	margin: 2% auto;
}
.pic-text {
	position: absolute;
	bottom: 0;
	background: rgba(0,0,0,.5);	
	color: white;
	padding: 20px;
	width: 100%;
	text-align: center;
	font-family: Verdana, Arial, sans-serif
}/* css reset */
.hours {
	margin-left: 10%;
}