/**************************************
GENERAL
************************************** */

body {
	width : 100%;
	height : 100%;
	font-family : 'Arial', sans-serif;
	color : #252525;
	line-height : 1.6em;
	font-size : 16px;
	background-color : #fff;
}

p, .newsbody {
	margin: 10px 20px 10px 15px;
}

.newsbody {
	margin-left: 0;
}

.sidebar-content p {
	margin-left: 0;
}

.header-container a {
	border-bottom: transparent dashed 1px;
}

a:hover, a:focus {
	color: #002366;
	border-bottom: transparent dashed 1px;
}

a:visited {
	color: #002366;
}

ul {
	margin: 5px 20px 5px 0;
}

.search-container {
	margin-top: 20px;
}

/**************************************
TITLES
************************************** */

h1 {
	color: #FFF;
	font-size: 2.188em;
	font-family: 'Satisfy', cursive;
	font-weight: 400;
	line-height: 1.4;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	align-items: center;
	padding: 6px 1px 6px 15px;
	margin: 15px 0 27px 0;
	background: #283C8F;
	box-shadow: 0 3px 0 #fff, 0 -3px 0 #fff, 0 6px 0 #fdcf4c, 0 -6px 0 #fdcf4c;
	z-index: 10;
}

h2, .newstitle {
	color: #283C8F;
	font-size: 1.563em;
	font-family: 'Roboto', sans-serif;
	font-weight: 400;
	line-height: 1.2em;
	margin: 30px 0 20px 15px;
	padding: 5px 1px 0 0;
	border-bottom: 2px solid #FDCF4C;
}

h3, .sidebar-top {
	color: #283C8F;
	background: #FDCF4C;
	font-size: 1.875em;
	font-family: 'Roboto', sans-serif;
	font-weight: 400;
	line-height: 1.1;
	display: block;
	padding: 13px 5px 14px;
	margin: 15px 0 27px;
	text-transform: uppercase;
	text-align: left;
	box-shadow: 0 3px 0 #fff, 0 -3px 0 #fff, 0 6px 0 #fdcf4c, 0 -6px 0 #fdcf4c;
}

h4 {
	color: #283C8F;
	font-size: 1.438em;
	font-family: 'Roboto', sans-serif;
	font-weight : 400;
	line-height : 1.2em;
	margin: 0 0px 10px 0px;
	padding: 20px 0 2px 0;
	border-bottom: 2px solid #FDCF4C;
}

.staff-subtitle {
	font-size: 18px;
	color: #283C8F;
	text-transform: uppercase;
}

.collapsible-title {
	color: #283C8F;
	font-size: 18px;
	font-family: 'Roboto', sans-serif;
	font-weight: 400;
	line-height: 1.2em;
	margin: 10px 15px;
	padding: 0px;
}

.collapsible-title:hover, .collapsible-title:focus {
	text-decoration: underline;
}

.collapsible-title:after {
	content: '\f13a';
	font-family: 'FontAwesome';
	font-size: 17px;
	line-height: 1;
	position: absolute;
	margin-left: 5px;
	margin-top: 2px;
	color: #F1C443;
}

.signature {
	font-size : 1.8em;
	display : block;
	font-family: 'Permanent Marker', cursive;
	font-weight : 400;
	color: #283C8F;
	margin: 20px 0 0 15px;
}

/**************************************
HEADER
************************************** */

.header-container {
	min-height: 100px;
	margin-top: 25px;
}

header a {
	text-decoration: none;
}

header img {
	display: block;
	margin: 20px auto;
	width: 45%;
	max-width: 254px;
}

.header-schoolname {
	font-size: 11vw;
	line-height: 1.2;
	font-family: 'Satisfy', cursive;
	font-weight: 400;
	color: #283C8F;
	position: relative;
	text-align: center;
	z-index: -1;
	letter-spacing: 1px;
	padding: 0 20px;
}

.header-schoolname span {
	font-family: 'Roboto', sans-serif;
	font-size: 8vw;
	color: #000;
	text-align: center;
	letter-spacing: 0;
	margin-top: 5px;
	display: block;
	text-transform: uppercase;
}

form {
	margin-left : 1em;
	margin-bottom : 1em;
	width : 95%;
	margin-top: 20px;
}

table {
	width : 90%;
}

td.label {
	width : 20%;
}

input[type="text"], textarea {
	width: 95%;
}

input {
	margin-bottom : 5px;
}

::-webkit-input-placeholder {
	color: white;
}

:-moz-placeholder {
	/* Firefox 18- */

color: white;
}

::-moz-placeholder {
	/* Firefox 19+ */

color: white;
}

:-ms-input-placeholder {
	color: white;
}

.frm-field {
	margin: 5px 0;
}

.frm-field label {
	display: inline-block;
	width: 100%;
}

.frm-field fieldset {
	margin-left: -10px;
	border: 0 none;
}

.frm-field fieldset legend {
	left: 0;
}

.frm-field fieldset label {
	padding-right: 10px;
	width: auto;
}

.frm-field label {
	position: relative;
	overflow: visible;
	height: auto;
}

.frm-field fieldset {
   display: flex;
   flex-direction: column;
}

input[type="checkbox"], input[type="radio"] {
   width: 15px;
   box-sizing: border-box;
   padding: 0;
   display: inline-block;
   margin-left: 15px;
   margin-top: 10px;
}

.frm-field fieldset label {
   padding-right: 8px;
   margin-left: 42px;
   padding-top: 5px;
   margin-top: -29px;
}

@media screen and (min-width: 29em) {
	.header-schoolname {
	font-size: 3.75rem;
}

.header-schoolname span {
	font-size: 2.5rem;
}


}

@media screen and (min-width: 48em) {
	.header-container {
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	align-items: center;
	min-height: 200px;
	margin-top: 0px;
}

header img {
	width: auto;
	margin-left: 10px;
	margin-top: 15px;
	z-index: 1;
	position: relative;
}

header {
	margin-right: auto;
	margin-left: auto;
	max-width: 75rem;
	position: relative;
	top: -10px;
}

#header-container, #header-container-subpages {
	max-width : 75em;
	margin-left : auto;
	margin-right : auto;
}

.header-schoolname {
	margin-top: -80px;
}

.header-schoolname span {
	font-size: 28.07px;
	letter-spacing: 10px;
	margin-left: -35px;
}

h3 {
	text-align: center;
}

h2, p, .newsbody, .signature, .newstitle {
	margin-left: 0;
}


}

@media screen and (min-width: 62em) {
	h1::after {
	content: "";
	border-top: 29px solid transparent;
	border-right: 30px solid #fff;
	border-bottom: 29px solid transparent;
	padding: 0;
	margin: 0;
	right: 0;
	position: absolute;
	margin-top: 0px;
}

@-moz-document url-prefix() {
	h1::after {
	margin-top: 0;
}


}


}

@media screen and (min-width: 70em) {
	header {
	max-width: 75rem;
	margin-right: auto;
	margin-left: auto;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
}

.header-schoolname {
	font-size: 5.186em;
	line-height: .9;
}

.header-schoolname span {
}


}

/**************************************
MAIN BODY STYLING
************************************** */

.sidebar-content {
	margin: 0 15px;
}

.main-content a, .sidebar-content a {
	color: #000;
	text-decoration : none;
	border-bottom: #000 dashed 1px;
}

.main-content a:hover, .main-content a:focus,
.sidebar-content a:hover, .sidebar-content a:focus {
	color: #283C8F;
	border-bottom: transparent dashed 1px;
}

.slideshow, .subpage-header, .sidebar-content img, .main-content img {
	display: none;
}

@media screen and (min-width: 48em) {
	#container, #container-subpages {
	max-width : 75em;
	margin-left : auto;
	margin-right : auto;
}

.subpage-header {
	width: 100%;
	display: block;
	position: relative;
	margin-right: auto;
	margin-left: auto;
	margin-top: -95px;
	border-top: 6px solid #000;
	border-bottom: 6px solid #000;
	height: auto;
	max-height: 272px;
	overflow: hidden;
	z-index: -10;
}

.sidebar-content img {
	display: block;
	width: 90%;
	max-width: 260px;
	margin: 20px auto;
	border: 2px solid #FDCF4C;
	outline: 8px solid #283C8F;
}

.main-content img {
	display: block;
}

main {
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	margin-top : 13px;
	margin-bottom: 40px;
}

.main-content {
	width : 67%;
	margin-left : 0;
	margin-right :0;
	position : relative;
	order: 2;
}

.sidebar-content {
	width : 29%;
	margin-right : 3%;
	margin-left : 1%;
	order: 1;
}

.sidebar-content p {
	margin: 10px 0;
}


}

@media screen and (min-width: 61.25em) {
	.main-content {
	width : 72%;
}

.sidebar-content {
	width : 24%;
	margin-right : 3%;
	margin-left : 1%;
	order: 1;
}


}

/**************************************
NAVIGATION
************************************** */

#main-menu-state {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	border: 0;
	padding: 0;
	overflow: hidden;
	clip: rect(1px,1px,1px,1px);
}

.main-menu-btn {
	position: relative;
	display: block;
	padding: 0.815em 40px;
	height: 24px;
	overflow: hidden;
	line-height: 26px;
	text-align: center;
	cursor: pointer;
	color: #fff;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}

.main-menu-btn-icon, .main-menu-btn-icon:before, .main-menu-btn-icon:after {
	position: absolute;
	top: 50%;
	left: 15px;
	height: 2px;
	width: 24px;
	background: #283C8F;
	-webkit-transition: all 0.5s;
	transition: all 0.5s;
}

.main-menu-btn-text {
	position: absolute;
	top: -99999px;
}

.main-menu-btn-icon:before {
	content: '';
	top: -7px;
	left: 0;
}

.main-menu-btn-icon:after {
	content: '';
	top: 7px;
	left: 0;
}

#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon {
	height: 0;
	background: transparent;
}

.main-menu-btn-icon:before {
	content: '';
	top: -7px;
	left: 0;
}

#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:before {
	top: 0;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:after {
	top: 0;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

#main-menu-state:not(:checked) ~ #site-navigation {
	display: none;
}

#main-menu-state:checked ~ #site-navigation {
	display: block;
}

/* Make sub indicators align to the left of the item */

.sub-arrow {
	position: absolute;
	top: 50%;
	margin-top: -17px;
	left: auto;
	right: 4px;
	width: 34px;
	height: 34px;
	overflow: hidden;
	font: bold 16px/34px monospace !important;
	text-align: center;
	text-shadow: none;
	background: rgba(0, 0, 0, 0.1);
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	-ms-border-radius: 4px;
	-o-border-radius: 4px;
	border-radius: 4px;
}

/* Hide sub indicator "+" when item is expanded - we enable the item link when it's expanded */

a.highlighted span.sub-arrow:before {
	display: block;
	content:'-';
}

nav.nav {
	margin-right: auto;
	margin-left: auto;
	max-width: 1200px;
}

nav ul li {
	font-family: 'Arial', sans-serif;
	font-size: 1em;
}

nav ul li a {
	line-height: 1.5;
}

nav ul li ul {
	display : block;
	text-indent : 20px;
}

nav li {
	display : block;
}

nav#menu {
	background-color :  #FDCF4C;
	padding: 0px;
	margin-top: -38px;
}

nav.nav ul {
	margin: 0;
	padding: 15px;
	border-top: 1px solid #808080;
}

nav.nav li a {
	display : block;
	padding: 3px;
	color : #283C8F;
	text-decoration : none;
	line-height: 1.85;
}

nav.nav li a:hover, nav.nav li a:focus {
	text-decoration : underline;
}

@media screen and (min-width: 48em) {
	/****** Desktop Nav ******* */

.main-menu-btn {
	position: absolute;
	top: -99999px;
}

#main-menu-state:not(:checked) ~ #site-navigation {
	display: block;
}

#main-menu-state {
	display: none;
}

.sub-arrow {
	display: none;
}

nav ul li {
	font-size: 1.2em;
}

nav#menu {
	overflow : visible;
	height: 41px;
	padding: 0px;
	margin-top: -35px;
}

#site-navigation {
	height: 40px;
	margin-top : -8px;
}

nav.nav ul {
	margin: 0 0 0 5px;
	border: 0;
	text-align : left;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	max-width: 85%;
	padding: 0;
}

nav.nav li {
	display : inline-block;
	margin: auto;
	padding: 0;
}

nav.nav li a {
	padding: 5px 10px 2px;
	text-align: center;
	font-size: 2vw;
	border: 0;
}

nav.nav li:hover, nav.nav li:focus {
	background-color : #FDCF4C;
}

nav.nav li a:hover, nav.nav li a:focus {
	text-decoration: underline;
}

nav.nav li li a:hover, nav.nav li li a:focus {
	color: #9a0418;
	background-color : transparent;
}

nav.nav li li:hover, nav.nav li li:focus {
	background-color : #CEDFF1;
	color: #09357f;
}

nav.nav ul ul {
	position : absolute;
	top : 40px;
	width: 100%;
	min-width : 210px;
	background-color : #FDCF4C;
	text-indent : 0;
	float : none;
	z-index : 1000;
	margin-left: 0;
	padding-left: 0;
	display: none;
}

nav.nav ul ul li {
	float : none;
	border-bottom: dotted 1px #fff;
	position : relative;
	width: 100%;
	margin: 0;
}

nav.nav ul ul li a {
	padding: 5px 20px;
	font-size : 0.7em;
	font-weight: 400;
	text-align : left;
	line-height: 1.4;
}

nav.nav ul ul li:hover, nav.nav ul ul li:focus {
	color : #fff;
	background-color: #283C8F;
	text-decoration : underline;
}

nav.nav ul ul li a:hover, nav.nav ul ul li a:focus {
	color: #fff;
}

nav.nav ul ul ul {
	margin-left: 210px;
	margin-top: -40px;
}

nav.nav ul ul li a {
	font-size : 16px;
}


}

@media screen and (min-width: 61.25em) {
	nav.nav li a {
	font-size: 21px;
	padding: 1px 10px;
}


}

@media screen and (min-width: 70em) {
	nav#menu {
	position: relative;
	z-index: 120;
	margin-top: 13px;
}


}

@media screen and (min-width: 72em) {
	nav.nav ul {
	margin-left: 0px;
	padding-left: 0px;
}


}

/**************************************
FOOTER
************************************** */

footer {
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
	font-size: 1em;
	line-height: 1.1;
	width: 100%;
	position: relative;
	color: #EDEDED;
	background-color: #283C8F;
	text-align: center;
	margin-top: 20px;
	box-shadow: 0 -4px 0 #fff, 0 -14px 0 #fdcf4c;
}

.footer-container {
	padding: 14px 15px;
	position: relative;
}

.footer-schoolname {
	font-family: 'Roboto', sans-serif;
	font-weight: 400;
	color: #FFF;
	text-transform: uppercase;
	font-size: 1.6em;
}

.footer-physical-address {
	padding: 5px 0px;
}

.footer-phone-container span {
	display: none;
}

footer a {
	color: #fff;
}

#copyright {
	clear : both;
	font-size : 14px;
	line-height : 19px;
	font-family: 'Arial', sans-serif;
	color :  #000;
	display : block;
	padding: 20px;
	text-align : center;
}

#copyright a {
	color :  #000;
}

@media screen and (min-width: 20em) {
	.footer-phone-container span {
	margin-left: 10px;
	margin-right: 10px;
	display: inline-block;
}


}

@media screen and (min-width: 25em) {
	.footer-phone-container span {
	margin-left: 20px;
	margin-right: 20px;
}


}

/**************************************
SOCIAL CONTAINER
************************************** */

.social-container {
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	justify-content: flex-end;
	padding-right: 15px;
	margin-top: 10px;
}

.top-social-bar {
	padding-top: 10px;
	padding-left: 10px;
	max-width: 1200px;
	margin: 0 auto;
}

i span {
	display : none;
}

.social-container p a, .social-container p span {
	font-size: 1.1em;
	font-family: 'Arial', sans-serif;
	color : #525151;
	font-weight: 400;
	text-decoration : none;
	margin-top : 3px;
	margin-right: 0px;
}

.social-container p a:hover, .social-container p a:focus {
	color: #9a0418;
}

.social-container p, .social-icons {
	margin: 2px 10px 5px 0;
}

i.fa.fa-facebook-official, i.fa.fa-twitter, i.fa.fa-search, i.fa.fa-calendar, i.fa.fa-phone {
	font-size: 1.8em;
	z-index : 5500;
	color: #8e8e8e;
	background-color: #fff;
	border-radius: 50%;
	font-size: 20px;
	box-shadow: 3px 3px 8px #8e8e8e;
	transition: all .2s ease-in-out;
}

.social-container .fa:hover, 
.social-container a:focus > i.fa.fa-calendar, 
.social-container a:focus > i.fa.fa-phone, 
.social-container a:focus > i.fa.fa-search {
	transform: scale(1.2);
}

i.fa.fa-search:hover,  i.fa.fa-search:focus, 
i.fa.fa-calendar:hover, i.fa.fa-calendar:focus,
i.fa.fa-phone:hover, i.fa.fa-phone:focus {
	color: #fff;
	background-color: #233890;
	box-shadow: 0 0 0 0;
}

i.fa.fa-facebook-official {
	color: #3b579d;
	margin: 0 5px 0 0;
}

i.fa.fa-twitter {
	color: #5ea9dd;
	margin-right: 5px;
}

i.fa.fa-calendar {
	color: #283C8F;
	margin-right: 5px;
	font-size: 15px;
	padding: 7px;
}

i.fa.fa-phone {
	color: #000;
	margin-right: 7px;
	padding: 4px;
	width: 62%;
	text-align: center;
}

i.fa.fa-search {
	padding: 4px;
}

/*** 70em and Wider ** */

@media screen and (min-width: 70em) {
	.social-container {
	padding-right: 115px;
}

.top-social-bar {
	position: relative;
	z-index: 150;
}

.top-social-bar-container {
	position: absolute;
	max-width: 227px;
	right: 0;
}


}

/**************************************
SIDEBAR BUTTONS
************************************** */

.button {
	background-color: #FFF;
	border: 1px solid #283C8F;
	max-width: 250px;
	padding: 10px;
	margin: 20px auto !important;
}

.button a {
	color: #283C8F;
	font-size: 1.375em;
	font-family: 'Roboto', sans-serif;
	font-weight: 400;
	text-decoration: none;
	text-align: center;
	display: block;
	border-bottom: 1px solid transparent;
}

.button a:hover, .button a:focus {
	text-decoration: underline;
}

#weblinksimage {
	display: none;
}

/**************************************
SKIP NAV
************************************** */

.skip a {
	color: #fff;
}

#skip a, .skip a {
	position:absolute;
	left:-10000px;
	top:auto;
	width:1px;
	height:1px;
	overflow:hidden;
}

#skip a:focus, .skip a:focus {
	position:static;
	width:auto;
	height:auto;
}

.skip:hover a:focus {
	margin-top: 20px;
	color: #fff;
}

/*** 70em and Wider ** */

@media screen and (min-width: 70em) {
	header {
	min-height: 275px;
	max-width: 75rem;
	margin-right: auto;
	margin-left: auto;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
}

nav.nav li a {
	font-size: 1em;
	padding: 3px 10px 1px;
}

nav.nav ul {
	max-width: 76%;
}

nav.nav ul ul {
	max-width: none;
}

.footer-schoolname {
	font-size: 2.203em;
}

.footer-address-container {
	font-size: 1.375em;
}


}

/**********MOBILE QUICKLINKS ************************ */

.quicklinkscontainer {
	display: none;
}

.quicklinks-title {
	margin-bottom: 0px;
}

.quicklinks-title {
	color: #283C8F;
	background: #FDCF4C;
	font-size: 1.875em;
	font-family: 'Roboto', sans-serif;
	font-weight: 400;
	line-height: 1.2;
	display: block;
	padding: 12px 5px;
	margin: 15px 0 20px;
	text-transform: uppercase;
	text-align: left;
	box-shadow: 0 3px 0 #fff, 0 -3px 0 #fff, 0 6px 0 #fdcf4c, 0 -6px 0 #fdcf4c;
}

.quicklinks-mobile-title {
	font-family: 'Roboto', sans-serif;
	color: #283C8F;
	font-size: 1.5em;
}

div.quicklinks-mobile-title:hover, div.quicklinks-mobile-title:focus {
	text-decoration: underline;
}

a.quicklinks-mobile {
	text-decoration: none;
}

.quicklinkscontainer-mobile ul {
	margin : 5px 15px 5px 0px;
}

@media screen and (min-width: 48em) {
	.quicklinks-title {
	text-align: center;
}


}

/**********DESKTOP QUICKLINKS ************************ */

@media screen and (min-width: 70em) {
	.quicklinkscontainer-mobile {
	display: none;
}

.quicklinkscontainer {
	color: #fff;
	z-index: 100;
	width: 231px;
	height: 331px;
	background-image: url(https://tb2cdn.schoolwebmasters.com/accnt_375675/site_375676/Graphics/graphic_quicklinks_background.png);
	background-repeat: no-repeat;
	background-position: center top;
	position: absolute;
	display: inline-block;
	margin: -56px 43px 0 0;
	padding-top: 55px;
	top: 0;
	right: 0;
}

.ql-title {
	color: #fff;
	font-family: 'Satisfy', cursive;
	font-size: 30px;
	text-align: center;
	margin-top: 17px;
	margin-left: 30px;
	margin-right: 30px;
	padding-top: 3px;
	background: #233890;
}

.ql-title::after {
	content: "";
	width: 168px;
	height: 1px;
	background: transparent;
	display: block;
	border-bottom: 2px solid #6270AD;
	margin: 0 auto;
}

.quicklinkscontainer nav {
	position: relative;
}

.parents {
	z-index : 800;
	padding-bottom: 2px;
}

.students {
	z-index : 700;
	padding-bottom: 2px;
}

.employees {
	z-index : 600;
	padding-bottom: 2px;
}

.community {
	z-index : 500;
	padding-bottom: 2px;
}

.chooseus {
	z-index : 400;
	padding-bottom: 2px;
}

li.ql:hover, li.ql a:focus {
	text-decoration: underline;
}

li.ql ul li a {
	color : #ffffff;
	font-family: 'Roboto', sans-serif;
	font-size : 14px;
	line-height: 17px;
	text-align : left;
	font-weight: 400;
	display : block;
	height : auto;
	padding: 5px 10px 5px 0px;
	text-decoration : none;
	text-transform : none;
	margin-left: 0;
	margin-right: 0;
	z-index: 900;
}

ul.ql li ul li {
	border-bottom: 1px #ffffff solid;
}

ul.ql li ul li:hover, ul.ql li ul li:focus {
	text-decoration: underline;
}

li.ql {
	text-align: center;
	font-weight: 300;
	font-size : 1.313em;
	height: 24px;
	padding: 3px 0 6px 0px;
	font-family: 'Roboto', sans-serif;
}

li.ql a {
	color: #fff;
}

ul.ql li.ql ul {
	position : absolute;
	background-color: #5a788b;
	margin-left: -70px !important;
}

.quicklinkscontainer ul li a {
	background: #233890;
	margin-left: 58px;
	margin-right: 58px;
}

.quicklinkscontainer .skip {
	margin-top : 20px;
}

.skip a {
	background: #283C8F;
}


}

