* {
	margin: 0;
	padding: 0;
	border: 0;
}

:focus {
outline: none;
}

summary {
outline: 0;
}

@font-face {
	font-family: 'chalkduster', cursive;
	src: url('../fonts/chalkduster.eot');
	src: url('../fonts/chalkduster.woff') format('woff'), url('../fonts/chalkduster.ttf') format('truetype'), url('../fonts/chalkduster.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'champagne', sans-serif;
	src: url('../fonts/champagne.eot');
	src: url('../fonts/champagne.woff') format('woff'), url('../fonts/champagne.ttf') format('truetype'), url('../fonts/champagne.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}

body {
	background-color: white;
}

#container {
	margin: auto;
	background-color: white;
}

header {
	margin: auto;
	z-index: 4;
}


/* ----------------- Header -----------------*/
header #contact_header {
	display: inline;
	float: right;
	margin-top: 1%;
	width: 150px;
}

header #social {
	float: left;
	padding-top: 2.5%;
	max-width: 25px;
}

header #logo {
	float: left;
	width: 15.5%;
	margin: 1%;
}

#map_small, #map_large {
	border: 0;
}

.phone {
	text-align: right;
	margin-left: 2%;
	}

.red, .phone {
	color: #ED1C24;
}

.red a:hover {
	color: #018683;
}

.champagne_header {
	font-size: 5rem;
}

nav {
	background-color: #14A850;
	text-align: center;
	position: sticky;
	top: 0;
	clear: both;
	z-index: 3;
	padding: 4%;
	}

nav ul {
	padding-top: 1%;
	padding-bottom: 1%;
	list-style-type: none;
	margin-left: 0%;
}

nav ul li {
	display: inline;
}

nav ul li a:link, nav ul li a:visited {
	color: #FFFFFF;
	text-decoration: none;
	font-weight: bold;
	margin: 1% .5% 1% .5%;
	font-size: .80rem;
	justify-content: space-around;
}

nav ul li a:hover, nav ul li a:active {
	border-bottom: 4px white dotted;
}

/* ----------------- END Header -----------------*/

/* ----------------- Home -----------------*/

.first {
	width: 100%;
	padding: 3% 0 3%;
	text-align: center;
}

 .first-paragraph {
	text-align: center;
	width: 96%;
	display: block;
	}

.large-image, .contact-image {
	max-width: 290px;
	width: 75%;
	text-align: center;
	display: block;
	margin: auto;
}

#small, #large {
	border: none;
	overflow: hidden;
}

main {
	padding: 1%;
}

h1, h2 {
	font-family: 'chalkduster';
}

h1, h2, h3, h4, p, li, ol, ul, .champagne_header {
	color: black;
}

h1 {
	font-size: 1.2rem;
	padding-top: 12%;
	text-align: center;
	}

h2 {
	font-size: 1.875rem;
	padding-bottom: 1%;
}

h3, h4, nav ul, nav, .phone {
	font-family: 'Chelsea Market', cursive;
}

h5 {
	color: #ED1C24;
	font-size: 2rem;
	margin: 2.5% 0 2.5% 0;
}

h6 {
	color: #ED1C24;
	font-size: 1.5rem;
	margin: 1.5% 0 1.5% 0;
}

h5, h6, p, ol, ul, .champagne_header, main {
	font-family: 'champagne', sans-serif;
}

p, ol, ul {
	line-height: 125%;
}

li {
	padding: .5%;
}

p, li, ol, ul, h3, h4, .phone {
	font-size: 1rem;
}

ol, ul {
	margin-left: 4%;
	list-style-type: disc;
}

a:link, a:visited {
	color: #00AEEF;
	text-decoration: none;
}

a:hover, a:active {
	color: #ED1C24;
	text-decoration: none;
}

#google, #facebook {
	text-align: center;
}

#large {
	display: none;
	margin: auto;
}

#small {
	display: block;
	margin: auto;
}

.gallery, .staff, .soon, .gallery:hover, .staff:hover, .soon:hover {
	height: 200px;
	margin-top: 1% !important;
	width: 70%;
	justify-content: space-around
}

.gallery, .staff, .soon, .gallery:hover, .staff:hover, .soon:hover, .read_more, .read_more:hover {
	-webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    -ms-border-radius: 30px;
    -o-border-radius: 30px;
    border-radius: 30px;
    max-width: 290px;
    margin: auto;
 }

.staff, .staff:hover {
	background-image: url("../images/staff_2019.jpg");
 }

 .gallery, .gallery:hover {
	background-image: url("../images/photogallery_small.jpg");
}

.soon, .soon:hover {
	background-image: url("../images/coming_soon_small.jpg");
 }

.soon:hover, .gallery:hover, .staff:hover {
	opacity:.75;
}

#map_small {
	display: block;
	margin: auto;
}

#map_large {
	display: none;
	padding: 3% 0 3%;
}

#map {
	text-align: center;
}
.hidden {
	display: none;
	visibility: hidden;
}

#contact_info {
	width: 80%;
	margin: 4% auto 2%;
	clear: both;
}

#info {
	clear: both;
	display: flex;
	justify-content: space-around;
	flex-direction: column;
}

#contact_info p {
	margin: 0;
}

#contact_info h4, #contact_info p, footer, figure, #info, #contact_info {
	text-align: center;
}

#contact_form {
	background-color: #00AEEF;
	float: none;
	width: 80%;
	max-width: 500px;
	margin: 3% auto;
	padding: 2%;
    -webkit-box-shadow: 1px 1px #7D7D7D;
    -moz-box-shadow: 1px 1px #7D7D7D;
    -ms-box-shadow: 1px 1px #7D7D7D;
    -o-box-shadow: 1px 1px #7D7D7D;
    box-shadow: 1px 1px #7D7D7D;
}

#contact_form p, #contact_form, #contact_info p, footer p {
	font-size: .75rem;
}

#contact_form, #contact_form p, #contact_form h3, input[type="submit"]:hover, input[type="reset"]:hover, input[type="submit"], input[type="reset"], footer p, footer {
	color: white;
}

input, select, textarea, fieldset, select, input[type="submit"], input[type="submit"]:hover, input[type="reset"], input[type="reset"]:hover  {
	border: 1px solid black;
	-webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    -ms-border-radius: 10px;
    -o-border-radius: 10px;
    border-radius: 10px;
}

textarea {
	max-width: 300px;
}

fieldset {
	margin: .5%;
	padding: 2%;
}

label, textarea, select {
	display: block;
	margin: 1%;
}

label, input[type="submit"]:hover, input[type="reset"]:hover, input[type="submit"], input[type="reset"] {
	font-weight: bold;
}

input {
	margin: 2% .5% 5% .5%;
	padding: .5%;
}

input[type="submit"], input[type="reset"] {
	background-color: #14A850;
}

input[type="submit"]:hover, input[type="reset"]:hover {
	background-color: #018683;
}

input[type="submit"]:hover, input[type="reset"]:hover, input[type="submit"], input[type="reset"] {
	padding: 2%;
	margin-top: 3%;
}

textarea {
	height: 5%;
	width: 80%;
}

footer {
	clear: both;
	background-color: #14A850;
	padding: 1%;
	margin-top: 3%;
}

#social_footer {
	max-width: 25px;
}

/*--------End Home Page----------*/
/*--------Start Staff Page----------*/

figure {
	clear: both;
	margin: 0 auto 0 !important;
}

figcaption {
	margin: auto;
	margin-bottom: 3%;
	width: 80%;
	display: block;
	}

#full-staff {
	display: flex;
	justify-content: space-around;
	clear: both;
	flex-grow: 1;
	flex-direction: column;
	align-items: flex-start;
	padding-top: 2%;
}

#full-staff figure {
	margin: auto;
	max-width: 200px;
}

#full-staff figure img {
	max-width: 200px;
	align-items: baseline
}

#rosy_picture {
	width: 40%;
	margin: 0 30% 0;
}

#rosy_bio {
	width: 60%;
	margin: auto;
}

#rosy_bio h5, #rosy_picture, figcaption {
	text-align: center;
}

#owner {
	margin: 3% 0 1.5% 0;
}

#lead_staff, #teacher_staff, #teacher_staff2, #teacher_assistant, #teacher_staff3, #teacher_staff4 {
	display: flex;
	justify-content: space-around;
	clear: both;
	padding-top: 5%;
	padding-bottom: 5%;
}

.headshot {
	width: 100%;
}

.teacher {
	width: 25%;
}
/*--------------------------------End Staff Page--------------------------------*/
/* ---------------------------Start Blog Code------------------------------*/

.blog p, .blog p li, .blog ul {
	font-size: 1.125rem;
	line-height: 125%;
	padding-top: 2%;
}

.blog_summary, footer, #contact_form, nav {
	-webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -ms-border-radius: 20px;
    -o-border-radius: 20px;
    border-radius: 20px;
}

#blog_post {
	width: 75%;
	margin: auto;
	display: block;
}

.blog_summary {
	border: 1px solid #14A850;
	margin: 3%;
	height: 250px;
	padding: 3.5%;
}

.blog_image {
	margin: 0 20% 0 20%;
	width: 60%;
}

.blogs p {
	font-size: 1.25rem;
	line-height: 125%;
	margin-bottom: 3%;
}

.blogs h6 {
	text-align: center;
}

.read_more, .read_more:hover {
	color: white;
	text-decoration: none;
	text-align: center;
	padding: 1%;
	display: inline;
	margin: auto;
}

.read_more {
	background-color: #14A850;
}

.read_more:hover {
	background-color: #018683;
}

.blog h3 {
	margin: 1.5%;
	font-size: 2.5rem;
	text-align: center;
	color: #ED1C24;
}

.blogs h3 {
	margin: 1.5%;
	font-size: 2.5rem;
	text-align: center;
	color: #ED1C24;
}

#south_carolina, #vocab_photo {
	width: 80%;
	margin: 0 10% 0;
}

.blog {
	padding-bottom: 2.5%;
}

/*-------------------------------End Blog Code-------------------------*/

/* ---------------------------Start Gallery Code---------------------- */

.photos {
	text-align: center;
	margin: auto;
	clear: both;
	display: flex;
	justify-content: space-around;
	flex-grow: 1;
	flex-wrap: wrap;
	align-items: flex-start;
 }

 .gallery_heading {
 	text-align: center;
 	font-size: 2rem;
 	padding: 1%;
 }

 .photos a {
 	width: 200px;
	height: 200px;
 }

 div.album {
  margin: 5px;
  width: 100%;
	position: relative;
	text-align: center;
}

div.album img {
  	width: 22%;
  	height: auto;
	padding-bottom: 10px;
}

.littlefish, .littlefish:hover {
	background-image: url("../images/littlefish.jpeg")
}

.mothers, .mothers:hover {
	background-image: url("../images/mothersday.png")
}

.gradtuation, .gradtuation:hover {
	background-image: url("../images/graduation.jpeg")
}

.steam, .steam:hover {
	background-image: url("../images/steam.jpeg")
}

 .valentines_2023, .valentines_2023:hover, .littlefish, .littlefish:hover, .mothers, .mothers:hover, .gradtuation, .gradtuation:hover, .steam, .steam:hover {
 	height: 200px;
	clear: none;
	margin: 5% auto 0;
	max-width: 250px;
	background-repeat: no-repeat;
	background-size: cover;
	justify-content: space-around;
	-webkit-border-radius: 30px;
		-moz-border-radius: 30px;
		-ms-border-radius: 30px;
		-o-border-radius: 30px;
		border-radius: 30px;
		max-width: 290px;
	}

 .valentines_2023:hover, .littlefish:hover, .mothers:hover {
 	opacity: .75;
	height: 200px;
	clear: none;
	margin: 5% auto 0;
	max-width: 250px;
	background-repeat: no-repeat;
	background-size: cover;
	justify-content: space-around;
	-webkit-border-radius: 30px;
		-moz-border-radius: 30px;
		-ms-border-radius: 30px;
		-o-border-radius: 30px;
		border-radius: 30px;
		max-width: 290px;
 }

 .photos h3 {
 	color: white;
 	padding-top: 7%;
 	text-shadow: 2px 2px black;
	font-size: 1.2rem;
 }

 #photo-gallery h3 {
	margin: 1.5%;
	font-size: 2.5rem;
	text-align: center;
	color: #ED1C24;
}
/*-------------------------------END Gallery Page--------------------------------*/
/*-------------------------------Begin Media Queries-----------------------------*/
/* ----------------------------- MEDIA QUERY 330 PX -----------------------------*/

/* ----------------- END MEDIA QUERY 330PX -----------------*/
/* ----------------- MEDIA QUERY 430PX -----------------*/
@media (min-width: 430px) {

	/*-----Start Main Code-----*/

	h1 {
		font-size: 1.4rem;
	}

	h5 {
		font-size: 1.5rem;
	}

	.phone {
		font-size: 1rem;
		padding: 1%;
	}

	#contact_header {
		width: 145px;
	}

	#small {
		display: none;
	}

	#large {
		display: block;
	}

	#map_small {
		text-align: center;
	}

	nav {
		padding: 4%;
	}

	nav ul li a:hover, nav ul li a:active {
		border-bottom: 4px white dotted;
	}

	nav ul li a:link, nav ul li a:visited {
		margin: 1% 1% 1% 1%;
		font-size: 1em;
	}

	/*------End Main Code------*/

	.blog_summary {
    	height: 425px;
	}
}
/* ----------------- END MEDIA QUERY 430PX -----------------*/
/* ----------------- MEDIA QUERY 556 PX -----------------*/

@media (min-width: 556px) {

	h1 {
		font-size: 1.75rem;
		padding-top: 10%;
	}

	nav {
		padding: 4%;
	}

	nav ul li a:link, nav ul li a:visited {
		font-size: 1rem;
	}

	nav ul li a:hover, nav ul li a:active {
		border-bottom: 5px white dotted;
	}

	.first {
		display: flex;
		justify-content: space-around;
		max-height: 450px;
		padding-bottom: 3% 0 3%;
	}

	.large-image, .contact-image {
		text-align: center;
		width: 40%;
		margin: 0;
	}

	.large-image {
		max-width: 300px;
		max-height: 210px;
	}

	.first-paragraph {
		width: 51%;
}

	#map_large {
		display: block;
		margin: auto;
	}

	#map_small {
		display: none;
	}
}
/* ----------------- END MEDIA QUERY 556 PX -----------------*/
 /*---------------------------- MEDIA QUERY 661PX –––––––––––––––––––––––––––––––––*/

 @media (min-width: 661px) {

	#full-staff {
		flex-direction: row;
	}

	h3, h4 {
		font-family: 'Chelsea Market', cursive;
		color: black;
		font-size: 1.5rem;
	}

	.phone {
		font-size: 1.5rem;
		padding: 1%;
	}

	header #contact_header {
		width: 200px;
		min-width: 150px;
	}

	h1 {
		font-size: 2rem;
		text-align: center;
		padding-top: 7.5%;
	}

	nav ul li a:link, nav ul li a:visited {
		margin: 1% 4% 1% 4%;
		font-size: 1.125rem;
	}

	nav {
		padding: 3%;
	}

	nav ul li a:hover, nav ul li a:active {
		border-bottom: 5px white dotted;
	}

	.blog_summary {
		height: 490px;
	}

}
/* ----------------- END MEDIA QUERY 661PX -----------------*/

/* ----------------- MEDIA QUERY 960PX -----------------*/
@media (min-width: 960px) {

	/*-----------Start Main Code--------*/
	#container {
		max-width: 960px;
	}

	h1 {
		font-size: 2.5rem;
		padding-left: 25%;
		padding-top: 7.5%;
	}

	nav {
		padding: 2%;
	}

	nav ul li a:hover, nav ul li a:active {
		border-bottom: 10px white dotted;
	}

	nav ul li a:link, nav ul li a:visited {
		margin: 1% 4% 1% 4%;
		font-size: 1.125rem;
	}

	#contact_form {
		float: left;
		clear: both;
		width: 450px;
	}

	#facebook {
		margin: 2.5% 0% 2.5% 0%;
		max-width: 460px;
		width: 47%;
		float: right;
	}

	#contact_info {
		float: right;
		margin: 15% 0 2% 0;
		width: 44%;
	}

	#map {
		float: left;
		margin-top: 2%;
	}

	#info {
	 	flex-direction: row;
	}
	.staff, .staff:hover, .soon, .soon:hover, .gallery, .gallery:hover {
		width: 30%;
		height: 200px;
		margin: auto;
	  display: flex;
	  justify-content: space-around;
	}

	/*-----------End Main Code--------*/

	/*----Start Blog Code--------*/

	.blog_image {
		float: left;
		display: block;
		margin: 2%;
		max-width: 300px;
	}

	.blog_summary {
		height: 250px;
	}

	/*-----------End Blog Code--------*/

	/*-----------Start Staff Code--------*/

	#rosy_bio {
		display: inline;
		width: 62.5%;
		float: right;
	}

	#rosy_picture {
		display: inline;
		float: left;
		width: 31.25%;
		margin: 0%;
	}

	/*-----------End Staff Code--------*/
}

@media (min-width: 860px) {
	.large-image {
		max-width: 350px;
		max-height: 250px;
	}
}
