@charset "utf-8";
@import url(https://fonts.googleapis.com/css?family=Oxygen:400,700,300);
@import url(shared.css);

/***** DEFAULT ELEMENT STYLING *****/
body { background: #005fb9; color: #333; font-family: 'Oxygen', sans-serif; font-weight: 300; font-size: 16px; text-align: center; -webkit-text-size-adjust: 100%; }

h1, h2, h3, h4, h5, h6 { font-weight: bold; margin: 15px 0; }
h1 { font-size: 40px; }
h2 { font-size: 32px; }
h3 { font-size: 28px; }
h4 { font-size: 24px; }
h5 { font-size: 22px; }
h6 { font-size: 20px; }
h1.page-heading, h1#view-header { background: #005fb9; color: #e7e7e7; margin: 0 0 20px 0; padding: 15px 20px; }

p, table, ul, ol, dl, hr { margin: 20px 0; }
p, li, dd, dl th, td { line-height: 1.4; }
ul, ol { padding: 0 0 0 35px; }
li { margin: 0; padding: 0; }
li ul, li ol { margin: 5px 0; }
dl { padding: 0; }
dt { margin: 0; padding: 0; font-weight: bold; line-height: 1.3; }
dd { margin: 0; padding: 0 0 0 25px; line-height: 1.3; }
td, th { vertical-align: top; }

input, textarea, select { background: #e7e7e7; color: #000; border: 0; border-radius: 0; font-family: 'Oxygen', sans-serif; font-weight: 300; font-size: 16px; }
input, textarea { padding: 3px 5px; }
input:focus, textarea:focus, select:focus { outline: 0; box-shadow: 0 0 3px 1px rgba(255, 182, 31, 0.75); }

hr { height: 2px; color: #000; background: #000; border: 0; }

a { text-decoration: none; color: #005fb9; transition: all 0.3s linear; }
a:hover { text-decoration: underline; }
/***** end DEFAULT *****/

/***** DESIGN *****/

/* GENERAL */
.container { width: 1200px; text-align: left; margin: 0 auto; position: relative; z-index: auto; }

header { background: #001e71; color: #e7e7e7; height: 110px; position: fixed; top: 0; left: 0; width: 100%; z-index: 99999; }
header, header * { transition: all 0.3s linear; }
header a { color: #e7e7e7; text-decoration: none; }
header #logo { position: absolute; width: 55px; top: 5px; left: 0; z-index: 2; }
header #logo img { width: 100%; }
header #logo #logo-name { top: 20px; left: 75px; display: block; width: 230px; position: absolute; }
header #logo #logo-name span { display: block; font-size: 30px; }
header #header-nav { position: absolute; top: 35px; right: 0; height: auto; font-size: 26px; font-weight: 700; transition: all 0.3s linear; }
header #header-nav a { display: inline-block; padding: 10px 15px; }
header #header-nav a:hover { text-decoration: none; }
header #header-nav a.active { position: relative; }

#mobile-menu-button { display: none; position: absolute; top: 7px; right: 15px; }
#mobile-menu-button a { display: block; }
#mobile-menu-button a span { background: #fff; transition: transform 0.2s linear; display: block; width: 25px; height: 4px; margin: 5px 0 0 0; }
#mobile-menu-button.active span.one { -webkit-transform: rotate(-45deg) translate3d(-5px,5px,0); transform: rotate(-45deg) translate3d(-5px,5px,0); }
#mobile-menu-button.active span.two { opacity: 0; }
#mobile-menu-button.active span.three { -webkit-transform: rotate(45deg) translate3d(-8px,-8px,0); transform: rotate(45deg) translate3d(-8px,-8px,0); }

header.small { height: 65px; }
header.small #logo { width: 30px; top: 5px; }
header.small #logo #logo-name { top: 2px; left: 25px; }
header.small #logo #logo-name img { height: 50px; }
header.small #header-nav { top: 12px; }
header.small #header-nav a.active:after { display: none; }

header #logo-secondary { position: absolute; width: 55px; top: 5px; left: 0; z-index: 2; }
header #logo-secondary img { width: 100%; }
header #logo-secondary #logo-name { top: 20px; left: 75px; display: block; width: 230px; position: absolute; }
header #logo-secondary #logo-name img { width: 100% }

header.small #logo-secondary { position: absolute; width: 30px; top: 5px; left: 0; z-index: 2; }
header.small #logo-secondary img { width: 100%; }
header.small #logo-secondary #logo-name { top: 2px; left: 25px; display: block; width: 230px; position: absolute; }
header.small #logo-secondary #logo-name img { height: 50px; }

main { background: #e7e7e7 url('../images/template/bg.png') top center; padding: 110px 0 0 0; }
#main-content { background: #fff; min-height: 300px; }

#connect { background: #d30d2b; position: fixed; top: 170px; right: 0; padding: 12px 5px; z-index: 99998; }
#connect a { display: block; margin: 0; padding: 8px 10px; }
#connect img { width: 40px; height: 40px; }

footer { position: relative; z-index: 1; color: #e7e7e7; font-size: 18px; }
footer #footer-top { background: url('../images/template/bg-footer-top.png') no-repeat bottom right; height: 90px; width: 100%; margin: -90px 0 0 0; padding: 0; }
footer #footer-bottom { padding: 0 0 25px 0; }
footer a { color: #ffb620; }
footer #footer-search { float: left; margin: 0; padding: 15px 0; }
footer #footer-credits { float: right; text-align: right; margin: 0; padding: 5px 0 35px 0; }
footer #footer-nav { float: left; clear: both; margin: 0; padding: 15px 0; font-weight: 700; }
footer #footer-nav a { display: inline-block; padding: 0; margin: 0 15px 0 0; font-size: 24px; }
footer input { background: #002e82; color: #fff; padding: 10px 20px; font-size: 22px; border: 0; }
footer input[type="text"] { width: 300px; }
footer input[type="image"] { background: none; padding: 0; margin: 0 0 0 10px; }
footer input:focus {
	box-shadow: 0 0 5px 2px rgba(255, 182, 31, 0.75);
	-webkit-animation-name: footerFocusHighlight; animation-name: footerFocusHighlight;
	-webkit-animation-duration: 1s; animation-duration: 1s;
	-webkit-animation-iteration-count: 1; animation-iteration-count: 1;
	-webkit-animation-delay: 0.3s; animation-delay: 0.3s;
}
@-webkit-keyframes footerFocusHighlight {
	0% {box-shadow: 0 0 5px 2px rgba(255, 182, 31, 0.75);}
	20% {box-shadow: 0 0 10px 5px rgba(255, 182, 31, 0.75);}
	100% {box-shadow: 0 0 5px 2px rgba(255, 182, 31, 0.75);}
}
@keyframes footerFocusHighlight {
	0% {box-shadow: 0 0 5px 2px rgba(255, 182, 31, 0.75);}
	20% {box-shadow: 0 0 10px 5px rgba(255, 182, 31, 0.75);}
	100% {box-shadow: 0 0 5px 2px rgba(255, 182, 31, 0.75);}
}

#news h1 { margin-top: 45px; }

.news .stream-object { width: 270px; height: 500px; float: left; text-align: center; }
.news .stream-object .thumbnail, .news .stream-object .stream-nophoto .thumbnail { width: 270px; height: 270px; overflow: hidden; margin: 0 auto 15px auto; }
.news .stream-object .stream-nophoto .thumbnail img { width: 270px; height: 270px; }
.news .stream-object span { font-weight: bold; text-align: center; margin: 10px 0; padding: 0; line-height: 1.2; }
.news .stream-object p { margin: 0; text-align: center; margin: 10px 0; padding: 0; line-height: 1.4; }
.news dd { padding: 0; }
.news dd span { font-weight: bold; }

#homepage-news .stream-object { height: auto; width: 100%; float: none; text-align: left; }
#homepage-news.news .stream-object .thumbnail, #homepage-news.news .stream-object .stream-nophoto .thumbnail { width: 180px; height: 180px; overflow: hidden; margin: 0 15px 15px 0; float: left; }
#homepage-news.news .stream-object .stream-nophoto .thumbnail img { width: 180px; height: 180px; }
#homepage-news.news .stream-object span, #homepage-news.news .stream-object p { text-align: left; }


.button { line-height: 1; margin: 20px 0; }
.button a { background: #d30d2b; display: block; font-size: 30px; text-align: center; padding: 10px; color: #fff; font-weight: 700; }
.button a img { vertical-align: bottom; margin: 0 15px 0 0; }
.button.small a { display: inline-block; width: auto; padding-left: 20px; padding-right: 20px; font-size: 20px; }
.popup .button a { background: #005fb9; }

#blackout { display: none; background: rgba(0,0,0,0.5); position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 1000000; }
.popup { display: none; background: #fff; width: 960px; max-height: 80%; overflow: auto; position: fixed; top: 0; left: 0; right: 0; margin: 50px auto; padding: 0; text-align: left; z-index: 1000001; }
.popup-padding { padding: 20px; }
.popupclose { cursor: pointer; }
#blackout .popupclose { color: #fff; color: #fff; position: absolute; top: 5px; right: 10px; font-size: 35px; line-height: 1; }

.popup .widget { margin: 0; }
.popup .widget .button a { float: right; font-size: 16px; }
.popup .widget ul { margin: 0; padding: 0; list-style: none; }
.popup .widget li { margin: 15px 0; padding: 0; display: block; min-height: 55px; line-height: 1.3; }
.popup .widget p { margin: 0; padding: 0; }
.popup .widget .tweet { font-size: 18px; padding: 5px 0; }
.popup .widget .tweet img { height: 18px; }
.popup .widget .timePosted { font-size: 10px; clear: both; font-style: italic; }
.popup #twitter-widget .timePosted { padding: 0; }
.popup .widget .user { font-size: 14px; }
.popup .widget .user span[data-scribe="element:name"] { font-weight: 700; margin-right: 10px; }
.popup .widget .user span[data-scribe="element:screen_name"] { font-size: 12px; }
.popup .widget .user img { float: left; margin: 0 10px 5px 0; display: none; }
#popup-facebook .button a { background: #3b5998; }
#popup-twitter .button a { background: #4099ff; }

.feed-item { margin: 5px 0 20px 0; }
.datePosted{ color: #000; font-weight:bold; display: block; margin-bottom: 10px; }
a.datePosted {color: #005fb9; font-weight:bold; }
.readMore{ color: #005fb9; font-weight:bold; }


/* HOMEPAGE */
.homepage .container-padding { padding: 30px 60px 105px 60px; }

#home-content-left { float: left; width: 690px; }
#home-content-right { float: right; width: 330px; }

.homepage section#banner { position: relative; }

#homepage-ticker { background: rgba(0,0,0,0.5); color: #fff; font-size: 26px; font-weight: 400; position: absolute; bottom: 0; left: 0; width: 100%;overflow:hidden; }
#homepage-ticker dl { margin: 0; padding: 0; }
#homepage-ticker dd { margin: 0; padding: 15px;display:inline-block;margin:0 100px; }
#homepage-ticker span {display:inline;margin:0;padding:0;}


#spotlight-news .stream-object { width: 100%; height: 260px; background: #e7e7e7; }
#spotlight-news .stream-object .thumbnail { background: #e7e7e7; margin: 0 0 0 20px; width: 210px; height: 100%; overflow: hidden; float: right; border-radius: 0; }
#spotlight-news .stream-object span { background: #005fb9; text-align: left; color: #fff; font-size: 24px; margin: 0; padding: 10px 20px; }
#spotlight-news .stream-object span a { color: #fff; }
#spotlight-news .stream-object p { text-align: left; margin: 0; padding: 20px; }
#spotlight-news .stream-object .thumbnail img { transition: all 0.3s linear; }

#division-news-wrapper { margin: 15px 70px 0 0; position: relative; }
#division-news-wrapper .bx-wrapper .bx-controls-direction a { right: -85px; width: 65px; height: 65px; margin-top: 0; border-radius: 50%; }
#division-news-wrapper .bx-wrapper .bx-prev { left: auto; top: 0; background: #e7e7e7 url('../images/template/btn-prev.svg') center center no-repeat; }
#division-news-wrapper .bx-wrapper .bx-next { left: auto; top: 80px; background: #e7e7e7 url('../images/template/btn-next.svg') center center no-repeat; }
#division-news-wrapper .more-news { position: absolute; top: 160px; right: -70px; background: #d30d2b url('../images/template/btn-more.svg') center center no-repeat; width: 65px; height: 65px; border-radius: 50%; }
#division-news .stream-object { height: 520px; overflow: hidden; }
#division-news .stream-end { clear: none; }
#division-news .stream-end a { background: #e7e7e7; display: block; font-size: 25px; font-weight: 700; width: 270px; height: 270px; line-height: 270px; text-align: center; }
#division-news .stream-end a span { line-height: 1; display: inline-block; vertical-align: middle; }

#routes-button a { color: #000; display: block; margin: 0 0 25px 0; width: 100%; height: 120px; font-size: 27px; font-weight: 700;  }
#routes-button a img { vertical-align: middle; transition: all 0.3s linear; }
#routes-button a:hover img { transform: scale(1.3) rotate(10deg); }
#routes-button #routes-img { background: #e7e7e7; display: block; width: 80px; height: 80px; padding: 15px; float: left; border-radius: 50%;}
#routes-button #routes-txt { display: block; padding: 23px 0 0 20px; float: left; }

#buttons a { color: #e7e7e7; text-decoration: none; display: block; height: 115px; margin: 0 0 20px 0; padding: 0; overflow: hidden; position: relative;transition: all 0.3s linear; }
#buttons a span { display: block; }
#buttons a span.img { position: absolute; top: 0; left: 0; padding: 20px 10px; width: 100px; text-align: center; transition: all 0.3s linear; }
#buttons a span.img img { vertical-align: middle; }
#buttons a span.title { font-size: 24px; font-weight: 400; width: 190px; padding: 25px 5px 5px 135px; }
#buttons a span.text { font-size: 14px; width: 190px; padding: 5px 5px 5px 135px; }
#buttons a#button-conversations { background: #005fb9; }
#buttons a#button-parents { background: #0050a8; }
#buttons a#button-students { background: #002e82; }
#buttons a#button-staff { background: #001e71; }
#buttons a:hover { background: #ffb620 !important; color: #fff; }
#buttons a:hover span.title {font-size:28px;padding:40px 5px 5px 135px;}
#buttons a:hover span.text{display:none;}
#buttons a:hover span.img { transform: scale(2) rotate(10deg) translateY(20px); }

#events h1 { font-size: 34px; font-weight: 700; margin-top: 45px; }
#events .cal-button, #news .news-button { margin: 15px 0; font-weight: 700; font-size: 24px; text-align: right; }
#events .google-cal-events ul { list-style: none; margin: 0; padding: 0; }
#event-list dl { margin: 0; padding: 0; }
#event-list dl dd { margin: 5px 0; padding: 0; }
#event-list dl dd { white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }

/* SECONDARY PAGES */
.secondary-page .container-padding { padding: 60px 60px 105px 60px; }
.secondary-page #main-content .container-padding { transition: all 0.2s linear; position: relative; }
.secondary-page #main-content .container-padding .breadcrumb-trail { position: absolute; top: 30px; left: 60px; line-height: 1; text-align: right; }

#news-archive .stream-object { margin:0 auto;width:100%; text-align:left;height: auto;}
#news-archive .stream-object:first-of-type .thumbnail {display:inline-block;margin-right:20px;vertical-align:middle;}
#news-archive .stream-object:first-of-type .details {width:calc(100% - 300px);display:inline-block;vertical-align:middle;}
#news-archive .stream-object:not(:first-of-type) .thumbnail {display:none;}
#news-archive .stream-object span, #news-archive .stream-object p{text-align:left;}

#sidebar-page #content { float: right; width: 800px; }
#sidebar-page #content > *:first-child { margin-top: 0; }
#sidebar-page #sidebar { float: left; width: 260px; font-size: 22px; font-weight: 700; }
#sidebar-page #sidebar ul { margin: 0; padding: 0; list-style: none; }
#sidebar-page #sidebar ul li { margin: 0; padding: 0; display: block; line-height: 1; }
#sidebar-page #sidebar ul li a { margin: 0; padding: 15px 10px; text-align: center; display: block; }
#sidebar-page #sidebar ul li a:hover { text-decoration: none; }
#sidebar-page #sidebar ul.child-pages li a { background: #e7e7e7; color: #333; }
#sidebar-page #sidebar ul.child-pages li a:hover { background: #d30d2b; color: #fff; }
#sidebar-page #sidebar ul.child-pages li a.current { background: #d30d2b; color: #fff; }
#sidebar-page #sidebar ul.child-pages li a.current:hover { background: #005fb9; color: #fff; }
#sidebar-page #sidebar .section-submenu { background: #999999; font-weight: bold; text-align: center; margin: 0 0 20px 0; }
#sidebar-page #sidebar .section-submenu ul { margin: 0; padding: 0; list-style: none; }
#sidebar-page #sidebar .section-submenu li { margin: 0; padding: 0; display: block; }
#sidebar-page #sidebar .section-submenu a { color: #e7e7e7; display: block; padding: 20px; }
#sidebar-page #sidebar .section-submenu a:hover { background: #005fb9; }
#sidebar-page #sidebar .section-submenu a.current { background: #005fb9; }
#sidebar-page #sidebar .section-submenu a.current:hover { background: #d30d2b; }

#routes h3 { clear: both; }
#routes .route-group { margin: 0 0 25px 0; }
#routes .route-row { clear: both; padding: 10px; }
#routes .route-row:nth-child(even) { background: #e7e7e7; }
#routes .route-row > div { display: inline-block; margin: 0; padding: 0 10px 0 0; vertical-align: top; }
#routes .route-row .route-icon { display: none; }
#routes .route-row .route-name { width: 230px; font-weight: 700; }
#routes .route-row .route-style { font-size: 80%; }
#routes .route-row .route-style .route-report { width: 100px; text-align: center; border-radius: 5px; padding: 5px; }
#routes .route-row .route-style .route-report.ontime { background: #005fb9; color: #fff; }
#routes .route-row .route-style .route-report.delayed { background: #ffb61f; color: #fff; }
#routes .route-row .route-style .route-report.deferred { background: #ffb61f; color: #fff; }
#routes .route-row .route-style .route-report.notrunning { background: #d30d2b; color: #fff; }
#routes .route-row .route-delay { width: 115px; text-align: center; }
#routes .route-row .route-notes { width: 385px; }
#routes .route-row .route-updated { width: 150px; font-size: 65%; font-style: italic; padding-right: 0; }

#calendar ul li ul li { background: #005fb9; color: #e7e7e7; }

#form-newsletter-subscribe .form-label { width: 80px; float: left; margin: 0 10px 0 0; padding: 5px 0 0 0; clear: both; }
#form-newsletter-subscribe .form-control input { width: calc(100% - 10px); max-width: 390px; margin: 0 0 10px 0; padding: 5px; }
#form-newsletter-subscribe .form-control select { width: 100%; max-width: 400px; margin: 0 0 10px 0; padding: 5px; }
#form-newsletter-subscribe .form-buttons { padding: 0 0 0 90px; }
.newsletter-subscribe-custom #form-newsletter-subscribe .form-buttons { padding: 0; }
#form-newsletter-subscribe .form-buttons input { width: calc(50% - 5px); max-width: 195px; padding: 5px 0; }
#form-newsletter-subscribe .form-buttons input[value="Subscribe"] { margin: 0 10px 0 0; cursor: pointer; font-weight: bold; }
#form-newsletter-subscribe .form-buttons input[value="Subscribe"]:hover { background: #d30d2b; color: #e7e7e7; }
#form-newsletter-subscribe .form-buttons input[value="Unsubscribe"] { margin: 0; cursor: pointer; font-weight: bold; }
#form-newsletter-subscribe .form-buttons input[value="Unsubscribe"]:hover { background: #b43e3e; color: #e7e7e7; }

p#newsletter-response { color: #36c900; }

.secondary-page .school { float: left; width: calc(100% / 3 - 15px); height: 140px; margin: 0 15px 5px 0; font-size: 14px; }
.secondary-page .school .school-logo { width: 70px; height: 70px; margin: 0 10px 0 0; float: left; text-align: center; display: block; overflow: hidden; }
.secondary-page .school .school-logo img { width: 70px; height: 70px; margin: 0 auto; }
.secondary-page .school .school-name { font-weight: 700; font-size: 20px; padding: 5px 0; }
.secondary-page .school .school-grades { padding: 5px 0 0 80px; }
.secondary-page .school .school-phone { padding: 5px 0 0 80px; }
.secondary-page .school .school-principal { padding: 5px 0 0 80px; }

/***** end DESIGN *****/

@media screen and (max-width: 1450px) {
	/***** DESIGN *****/

	/* GENERAL */
	.container { width: 1100px; }

	header #header-nav { font-size: 23px; }

	#connect { padding: 5px 0; }
	#connect a { padding: 4px 7px; }
	#connect img { width: 35px; height: 35px; }

	/* HOMEPAGE */
	.homepage .container-padding { padding: 30px 40px 105px 40px; }

	#home-content-right { width: 300px; }

	#homepage-ticker { font-size: 24px; }

	#routes-button a { font-size: 20px; }
	#routes-button #routes-txt { padding: 32px 0 0 20px; }

	#buttons a span.title { width: 190px; padding: 25px 5px 5px 105px; }
	#buttons a span.text { width: 190px; padding: 5px 5px 5px 105px; }
	#buttons a:hover span.img { opacity: 0.5; }
	#buttons a:hover span.title {font-size:24px;padding:40px 5px 5px 130px;}

	
	/* SECONDARY PAGES */
	.secondary-page .container-padding { padding: 90px 40px 105px 40px; }
	.secondary-page #main-content .container-padding .breadcrumb-trail { left: 40px; }


	#sidebar-page #content { width: 760px; }
	#sidebar-page #sidebar { width: 240px; font-size: 19px; }
	
	/***** end DESIGN *****/
}

@media screen and (max-width: 1250px) {
	/***** DESIGN *****/

	/* GENERAL */
	.container { width: 1000px; }

	header #logo { top: 10px; width: 50px; height: 90px; }
	header #logo #logo-name { width: 180px; font-size: 32px; top: 20px; left: 70px; }
	header.small #logo #logo-name { left: 45px; }

	.popup { width: 90%; }

	/* HOMEPAGE */
	.homepage .container-padding { padding: 30px 30px 105px 30px; }

	#homepage-ticker { font-size: 20px; }

	#home-content-left { width: 600px; }

	#spotlight-news .stream-object p { padding: 10px 15px 10px 20px; }
	
	/* SECONDARY PAGES */
	.secondary-page .container-padding { padding: 45px 30px 105px 30px; }
	.secondary-page #main-content .container-padding .breadcrumb-trail { top: 20px; left: 30px; }


	#sidebar-page #content { width: 690px; }
	#sidebar-page #sidebar { width: 230px; font-size: 18px; }
	
	/***** end DESIGN *****/
}

@media screen and (max-width: 1160px) {
	/***** DESIGN *****/

	/* GENERAL */
	.container { width: 870px; }

	header #header-nav { font-size: 19px; }

	#connect { top: 120px; padding: 3px 0; }
	#connect a { padding: 2px 5px; }
	#connect img { width: 30px; height: 30px; }

	/* HOMEPAGE */
	.homepage .container-padding { padding: 15px 15px 105px 15px; }

	#homepage-ticker { font-size: 18px; }
	#homepage-ticker dd { padding: 10px; }

	#home-content-left { width: 535px; }
	#home-content-right { width: 280px; }

	#spotlight-news .stream-object { height: 300px; }
	#spotlight-news .stream-object p { font-size: 15px; }

	#routes-button a { font-size: 20px; }
	#routes-button #routes-txt { padding: 32px 0 0 20px; }

	#buttons a { height: 100px; margin: 0 0 10px 0; }
	#buttons a span.title { width: 190px; padding: 15px 5px 5px 85px; }
	#buttons a span.text { width: 190px; padding: 5px 5px 5px 85px; }
	#buttons a span.img { width: 50px; }
	#buttons a span.img img { width: 50px; height: 50px; }
	#buttons a:hover span.img { opacity: 0.5; }
	#buttons a:hover span.title {font-size:26px;padding:35px 5px 5px 100px;}
	
	/* SECONDARY PAGES */
	.secondary-page .container-padding { padding: 35px 15px 105px 15px; }
	.secondary-page #main-content .container-padding .breadcrumb-trail { top: 10px; left: 15px; }

	#sidebar-page #content { width: 630px; }
	#sidebar-page #sidebar { width: 200px; font-size: 17px; }
	
	/***** end DESIGN *****/
}

@media screen and (max-width: 1000px) {
	/***** DESIGN *****/

	h1 { font-size: 28px; }
	h2 { font-size: 25px; }
	h3 { font-size: 21px; }
	h4 { font-size: 17px; }
	h5 { font-size: 14px; }
	h6 { font-size: 12px; }
	h1.page-heading, h1#view-header { padding: 5px 10px; }

	/* GENERAL */
	.container { width: 700px; }

	header #logo #logo-name, header #logo-secondary #logo-name { display: none; }
	header.small #logo #logo-name, header.small #logo-secondary #logo-name { display: none; }
	header #header-nav { font-size: 18px; }

	#connect { top: 120px; padding: 3px 0; }
	#connect a { padding: 2px 5px; }
	#connect img { width: 25px; height: 25px; }

	footer input[type="text"] { width: 150px; }
	footer #footer-nav { text-align: center; margin: 0; padding: 20px 0; }

	/* HOMEPAGE */
	.homepage .container-padding { padding: 15px 15px 105px 15px; }

	#homepage-ticker { font-size: 16px; }

	#home-content-left { float: none; width: 100%; margin-bottom: 25px; }
	#home-content-right { float: none; width: 100%; }

	#buttons a span.title { width: auto; }
	#buttons a span.text { width: auto; }
	
	/* SECONDARY PAGES */
	.secondary-page .container-padding { padding: 35px 10px 105px 10px; }
	.secondary-page #main-content .container-padding .breadcrumb-trail { top: 10px; left: 10px; }

	#sidebar-page #content { width: 480px; }
	#sidebar-page #sidebar { width: 190px; font-size: 16px; }

	#form-newsletter-subscribe .form-control input { max-width: 290px; }
	#form-newsletter-subscribe .form-control select { max-width: 300px; }
	#form-newsletter-subscribe .form-buttons input { max-width: 145px; }

	.secondary-page .school { width: calc(50% - 15px); }
	
	/***** end DESIGN *****/
}

@media screen and (max-width: 820px) {
	/***** DESIGN *****/

	/* GENERAL */
	.container { width: 95%; }

	main { padding: 45px 0 0 0; }

	header, header.small { height: 45px; }
	header #logo, header.small #logo, header #logo-secondary, header.small #logo-secondary { width: 20px; top: 5px; }
	header #logo #logo-name, header.small #logo #logo-name, header #logo-secondary #logo-name, header.small #logo-secondary #logo-name { display: block; width: 100px; left: 25px; top: 5px; }
	header #logo #logo-name img, header.small #logo #logo-name img, header #logo-secondary #logo-name img, header.small #logo-secondary #logo-name img { height: 25px; }
	header #header-nav, header.small #header-nav { display: none; background: #005fb9; top: 45px; right: 10px; }
	header #header-nav a { display: block; padding: 15px 25px; }
	header #header-nav a.active:after, header.small #header-nav a.active:after { display: none; }
	header #mobile-menu-button, header.small #mobile-menu-button { display: block; }

	footer { padding: 0 0 50px 0; }
	footer #footer-search { float: none; width: 100%; text-align: center; margin: 0 0 20px 0; padding: 0; }
	footer #footer-credits, footer #footer-nav { float: none; width: 100%; text-align: center; margin: 0 0 20px 0; padding: 0; font-size: 15px; }

	#connect { position: fixed; top: auto; right: auto; bottom: 0; left: 0; width: 100%; padding: 0; }
	#connect div { display: inline; }
	#connect a { display: inline-block; margin: 0; padding: 5px 10px; }
	#connect img { width: 28px; height: 28px; }

	.popup h1 { margin-top: 0; font-size: 20px; }
	.popup .widget .button { margin-top: 0; }
	.popup .widget .button a { float: none; }
	.popup .widget .tweet { font-size: 14px; }

	/* HOMEPAGE */
	#homepage-ticker { font-size: 12px; }
	#homepage-ticker dd { padding: 5px; }

	#division-news-wrapper .more-news { top: auto; right: auto; left: 160px; bottom: -70px; }
	#division-news-wrapper { margin: 40px 0 100px 0; }
	#division-news-wrapper .bx-wrapper .bx-controls-direction a { right: auto; bottom: -70px; }
	#division-news-wrapper .bx-wrapper .bx-prev { top: auto; left: 0; }
	#division-news-wrapper .bx-wrapper .bx-next { top: auto; left: 80px; }
	
	/* SECONDARY PAGES */
	.secondary-page .container-padding { padding: 0 10px 105px 10px; }
	.secondary-page #main-content .container-padding .breadcrumb-trail { position: static; top: auto; left: auto; font-size: 14px; padding: 10px 0 10px 60px; line-height: 1.2; }

	#news-archive .stream-object { height: auto; float: none; }

	#sidebar-page #content { width: 100%; }
	#sidebar-page #sidebar { width: 100%; font-size: 15px; padding: 25px 0 0 0; }

	#form-newsletter-subscribe .form-label { width: 100%; margin: 0 0 5px 0; padding: 0; float: none; }
	#form-newsletter-subscribe .form-control input { max-width: 290px; margin: 0 0 15px 0; }
	#form-newsletter-subscribe .form-control select { max-width: 300px; margin: 0 0 15px 0; }
	#form-newsletter-subscribe .form-buttons { padding: 0; }

	.secondary-page .school { float: none; width: 100%; margin: 0 0 15px 0; height: auto; }
	
	/***** end DESIGN *****/
}

@media screen and (max-width: 680px) {
	#spotlight-news .stream-object { height: auto; }
	#spotlight-news .stream-object .thumbnail { display: none; }

	#news-archive .stream-object:first-of-type .thumbnail {margin:0 auto;}
	#news-archive .stream-object:first-of-type .details {width:100%;}

	#homepage-news.news .stream-object { margin-bottom: 25px; }
	#homepage-news.news .stream-object, #homepage-news.news .stream-object p, #homepage-news.news .stream-object span, #homepage-news.news .stream-object p { text-align: center !important; }
	#homepage-news.news .stream-object .thumbnail, #homepage-news.news .stream-object .stream-nophoto .thumbnail { margin: 0 auto 15px auto; float: none; }
}

@media screen and (min-width: 821px) {
	header #header-nav, header.small #header-nav { display: block !important; } /* Prevents menu from being hidden when scaling back up to tablet/desktop after closing mobile menu. */
}