/*
Theme Name: Harvy Mudd College Core
Author: Peter Hobley, Office of Communications and Marketing
Description: The HMC parent theme. All HMC WordPress sites use this base theme. Child themes are created from it.
Version: 1
*/

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, main {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

hr {
	display: none;
}

u {
	text-decoration: none;
}

span {
	/*text-decoration: none !important;*/
}

/* Common Styles */
 
 /*****
 ***
 *** BEGIN HMC STYLING
 ***
 *****/
 
html {
	background: #000;
}

body {
	height: 100%;
	background: #fff;
	font-size: 100%;
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

noscript {
	display: none;
}

.assistive-text {
	text-indent: -99999em;
}

.clear {
	clear: both;
}

.left {
	text-align: left;
}

.center {
	text-align: center;
}

.right {
	text-align: right;
}

code {
	font-family: monospace;
}

/*****
 ***
 *** PAGE HEADER
 ***
 *****/

a#skip-to-content:link {
	display: block;
	z-index: 2000;
	position: absolute;
	top: -40px;
	left: 0;
	padding: 0.5em;
	border-bottom-right-radius: 0.5em;
	background: transparent;
	background: #000;
	color: #fff;
	text-decoration: none;
	transition: top 1s ease-out, background 1s linear;
}

a#skip-to-content:focus {
	top: 0;
	left: 0;
	background: #A6192E;
	transition: top .1s ease-in, background .5s linear;
}

a#skip-to-content:visited {
	color: #fff;
}

a.skip-nav { /* on the planned giving site */
	display: none;
}

#pageHeader {
	max-width: 100%;
	background: #000;
}

#pageHeader figure {
	margin: 0;
}
 	
/*
 *
 * LOGO
 *
*/

#logo {
	width: 3.5em;
	height: 3.5em;
	margin: 0 0 0 1em;	
	position: absolute;
	top: 1em;
	z-index: 1100;
}

#logo a{
	background: url(images/home-new.png) no-repeat center bottom;
	text-indent: -99999em;
	width: 100%;
	height: 100%;
	padding: 0;
	display: block;
	background-size: 100%
}

#logo img#print-logo {
	display: none;
}

@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
    only screen and (-o-min-device-pixel-ratio: 3/2),
    only screen and (min--moz-device-pixel-ratio: 1.5),
    only screen and (min-device-pixel-ratio: 1.5) {
     
   #logo a{
     background: url(images/home-new@x2.png) no-repeat center bottom;
     background-size: 100%;
	}
     
}


#logo a:hover{
	background-position: center top;
}

/* If logged in */

body.admin-bar #logo {
	margin-top: 1.75em;
}

body.admin-bar #mobile-nav-control {
	margin-top: 1.75em;
}
  		
/*
 *
 * Search box
 *
*/

#cse-search-box {
	padding: 1em 0;
}

#cse-search-box.fadeIn {
	opacity: 1;
	display: block;
	transition: opacity 0.5s;
}

#cse-search-box label { /* Shifted from view but avaiable for screen readers */
	position: absolute;
	left: -99999px;
	background: #fff;
}

#cse-search-box input[type="text"] {
	border: none;
	outline: none;
	padding: 0.6em 2%;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background: #fff;
	display: block;
	width: 92%;
	margin: 0 auto;
	line-height: 1;
}

#cse-search-box input[type="submit"]{
	background: #eaaa00;
	border: none;
	padding: 0.25em 0;
	font-weight: bold;
	font-size: 0.9em;
	display: block;
	width: 92%;
	margin: 1em auto;
}

/*
 * Search results - Google
 *
 *
*/

/* Google Search Box and Results */

#google-results {
	font-family: Helvetica;
}

#google-results b {
	font-weight: bold;
}

#google-results table {
	margin: 0;
}

#google-results td.gsib_a {
	padding: 0 0.3em;
}

#google-results td input[type="input"] {
	padding: 0 0.5em;
}

form.gsc-search-box table {
	margin: 0;
}

form.gsc-search-box td {
	padding: 0;
	font-size: inherit;
}

#content form.gsc-search-box a:after {
	content: none;
}

div.gsc-control-cse {
	padding: 0;
}

div.gsc-wrapper {
	margin: 1em 0;
}

div.gsc-result-info {
	padding: 1em 0;
}

table.gsc-table-result {
	padding-left: 0;
}

div.gsc-thumbnail-inside,
div.gsc-url-top {
	padding: 0;
}

td.gsc-thumbnail {
	padding-left: 0;
}

.gs-webResult div.gs-visibleUrl-long {
	font-size: 1.1em;
	padding-bottom: 0.2em;
}

.gsc-control-cse .gs-spelling, .gsc-control-cse .gs-result .gs-title{
	margin-bottom: 0.2em;
	font-family: 'Helvetica Neue',Helvetica,Arial;
}

.gs-webResult .gs-snippet, .gs-imageResult .gs-snippet, .gs-fileFormatType {
	font-size: 1.2em;
	line-height: 1.3;
	font-family: 'Helvetica Neue',Helvetica,Arial;
}

div.gsc-cursor-box {
	border-top: 1px solid #ebebeb;
	padding-top: 1em;
	margin: 0.75em 0 !important;
}
	
div.gsc-cursor-current-page {
	background: #eaaa00;
	padding: 5px;
	color: #fff;
}

#google-results input.gsc-input {
	font-size: 1em;
	font-family: 'Helvetica Neue',Helvetica,Arial;
}

#google-results tr:nth-child(odd) {
	background: #fff;
}

div.gs-promotion td {
	background: #f6f6f6;
}

/*
 *
 * MAIN TOP LEVEL NAVIGATION
 *
*/
 	
#mobile-nav-control {
	 display: block;
	 position: absolute;
	 right: 1em;
	 top: 0.2em;
	 width: 2.5em;
	 height: 2.5em;
	 z-index: 20000;
	 background: url(images/mobile/menu-button.png) center no-repeat;
	 	 text-indent: -99999rem;

}
 
#main-nav-placeholder { /* Takes the place of the nav bar when it becomes fixed. Prevents jumping and repeated toggling */
	min-height: 3em;
	background: #000;
	width: 100%;
	top: 0;
	z-index: 1000;
} 

#main-nav {
	margin: 0 auto;
}

#main-nav > ul {
	margin: 2em auto 0;
	list-style: none;
	font-size: 1em;
	position: absolute;
	background: #000;
	width: 100%;
	padding-top: 2em;
	opacity: 0;
	z-index: 0;
	display: none;
	transition: opacity 0.5s;
}

#main-nav > ul li {
	margin: 0;
}

#main-nav > ul.fadeIn {
	opacity: 1;
	z-index: 1000;
	display: block;
	padding-top: 3em;
}

#main-nav > ul > li > a {
	color: #fff;
	text-transform: uppercase;
	font-size: 0.75em;
	text-decoration: none;
	padding: 1em 1.5em;	
	display: block;
}

#main-nav > ul > ul > a:focus {
	border: none;
}

#main-nav > ul > li > a:hover {
	background: #eaaa00;
}

#main-nav > ul > li#home a{
	background: url(images/home.png) no-repeat center bottom;
	background-size: 100%;
	text-indent: -99999em;
	width: 100%;
	height: 100%;
	padding: 0;
}

#main-nav > ul > li#home a:hover{
	background-position: center top;
}

#main-nav li ul {
	display: none;
	margin: 0;
	list-style: none;
}

#main-nav #search-toggle a {
	display: none;	
}

/* Report a problem with website */

#report-problem {
	display: none;
}

/*
 *
 * Section home image
 *
 *
*/

#section-image figure img {
	max-width: 60em;
	width: 100%;
	height: auto;
	margin: 0 auto;
}

#section-image div {
	max-width: 60em;
	margin: 0 auto;
	background: #eee;
	height: 15em;
	padding: 20px 0;
	text-align: center;
}

#section-image div h2 {
	margin-top: 4em;
}

#section-image + #breadcrumb {
	margin-top: 0;
}

#section-image + #breadcrumb p{
	margin: 0 1.2em 1.3em;
}

/*
 *
 * BREADCRUMB TRAIL
 *
*/

#breadcrumb {
	background: #fff;
	padding: 0.5em 0 0 0;
}

#breadcrumb p {
	padding: 0;
	font-size: 0.8em;
	color: #666;
	line-height: 1.3;
	margin: 2em 0 1.3em 1.2em;
}

#breadcrumb p a {
	color: #555;
	text-decoration: none;
}

#breadcrumb p a:hover {
	text-decoration: underline;
	color: #333;
}	
 
/*****
 ***
 *** MAIN BODY: LEFT, CENTER AND RIGHT
 ***
 *****/
 	
#content-wrapper {
	padding: 0 1em;
	background: #fff;
}
 	
/* 
 *
 * LEFT NAV 
 *
*/

#left-nav-control {
	padding: 0.4em;
	border-radius: 0.2em;
	background: #eaaa00;
	color: #fff;
	text-decoration: none;
	font-size: 1em;
}

body.page-template-default #leftNav {
	margin-top: 1em;
}

#left-nav-control:after {
	content: " +";
}

#left-nav-control.open:after {
	content: " -";
}

#left-nav-control.open,
#left-nav-control:hover {
	background: #000;
	color: #fff;
}

#leftNav h3 {
	padding: 0;	
	margin: 0 0 0.2em;
	font-size: 1em;
	font-weight: bold;
}

#ctaLeft {
	margin: 0 0 1em 0;
}

#ctaLeft li {
	list-style: none;
}

#leftNav #ctaLeft h3 {
	font-size: 1.35em;
}

#leftNav p {
	margin-bottom: 0.5em;
	font-size: 0.875em;
	line-height: 1.2;
}

#leftNav p a {
	color: #000;
}

#leftNav p a:hover {
	border-bottom-style: solid;
	color: #444;
}

#leftNav p.tel {
	margin: 1em 0 0;
}

#mobile-left-collapse-wrapper {
 	display: none;
 	padding: 0 0 1em;
 	border-bottom: 3px solid #ececec;
 	margin: 1em -2%;	
} 	 	

#menu-left-related,  	 	
#menu-left { 
	width: 100%; /* Fixes webkit slideToggle 'jump' */
	padding: 0;
	margin: 0 0 2em 0;	
	font-size: 0.9em;
	list-style: none;
}

#menu-left-related > li,
#menu-left > li {
	margin: 0.5em 0;
	line-height: 1.2;
}

#menu-left-related,
#menu-left li {										/* All levels */
	position: relative;
	line-height: 1;
	list-style: none;
}

#menu-left ul,
#menu-left ul ul,
#menu-left ul ul ul {
	font-size: 1em;
}

body.home #menu-left li.current_page_item {
	/*display: none;*/
}

#menu-left span {
	display: inline; 	
	vertical-align: middle;									/* All levels disclosure */	
	position: absolute;
	z-index: 10;
	top: 0.15em;
	right: 0;		
  	height: 1.25em;
  	width: 1.2em;
  	color: #000;
 	font-size: 1.5em;
 	line-height: 1.25;
 	text-align: center;
 	cursor: pointer;
}

#menu-left span:focus {
	outline: none;
}

#menu-left span:hover {
	background: #fec200;
}

#menu-left ul { /* All sub-menus */
	margin: 0 0 0.5em 0.6em;
}

#menu-left-related a,
#menu-left a {										/* First/all levels */
	display: block;
	padding: 0.75em 9% 0.5em 2%;
	color: #000;
	text-decoration: none;
}

#menu-left-related a:hover,
#menu-left a:hover {
	text-decoration: underline;
} 

#menu-left ul a {									/* Second, third and fourth levels */
	padding: 0.75em 9% 0.75em 2%;
}

#menu-left li.current_page_item > a,				/* Current menu items */
#menu-left li.current-menu-item > a	{			/* Current menu items */		
	padding-left: 2%;
	color: #000;
	background: #ebebeb;
	cursor: default;
	text-decoration: none;
}

#menu-left ul li.current_page_item > a,
#menu-left ul li.current-menu-item > a {
	padding-left: 2%;
}

body.archive #menu-left li.current_page_parent > a,
body.single #menu-left li.current_page_parent > a, /* For POST left menu parents */
body.single #menu-left li.current-post-ancestor > a {
	padding-left: 5%;
	color: #000;
	background: #ebebeb;
	text-decoration: none;
}

#menu-left > li.current_page_item > a,
#menu-left > li.current_page_item > a:hover {
	padding-left: 2%;
	text-decoration: none;
}

#ctaLeft {
	margin: 1.25em 0;
}

#ctaLeft li {
	width: 50%;
	margin: 1em 0 1.5em 0;
	font-size: 0.9em;	
}

#ctaLeft li a{
	display: block;
	padding: 0.75em 6%;
	border-radius: 0.5em;	
	background: #BCBB11;
	color: #333;
	text-decoration: none;
	font-weight: bold;
	text-transform: uppercase;
	text-align: center;
}

#ctaLeft li a:hover {
	background: #eaaa00;
	color: #fff;
}

div.left-box {
	padding: 1em;
	border-radius: 0.5em;
	background: #FEC200;
	color: #000;
}

/* 
 *
 * CONTENT 
 *
*/

#content {	
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	padding-bottom: 1em;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 1em 0 0.3em;
	color: #333;
	font-weight: bold;
}

h1 {	
 	margin: 0.75em 0 0.4em;
 	font-family: 'Vitesse A','Vitesse B','Helvetica Neue', Helvetica, Arial, sans-serif;
 	font-size: 1.6em;
}
 	
h2 {
	font-size: 1.2em;
	line-height: 1.4;
}

h2.collapsible-heading {	
	padding: 0.25em 1% 0.25em;
	margin: 0 0 0.2em;	
	background: #efefef;
	color: #333;
	font-size: 1.1em;
	line-height: 1.2;
	letter-spacing: 0.05em;	
	cursor: pointer;
}

h2.collapsible-heading span {
	position: absolute;
	left: -99999px;
}

h2.collapsible-heading.open {
	background: #fec200;
	color: #000;
}

h2.collapsible-heading a {
	position: relative;
	display: block;
	overflow: hidden;
	padding-right: 5%;
	border: none;
	color: #333;
	text-overflow: ellipsis;
	text-decoration: none;
	white-space: nowrap;
}

#content h2.collapsible-heading a:after{
	position: absolute;
	top: 0;
	right: 1%;
	float: right;
	content: '+';
}

#content h2.collapsible-heading.open a:after{
	float: right;
	content: '-';
}

div.collapsible-content {
	padding: 0.8em 0 0;
}

div.collapsible-content h3:first-child,
div.collapsible-content p:first-child  {
	margin-top: 0;
}

/* Open/Close All Show Hide Triggers */

p.open-close-all {
	clear: both;
	margin: 0.5em 0;
	text-align: right;
}

p.open-close-all a {
	background: #efefef;
	padding: 0.4em 0.5em;
	text-decoration: none;
	color: #333;
	border-radius: 0.25em;
	font-size: 0.9em;
	font-weight: bold;
}

p.open-close-all a.open {
	background: #fec200;
}

h3 {
	font-size: 1em;
}

h4 {
	font-size: 0.9em;
}

h5 {				/* Not normally used but styled for completeness */
	font-size: 0.7em;
}

h6 {				/* Not normally used but styled for completeness */
	font-size: 0.5em;
}

main a:after{
	content: url(images/external.png);
}

main a[href*="hmc.edu"]:after,
main a[href*="tel:"]:after,
main a[href^="#"]:after,
main a[href*="formstack"]:after,
main a[href*="drive.google"]:after,
main a[href*="docs.google"]:after,
main a[href*="imodules.com"]:after,
main a[href*="@"]:after,
main a.fancybox:after,
main ul.large-cta a:after,
main a.ytcthumb:after,
main a[href*='javascript']:after {
	content: '';
}

a {
	transition: all 0.2s;
}

a:link{
	color: #007fa3;
	color: #006783;
}

a:visited {
	color: #007fa3;
	color: #006783;
}

a:hover {
	border-bottom-style: solid;
	color: #444;
}

figure a:link {
	border: none;
}

p.more {
	margin: 1em 0 0 0;	
	font-size: 0.75em;
	line-height: 1;
	font-weight: bold;
	text-align: right;
}

p.more a:link {
	padding: 0 1.5em 0 0;
	background: url('images/small-arrow.png') no-repeat right center;
	color: #333;
	text-decoration: none;
	text-transform: uppercase;
}

p.more a:visited {
	color: #333;
}

p.more a:hover {
	color: #444;
	text-decoration: underline;
}

p {
 	margin: 0 0 1.3em;
 	color: #000;
 	font-size: 0.875em;
 	line-height: 1.5;
}

#content p {
	padding-left: 0 !important; /* In case someone tries to indent a pargraph because they "like it" that way. No. No. No. No. */
}

ul,ol {
	margin-left: 6%; 
	font-size: 0.875em;	
}

ul {
	margin: 0 1em 1.5em 1.4em;
	list-style: square;
}

/* Keeps li's in line when next to floated images */
#content ul {
	/*overflow: hidden;*/
	margin: 0 1em 1.5em 0;
}

#content ul ul {
	margin: 0 1em 0 0;
}

#content ul li {
	margin-left: 1.25em;
}

ul ul,
ul ol,
ol ul {
	margin: 0.75em 0 0;
	font-size: 1em;
}

ol {
	margin: 0 0 1.5em 1.5em;
	list-style: decimal;
}

ol ol {
	margin-bottom: 0;
	font-size: 1em;
	list-style: lower-alpha;
}

li {
	margin: 0.2em 0;
	line-height: 1.5;
}

li p {
	font-size: 1em;
}

blockquote {
	margin: 1em 5%;
	font-size: 0.8em;
	line-height: 1.3;
	color: #444;
}

blockquote p {
	margin-bottom: 0.5em; 
	font-size: 1em;
}

blockquote footer {
	text-align: right;
}

blockquote cite {
	font-size: 1em;
}

p.edit-link {
	clear: both;
}

em,i {
	font-style: italic;
}

strong {
	font-weight: bold;
}

sup {
	vertical-align: super; 
}

sub {
	vertical-align: sub;
}

figure img,
img {
	display: block;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
}

img.wp-smiley {
	display: inline;
}

figure.alignleft,
img.alignleft,
figure.alignright,
img.alignright {
	margin: 0.2em auto 0.5em;
}

figure {
	display: block;
	clear: both;
	margin: 1em auto;
}

figcaption {	
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	padding: 0.2em 0;
	color: #444;
	font-size: 0.7em;
	line-height: 1.3;
	text-align: left;
}

figcaption em,
figcaption i {
	font-style: normal;
}

dl {
	font-size: 0.875em;
	line-height: 1.4;
}

dt {
	font-weight: bold;
}

dd {
	margin-bottom: 1em;
}

dd.gallery-caption {
	font-size: 0.75em;
}

iframe {
	max-width: 100%;
}

iframe.form {
	min-height: 500px;
}

iframe.google-doc {
	width: 100%;
	height: 40em;
}

iframe[src*="youtube"] {
	max-width: 100%;
}

div.highlight-box {
	overflow: hidden;
	border-radius: 0.5em;
	margin: 0 0 2em;
}

#content div.highlight-box a:after {
	content: none;
}

div.highlight-box figure {
	margin: 0;
}

div.highlight-box figure img {
	width: 100% !important;
	margin: 0;
}

div.highlight-box p a {
	display: table-cell;
	padding: 0 10%;
	margin: 0;
	font-weight: bold;
	text-decoration: none;
	vertical-align: middle;
}

html#ie8 div.highlight-box p a {
	padding: 0;
}

div.highlight-box:hover a {
	background: #eaaa00;
	color: #fff;
}

div.highlight-box  {
	padding: 0;
	border: 1px solid #e6e6e6;
	background: #e6e6e6;
	text-align: center;
}

div.highlight-box p{
	display: table;
	width: 100%;
	height: 4em;
	margin: 0;
	vertical-align: middle;	
}

ol.upper-roman {
	margin: 0 3% 1.5em;
	list-style: upper-roman;
}

ol.lower-roman {
	list-style: lower-roman;
}

ol.upper-alpha {
	list-style: upper-alpha;
}

ol.lower-alpha {
	list-style: lower-alpha;
}

ol.number {
	list-style: decimal;
}

#content div.box {
	clear: both;
}

div.box h3 {
	margin-top: 0.2em;
}

div.box p {
	margin-bottom: 0.5em;
}

/* "Post" differences i.e. not used when displaying regular pages */

body.archive  header + p,
body.blog header + p {
	margin: 0;
	color: #333;
	font-family: Helvetica, Arial, sans-serif;
	font-size: 0.875em;
}

article.excerpt header {
	margin: 0 0 0.75em;
}

article.excerpt header h2,
article.excerpt header h3 {
	margin: 0;
}

article header p {
	margin: 0.5em 0 1em;
	font-size: 0.9em;
	line-height: 1.5;
	font-weight: bold;
}

article.excerpt {
	overflow: hidden;
	padding: 1.5em 0 1.25em;
	border-bottom: 1px solid #ccc;
}

header + article.excerpt {
	padding-top: 0;
}

article.excerpt:last-child  {
	border-bottom: none;
}

body.single footer {
	border-top: 1px solid #e1e1e1;
	clear: both;
}

footer p.cat-links {
	padding-top: 1em;
	margin-bottom: 0.25em;
	font-size: 0.75em;
}

footer p.tag-links {
	margin: 0.25em 0 0 0;
	font-size: 0.75em;
}

#nav-single {
	display: table;
	width: 100%;
}

#nav-single h3.assistive-text {
	position: absolute;
	top: 0;
	left: 0;
}

#nav-single span.nav-previous,
#nav-single span.nav-next {
	display: table-cell;
	width: 50%;
	padding: 1.5em 0 1em;
	font-size: 0.875em;
	line-height: 1.4;
}

#nav-single span.nav-next {
	text-align: right;
}

#content p#next-posts {
	float: right;
	width: 50%;
	text-align: right;	
}

#content p#prev-posts {
	float: left;
	width: 50%;
}

#content article.hmc-archive-shortcode h3 {
	clear: none;
	margin: 0 0 0.5em;
	line-height: 1.3;
}

.no-hide {
	margin-top: 1.5em;
}

/*
 *
 * FORMSTACK FORMS - EMBEDDED VIA PLUGIN
 *
 *
*/
#content form.fsForm {
	box-shadow: none;
}

form.fsForm tr {
	background: #fff;
	border: none;
}

table.fsTable td.fsRowBody p {
	text-align: left !important;
}

.fsForm .fsLabel,
table.fsTable p,
table.fsTable p span,
table.fsTable label {
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
	font-size: 0.875em !important;
	font-style: normal !important;
}

form.fsForm .fsCell {
	padding: 0.75em 0 !important;
}

form.fsForm td {
	border-right: 0;
}

form.fsForm input[type="file"] {
	padding: 1em 0;
}

form.fsForm .fsSubmit {
	margin: 0;
	text-align: left;
}

form.fsForm select {
	margin: 0.5em 0;
}

form.fsForm .fsSubmit input.fsSubmitButton {
    -webkit-appearance: none;
    padding: 0.5em;
    border: none;
    background: #F5C930;
    cursor: pointer;
}

.fsFieldRow input[type=text], .fsForm textarea {
	font-size: 1em;
}

.fsSubField,
form.fsForm input[type="text"],
form.fsForm textarea {
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	max-width: 100%;
	width: 100%;
}

.fsSectionRow td.fsRowBody {
	background: none;
}

form.fsForm table tr:first-child {
	border: none;
}

#content a.fsCalendarPickerLink:after {
	content: none;
}

#content form.fsForm h2.fsSectionHeading {
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
	font-size: 1.2em;
	font-weight: bold;
}

#content .fsBody .fsSectionHeader {
	padding: 0.75em 0 1em;
	margin: 0;
}

.fsBody .fsForm input[type=text].fsField,
.fsBody .fsForm input[type=file].fsField,
.fsBody .fsForm input[type=number].fsField,
.fsBody .fsForm input[type=email].fsField,
.fsBody .fsForm input[type=tel].fsField,
.fsBody .fsForm textarea.fsField {
	border: 1px solid #ebebeb;
}

/*
 * Tables
 *
 *
*/

table {
	display: block;
	overflow-x: auto;
	width: 100%;
	margin: 1em 0;
	background: #fff;
	line-height: 1.3;
}

table.one-col {
	width: 33%;
}

table.two-col th[scope="col"]:first-child,
table.two-col th[scope="row"]:first-child {
	width: 35%;
}

table.two-col-even {
	width: 100%;
}
table.two-col-even th[scope="col"]:first-child,
table.two-col-even th[scope="row"]:first-child {
	width: 50%;
}

table.three-col {
	width: 100%;
}

table.three-col th[scope="col"]:first-child {
	width: 33%;
}

table.three-col-even th[scope="col"] {
	width: 33%;
}

table.four-col-even th[scope="col"] {
	width: 25%;
}

table.five-col-even th[scope="col"] {
	width: 20%;
}

table.six-col-even th[scope="col"] {
	width: 16%;
}

table.nine-col-even th[scope="col"] {
	width: 11%;
}

table.ten-col-even th[scope="col"] {
	width: 10%;
}

caption {
	padding-bottom: 0.5em;
	color: #333;
	font-size: 1.1em;
	font-weight: bold;
	text-align: left;
}

table tr:first-child {
	border-top: 1px solid #999;
}

tbody tr:nth-child(odd) {
	background: #ebebeb;
}

th[scope="col"] {
	padding: 0.5em 0.25em;
	border-right: 1px solid #999;
	text-align: left;
	font-weight: bold;
	font-size: 0.9em;
}

th[scope="col"].center {
	text-align: center;
}

th[scope="col"].right {
	text-align: right;
}

th[scope="col"]:last-child {
	border-right: none;
}

th[scope="row"] {
	padding: 0.75em 0.5em;
	border-right: 1px solid #999;
	font-size: 0.8em;
	text-align: left;
	font-weight: bold;
}

th[rowspan],
td[rowspan] {
	background: #fff;
}

tr {
	border-bottom: 1px solid #999;
}

td {
	padding: 0.75em 0.5em;
	border-right: 1px solid #999;
	font-size: 0.875em;
	
}

td:last-child {
	border-right: none;
}

table ul,
table ol,
table p {
	font-size: 1em;
}

/* 
 *
 * RIGHT ASIDE 
 *
*/

#rightSidebar {
	padding: 1em 0 1em;
	border-top: 3px solid #ececec;
	border-bottom: 3px solid #ececec;
}

#rightSidebar div.sidebar-feature {
	padding: 1em;
	border-radius: 0.5em;
	background: #ececec;
}

#rightSidebar div.sidebar-feature h2 {
	font-weight: bold;
	text-transform: uppercase;
}

#rightSidebar article.feature {
	padding: 1em;
	margin-bottom: 1.5em;
	background: #ebebeb;
	color: #fff;
}

#rightSidebar article.feature img,
#rightSidebar  img {
	display: block;
	width: 100%;
	height: auto;
}

#rightSidebar article.feature h2,
#rightSidebar article.feature h3,
#rightSidebar article.feature h4 {
	padding: 0 5% 0;
	margin: 1em 0 0.75em;
	color: #222;
	font-family: Helvetica,Arial,sans-serif;
	font-size: 1em;
	font-weight: bold;	
}

#rightSidebar article.feature p {
	padding: 0 5%;
	color: #222;
	line-height: 1.4;
}

#rightSidebar article.feature ul,
#rightSidebar article.feature ol {
	padding: 0 5% 0 6%;
}

#rightSidebar article.feature li {
	color: #222;
	line-height: 1.4;
}

#rightSidebar article.feature figure {
	margin: 0;
}

#rightSidebar h2{
	margin: 0 0 0.5em 0;
	color: #333;
	font-size: 1.1em;
	font-weight: bold;
	line-height: 1.2;
}

#rightSidebar h3 {
	padding: 0;
	margin: 0 0 0.3em;
	font-size: 1em;
	font-weight: bold;
	line-height: 1.3;
}

#rightSidebar h4 {
	padding: 0;
	margin: 0 0 0.3em;	
	font-size: 0.875em;
}

#rightSidebar ul,
#rightSidebar ol,
#rightSidebar p {
	margin: 0.2em 0 1em;
	font-size: 0.875em;
	line-height: 1.4;
}

#rightSidebar ul {
	margin: 1em 0;
	list-style: square;
}

#rightSidebar .sidebar-feature ul {
	list-style: none;
}

#rightSidebar ol {
	padding-left: 0;
	margin-left: 5%;
	list-style: decimal;
}

#rightSidebar li {
	margin: 0.25em 0 0.25em 1em;
	line-height: 1.4;
}

#rightSidebar .sidebar-feature li {
	margin-left: 0;
}

#rightSidebar li {
	padding-left: 1%;
}

#rightSidebar figure {
	margin: 0 5%;
}

#rightSidebar form {
	margin: 1em 0 2em;
}

#rightSidebar form select {
	width: 100%;
}

#rightSidebar form.loading {
	padding-right: 10%;
	background: url(images/loading.gif) no-repeat right center;	
}

#rightSidebar input[type="submit"].hide-submit {
	display: none;
}

/* Labels for article archive and category choosers */
#rightSidebar form.cat-chooser label ,
#rightSidebar form.archive-chooser label,
#rightSidebar form.author-chooser label {
	position: absolute;
	left: -99999rem;
}

#content ul.large-cta li,
#rightSidebar ul.large-cta li {
	padding: 0;
	margin: 0 0 1em 0;
	list-style: none;
}

ul.large-cta li a {
	display: block;
	padding: 1em;
	border-radius: 0.5em;
	background: #BCBB11;
	color: #000;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	text-transform: uppercase;
}

ul.large-cta li a:hover {
	background: #eaaa00;
	color: #fff;
}


/* Events box in Content */

ul.hmc-events-shortcode {
	overflow: hidden;
	margin: 0;
	list-style: none;
}
	
#content ul.hmc-events-shortcode li,
#rightSidebar ul.hmc-events-shortcode li {
	display: table;
	overflow: hidden;
	width: 100%;
	padding: 0;
	margin: 1em 0;
}

ul.hmc-events-shortcode h3,
#rightSidebar ul.hmc-events-shortcode h3 {
	float: left;
	width: 3em;
	padding: 0.7em 0 0.2em;
	margin: 0 0.875em 0 0;
	background: url(images/cal-icon-bg.png) no-repeat center;
	background-size: 100%;
	color: #000;
	font-size: 1.2em;
	font-weight: bold;
	text-align: center;
	text-transform: uppercase;
	line-height: 1.1;
}

ul.hmc-events-shortcode h3 span {
	display: block;
	font-family: 'Vitesse A', 'Vitesse B';
	font-size: 0.7em;
	font-weight: normal;
}

ul.hmc-events-shortcode li p,
#rightSidebar ul.hmc-events-shortcode li p {
	display: table-cell;
	width: 100%;
	font-size: 1em;
	font-weight: bold;
	vertical-align: middle;
}

ul.hmc-events-shortcode li p a:after {
	content: none;
}

#rightSidebar ul.hmc-events-shortcode p.more {
	font-size: 0.75em;
}

/* 
 *
 * ACADEMIC DEPARTMENTS NAVIGATION 
 *
*/

#departments {
	display: block;
	padding: 1.5em 1em;
	margin: 0 auto 1em;
}

#departments ul {
	max-width: 60em;
	width: 100%;
	padding: 1.5em 1em;
	margin: 0 auto;
}

#departments li {
	height: 3.25em;
	margin: 0 0 1em;
	text-align: center;
	list-style: none;
}

#departments li a{
	display: block;
	overflow: hidden;
	clear: left;
	color: #444;
	text-decoration: none;
 	text-overflow: ellipsis;
 	text-align: left;
 	line-height: 3.25em;
 	white-space: nowrap;
}

#departments li a:before {
	display: block;
	clear: both;
 	float: left;
	height: 48px;
	width: 48px;
	margin: 0 1em 1em auto;
	background: url(images/depts-sprite-new-1.png) top no-repeat;
 	transition: background-image 0.25s;
 	content: "";
} 	

#departments li a[href*="biology"]:before{
	background-position: left 0;
}

#departments li a[href*="chemistry"]:before{
	background-position: -50px 0;
}

#departments li a[href*="cs.hmc"]:before {
	background-position: -100px 0;
}

#departments li a[href*="engineering"]:before {
	background-position: -150px 0;
}

#departments li a[href*="hsa"]:before {
	background-position: -200px 0;
}

#departments li a[href*="math"]:before {
	background-position: -250px 0;
}

#departments li a[href*="physics"]:before {
	background-position: -300px 0;
}

#departments li a:hover {
	color: #147688;
	text-decoration: underline;
}

#departments li a:hover:before {
	background-image: url(images/depts-sprite-new-2.png);
}

@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
    only screen and (-o-min-device-pixel-ratio: 3/2),
    only screen and (min--moz-device-pixel-ratio: 1.5),
    only screen and (min-device-pixel-ratio: 1.5) {
        #departments li a:before {
            background-image: url(images/depts-sprite-new-1@x2.png);
            background-size: auto 48px;
        }
        
        #departments li a:hover:before {
			background-image: url(images/depts-sprite-new-2@x2.png);
            background-size: auto 48px;
		}
}

/*
 *
 * Page Footer
 *
 */
 
#pageFooter {
	clear: both;
	border-top: #cfcfcd 2px solid;
	margin-top: 2em;
	background: #ebebeb;
}

#weather-sm-give {
	overflow: hidden;
	padding: 0.5em 0;
	border-bottom: #cdcdcd solid 1px;	
	margin: 0 auto;
}

#weather-sm-give div {
	overflow: hidden;
	max-width: 60em;
	margin: 0 auto;
}

#weather-sm-give p {
	margin: 0 1em;
	color: #444;
	font-size: 0.9em;
	line-height: 2.2em;
	text-align: center;
	text-transform: uppercase;
}

#weather-sm-give p.footer-button {
	padding: 0 0.5em;
	border-radius: 0.35em;
	background: #BCBB11;
	font-weight: bold;
	line-height: 2.25em;
}

#weather-sm-give p.footer-button a {
	color: #333;
	text-decoration: none;
}

#weather-sm-give p.footer-button:hover {
	background: #eaaa00;
}

#weather-sm-give p.footer-button:hover a {
	color: #fff;
}

@font-face {
    font-family: 'MeteoconsRegular';
    src: url('fonts/weather-fonts/meteocons-webfont.eot');
    src: url('fonts/weather-fonts/meteocons-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/weather-fonts/meteocons-webfont.woff') format('woff'),
         url('fonts/weather-fonts/meteocons-webfont.ttf') format('truetype'),
         url('fonts/weather-fonts/meteocons-webfont.svg#MeteoconsRegular') format('svg');
    font-weight: normal;
    font-style: normal;
}

#weather p:before {
	margin-right: 0.25em;
	font-family: 'MeteoconsRegular';
	font-size: 2em;
	vertical-align: middle;
	content: '';
}

/* Sun: B */
#weather p.icon-32:before,  /* sunny */
#weather p.icon-34:before, 	/* fair (day) */
#weather p.icon-36:before { /* hot */
	content: 'B';
}

/* Moon: C */
#weather p.icon-31:before,	/* clear (night) */
#weather p.icon-33:before { /* fair (night) */
	content: 'C';
}

/* Sun with haze: E */
#weather p.icon-19:before,  /* dust */
#weather p.icon-20:before,  /* foggy */
#weather p.icon-21:before, 	/* haze */
#weather p.icon-22:before { /* smoky */
	content: 'E';
}

/* Wind: F */
#weather p.icon-23:before,  /* blustery */
#weather p.icon-24:before { /* windy */
	content: 'F';
}

/* Part cloud, part sun: H */
#weather p.icon-28:before, 	/* mostly cloudy (day) */
#weather p.icon-30:before {  /* partly cloudy (day) */
	content: 'H';
}

/* Part cloud, part moon: I */
#weather p.icon-27:before, 	/* mostly cloudy (night) */
#weather p.icon-29:before { /* partly cloudy (night) */
	content: 'I';
}

/* Cloud: N */
#weather p.icon-26:before, 	/* cloudy */
#weather p.icon-44:before { /* partly cloudy */
	content: 'N';
}

/* Thunderstorms: P */
#weather p.icon-3:before, /* severe thunderstorms */
#weather p.icon-4:before, /* thunderstorms */
#weather p.icon-37:before, /* isolated thunderstorms */
#weather p.icon-38:before, /* scattered thunderstorms */
#weather p.icon-39:before, /* scattered thunderstorms */
#weather p.icon-45:before { /* thundershowers */
	content: 'P';
}

/* Rain: R */
#weather p.icon-9:before, /* drizzle */
#weather p.icon-11:before, /* showers */
#weather p.icon-12:before, /* showers */
#weather p.icon-40:before { /* scattered showers */
	content: 'R';
}


#pageFooter nav {
	width: 100%;
	border-top: 1px solid #fff;
}

#pageFooter ul#footer-nav {
	max-width: 60em;
	margin: 2em auto;
	text-align: center;	
}

#pageFooter #small-print {
	padding: 0.75em 0 2em;
	background: #000;
	color: #ddd;
	font-size: 0.875em;
	text-align: center;
	line-height: 1.4;
}

#pageFooter p {
	margin-bottom: 0.25em;
	font-size: 0.875em;
}

#small-print p {
	color: #ddd;
}

#pageFooter #small-print a {
	color: #ddd;
	text-decoration: none;
}

#pageFooter #small-print a:after {
	content: none;
}

#pageFooter #small-print a:hover {
	text-decoration: underline;
}

#footer-nav {
	margin-bottom: 1em;
	color: #3E97B2;
	color: #2e6f83;
	text-align: center;
}

#footer-nav li {
	display: inline-block;
	padding: 0 0.5em 0 0.7em;
	text-transform: uppercase;
	line-height: 1;
}

#footer-nav li a {
	display: block;
	color: #3E97B2;
	color: #2e6f83;
	font-size: 0.9em;
	text-decoration: none;
}

#footer-bug {
	width: 7.8125em;
	margin: 1.75rem auto
}

/* Comments form */
#comments label {
	display: block;
}

/* To Top Button */

#toTop {
	position: fixed;
	right: 5%;
    bottom: 3em;
    display: none;
    padding: 0.5em;
    border-radius: 0.25em;
    background: #FEC200;
    font-size: 0.875em;
    opacity: 0.5;
}

#toTop a {
	color: #000;
	font-weight: bold;
	text-decoration: none;
}

.no-touch #toTop:hover {
	cursor: pointer;
	opacity: 1;
}

/* Seal in footer */

img#seal {
	height: 6em;
	margin: 0.5em auto 1em;
}

/*
 *
 * HMC Events plugin
 *
 *
*/

article.hmc-events-shortcode {
	display: table;
	width: 100%;
	margin-bottom: 1em;
}

#rightSidebar h4.date-box,
#content h4.date-box {
	display: table-cell;
	vertical-align: top;
	min-width: 4.5em;
	padding: 0 0 0.5em 0;
	margin: 0;
	color: #f4b803;
	font-size: 0.75em;
}

span.date,
span.month {
	display: block;
	float: left;
	clear: left;
	width: 100%;
	text-align: center;
}

span.date {
	padding-top: 0.25em;
	font-size: 1.5em;
}

span.month {
	color: #444;
	padding-bottom: 0.25em;
	font-weight: bold;
}

#content div.desc-box,
#rightSidebar div.desc-box {
	display: table-cell;
	vertical-align: top;
	width: 75%;
	padding: 0;
	border-left: 1px dotted #ccc;	
}

#content div.desc-box p,
#rightSidebar div.desc-box p{
	padding: 0 0 0 1em;
	margin: 0;
	line-height: 1.4;
}

/* End HMC Events plugin */

/*
 *
 * HMC News Plugin Style
 *
 *
*/

#headline-widget {
	margin: 1em 0;
}

#rightSidebar #headline-widget:first-child {
	margin-top: 0;
}

#content #headline-widget h3,
#rightSidebar #headline-widget h3 {
	margin-bottom: 0.75em;
}

#rightSidebar #headline-widget ul{
	border-top: 2px solid #ebebeb;
	list-style: none;	
}

#rightSidebar #headline-widget li {
	padding: 0.75em 0;
	border-bottom: 1px solid #ebebeb;
	margin: 0;
}

#rightSidebar #headline-widget p {
	margin-bottom: 0.25em;
}

/* Right Sidebar Headlines */

#rightSidebar figure.alignleft {
	float: left;
	max-width: 40%;
	margin-left: 0;
}

#rightSidebar #headline-widget img {
	max-width: 100%;
	margin: 0;
}
#rightSidebar #headline-widget p {
	margin-top: 0;
	font-size: 0.75em;
}

#rightSidebar #headline-widget figure {
	margin: 0 1em 0.5em 0;
}

/* Social Media */

ul.social-media,
#content ul.social-media {
	margin: 1em 0;
	text-align: center;
}

ul.social-media.left {
	text-align: left;
}

ul.social-media li {
	display: inline-block;
	width: 35px;
	height: 35px;
	margin: 0;
	background: url('images/social-media-sprite-aug15-1.png') no-repeat left bottom;
	transition: all 0.2s;
}

#rightSidebar ul.social-media li,
#content ul.social-media li {
	padding: 0;
	margin: 0;	
}

ul.social-media li:hover {
	background: url('images/social-media-sprite-aug15-2.png') no-repeat left bottom;
}

ul.social-media li.twitter {
	background-position: -36px bottom;
}

ul.social-media li.youtube {
	background-position: -72px bottom;
}

ul.social-media li.flickr {
	background-position: -216px bottom;
}

ul.social-media li.linkedin {
	background-position: -108px bottom;
}

ul.social-media li.pinterest {
	background-position: -180px bottom;
}

ul.social-media li.tumblr {
	background-position: -252px bottom;
}

ul.social-media li.instagram {
	background-position: -290px bottom;
}

ul.social-media a{
	display: block;
	height: 100%;
	text-indent: -99999em;
}

/* Lastest tweet box */

div.left-box.twitter-box {
	background: rgb(0,193,213);
	margin: 1em 0;
}

#leftNav div.twitter-box h3 {
	background: url('images/twitter-box-icon.png') no-repeat left center;
	padding-left: 1.5em;
	margin-bottom: 0.5em;
}

.latest-tweet {
	overflow: hidden;
	line-height: 1.4;
}

.latest-tweet ul {
	margin: 0;
	list-style: none;
}

.latest-tweet .interact {
	display: none;
}

#leftNav p.timePosted {
	font-size: 0.875em;
}

#leftNav .twitter-box h3 a {
	color: #333;
}
/* Video page */

/* Page uses http://wordpress.org/plugins/youtube-channel-gallery/ plugin */

div.ytcplayer-fixwidthwrapper {
	margin: 1em 0 2em;
}
div.ytccf {
	margin: 1em 0;
}
div.ytctdescription {
	font-size: 0.875em;
	margin: 1em 0;
}

.ytc-youtubelink {
	display: none;
}

#content div.ytcthumb-cont a {
	border: none;
}
#content #ytc-wrapper a:after {
	content: none;
}

#content #ytc-wrapper a {
	color: #007fa3;
	color: #006783;
	text-decoration: underline;
}

#content h5.ytctitle {
	margin: 0.2em 0 1em;
	font-size: 0.9em;
	line-height: 1.2;
}
#content h5.ytctitle a:after {
	content: none;
}

/* Account creation page */

#content.widecolumn {
	float: none;
	max-width: 60em;
	padding: 2em 2%;
	margin: 0 auto;
	background: #fff;
}


@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
    only screen and (-o-min-device-pixel-ratio: 3/2),
    only screen and (min--moz-device-pixel-ratio: 1.5),
    only screen and (min-device-pixel-ratio: 1.5) {
        ul.social-media li {
            background-image: url('images/social-media-sprite-aug15-1@x2.png');
            background-size: auto 35px;
        }
        
        ul.social-media li:hover {
			background-image: url('images/social-media-sprite-aug15-2@x2.png');
            background-size: auto 35px;
		}
		
		#leftNav div.twitter-box h3 {
			background: url('images/twitter-box-icon@x2.png') no-repeat left center;
			background-size: auto 100%;
		}
}
