article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{
	display:block
}
audio,canvas,video{
	*zoom:1;
	display:inline-block;
	*display:inline
}
audio:not([controls]){
	display:none;
	height:0
}
[hidden]{
	display:none
}
html{
	-ms-text-size-adjust:100%;
	-webkit-text-size-adjust:100%;
	font-size:100%
}
button,html,input,select,textarea{
	font-family:sans-serif
}
body{
	margin:0
}
a:active,a:focus,a:hover{
	outline:0
}
h1{
	font-size:2em;
	margin:.67em 0
}
h2{
	font-size:1.5em;
	margin:.83em 0
}
h3{
	font-size:1.17em;
	margin:1em 0
}
h4{
	margin:1.33em 0
}
h5{
	font-size:.83em;
	margin:1.67em 0
}
h6{
	font-size:.67em;
	margin:2.33em 0
}
abbr[title]{
	border-bottom:1px dotted
}
blockquote{
	margin:1em 40px
}
address,dfn{
	font-style:italic
}
hr{
	-moz-box-sizing:content-box;
	box-sizing:content-box;
	height:0
}
mark{
	background:#ff0;
	color:#000
}
p,pre{
	margin:1em 0
}
code,kbd,pre,samp{
	font-family:monospace,serif;
	_font-family:courier new,monospace;
	font-size:1em
}
pre{
	word-wrap:break-word;
	white-space:pre;
	white-space:pre-wrap
}
q{
	quotes:none
}
q:after,q:before{
	content:"";
	content:none
}
small{
	font-size:80%
}
sub,sup{
	font-size:75%;
	line-height:0;
	position:relative;
	vertical-align:baseline
}
sup{
	top:-.5em
}
sub{
	bottom:-.25em
}
dl,menu,ol,ul{
	margin:0 0 0 1px
}
dd{
	margin:0 0 0 1em
}
menu,ol,ul{
	list-style-position:inside;
	padding:1em 0
}
nav ol,nav ul{
	list-style:none;
	list-style-image:none
}
img{
	-ms-interpolation-mode:bicubic;
	border:0
}
svg:not(:root){
	overflow:hidden
}
figure,form{
	margin:0
}
fieldset{
	border:1px solid silver;
	margin:0 2px;
	padding:.35em .625em .75em
}
legend{
	border:0;
	*margin-left:-7px;
	padding:0;
	white-space:normal
}
button,input,select,textarea{
	font-size:100%;
	margin:0;
	vertical-align:baseline;
	*vertical-align:middle
}
button,input{
	line-height:normal
}
button,select{
	text-transform:none
}
button,html input[type=button],input[type=reset],input[type=submit]{
	-webkit-appearance:button;
	cursor:pointer;
	*overflow:visible
}
button[disabled],html input[disabled]{
	cursor:default
}
input[type=checkbox],input[type=radio]{
	box-sizing:border-box;
	*height:13px;
	padding:0;
	*width:13px
}
input[type=search]{
	-webkit-appearance:textfield;
	-moz-box-sizing:content-box;
	-webkit-box-sizing:content-box;
	box-sizing:content-box
}
input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{
	-webkit-appearance:none
}
button::-moz-focus-inner,input::-moz-focus-inner{
	border:0;
	padding:0
}
textarea{
	vertical-align:top
}
table{
	border-collapse:collapse;
	border-spacing:0
}
body,html{
	height:100%
}
button,html,input,select,textarea{
	color:#4d5051;
	font-family:Roboto,Helvetica,sans-serif;
	font-size:1em
}
body{
	word-wrap:break-word;
	background-color:#fff;
	font-size:1em;
	font-weight:400;
	line-height:1.35em;
	margin:0 auto;
	position:relative
}
fieldset{
	border:0;
	margin:0;
	padding:0
}
.chromeframe{
	background:#ccc;
	color:#000;
	margin:.2em 0;
	padding:.2em 0
}
p,pre{
	margin:0;
	padding:.5em 0
}
ul{
	list-style-type:circle
}
ol{
	list-style-type:decimal
}
ol ol{
	list-style-type:lower-alpha
}
ol ol ol{
	list-style-type:lower-roman
}
ol ol ol ol{
	list-style-type:decimal
}
ol ol ol ol ol{
	list-style-type:lower-alpha
}
ol ol ol ol ol ol{
	list-style-type:lower-roman
}
ul li{
	list-style-position:outside;
	margin-left:1.15em
}
ol li:nth-child(1n+10),ol ol ol ol li:nth-child(1n+10){
	margin-left:1.95em
}
ol li:nth-child(1n+100),ol ol ol ol li:nth-child(1n+100){
	margin-left:2.45em
}
ol ol li,ol ol li:nth-child(1n+10),ol ol li:nth-child(1n+100),ol ol ol ol ol li:nth-child(1n+10),ol ol ol ol ol li:nth-child(1n+100){
	margin-left:1.35em
}
ol li,ol ul li:nth-child(1n+10){
	list-style-position:outside;
	margin-left:1.35em
}
.events li,footer li,li,nav li{
	margin:0
}
li{
	line-height:1.65em;
	padding:.5em 0
}
div>ol:first-child,div>ul:first-child{
	padding-top:0
}
ol ol:last-child,ol ul:last-child,ul ol:last-child,ul ul:last-child{
	padding-bottom:0
}
li:first-child{
	padding-top:0
}
li:last-child{
	padding-bottom:0
}
li p{
	padding:0
}
img{
	height:auto;
	max-width:100%;
	vertical-align:middle
}
#content a:focus img{
	outline:1px dotted
}
b,strong{
	font-weight:700;
	letter-spacing:.025em
}
mark{
	color:inherit;
	padding:0 .125em
}
.invert mark{
	color:#4d5051
}
hr{
	border:0;
	border-top:1px solid rgba(0,0,0,.2);
	clear:both;
	display:block;
	height:1px;
	margin:1em 0;
	max-width:100%!important;
	padding:0
}
.invert hr{
	border-color:hsla(0,0%,100%,.5)
}
table{
	border:0;
	clear:both;
	display:block;
	font-size:90%;
	margin:1em 0;
	max-width:100%;
	overflow:auto;
	text-align:left
}
.sidebar table{
	font-size:100%
}
table.alt tr:nth-child(2n),table.alternate tr:nth-child(2n),tr.alternateRow{
	background-color:rgba(0,0,0,.1)
}
td,th{
	border:1px solid #ccc;
	padding:.35em .5em;
	vertical-align:top
}
th{
	color:#4d5051
}
td{
	min-height:1em;
	min-width:1em
}
nav ul,nav ul ul{
	list-style:none;
	margin:0;
	padding:0
}
iframe{
	border:none
}
.h1,.h2,h1,h2,h3,h4,h5,h6{
	word-wrap:normal;
	clear:both;
	color:#4d5051;
	font-size:1em;
	font-weight:700;
	line-height:1.35em;
	margin:0;
	padding:1em 0
}
.h1 strong,.h2 strong,h1 strong,h2 strong,h3 strong,h4 strong,h5 strong,h6 strong{
	font-weight:inherit;
	letter-spacing:inherit
}
.h1,h1{
	font-size:2.35em;
	font-weight:300
}
.content .sidebar div .h1,.content .sidebar div h1{
	font-size:2em
}
.h2,.sidebar .blockquote,.sidebar blockquote,h2{
	font-size:1.5em;
	font-weight:300
}
b .h1,b .h2,b h1,b h2,h1 b,h1 strong,h2 b,h2 strong,strong .h1,strong .h2,strong h1,strong h2{
	font-weight:300
}
h3{
	font-size:1.15em;
	font-weight:700;
	line-height:1.5em;
	text-transform:none
}
h4{
	font-size:1em;
	letter-spacing:.025em;
	text-transform:uppercase
}
h5,h6{
	line-height:1.65em
}
.h1+.h2,.h1+h2,.h2+h3,h1+.h2,h1+h2,h2+h3{
	clear:none;
	letter-spacing:0;
	margin-top:-.5em;
	text-transform:inherit
}
.h1+.h2,.h1+h2,h1+.h2,h1+h2{
	font-weight:300;
	margin-top:-1.35em
}
.h1+p,.h2+p,h1+p,h2+p{
	padding-top:.65em
}
ol+.h1,ol+.h2,ol+h1,ol+h2,ol+h3,ol+h4,ol+h5,ol+h6,p+.h1,p+.h2,p+h1,p+h2,p+h3,p+h4,p+h5,p+h6,ul+.h1,ul+.h2,ul+h1,ul+h2,ul+h3,ul+h4,ul+h5,ul+h6{
	margin-top:1em
}
.rule-bottom+p,address,p,pre{
	line-height:1.65em;
	padding:1em 0
}
.content>:last-child,.grid p:last-child,.sidebar p:last-child,address:last-child,h1:last-child,h2:last-child,pre:last-child{
	padding-bottom:0
}
.blockquote,blockquote{
	word-wrap:normal;
	border-left:1px solid rgba(0,0,0,.15);
	clear:both;
	color:#4d5051;
	display:block;
	font-size:2.35em;
	font-weight:300;
	line-height:1.35em;
	margin:.5em 0;
	padding-left:1em;
	position:relative;
	z-index:5
}
.blockquote+.blockquote,.blockquote+blockquote,blockquote+.blockquote,blockquote+blockquote{
	margin-top:-.5em
}
.invert .blockquote,.invert blockquote{
	border-left:1px solid hsla(0,0%,100%,.5);
	color:hsla(0,0%,100%,.85)
}
.blockquote:last-child,blockquote:last-child,table:last-child{
	margin-bottom:0
}
.h1+.floatleft+p,.h1+.floatright+p,.h1+address,.h1+p,.h1+pre,.h1:first-child,.h2+.floatleft+p,.h2+.floatright+p,.h2+address,.h2+pre,.h2:first-child,address:first-child,h1+.floatleft+p,h1+.floatright+p,h1+address,h1+p,h1+pre,h1:first-child,h2+.floatleft+p,h2+.floatright+p,h2+address,h2+pre,h2:first-child,h3+.floatleft+p,h3+.floatright+p,h3+address,h3+pre,h3:first-child,h4:first-child,h5:first-child,h6:first-child,img.floatleft~.h1,img.floatleft~.h2,img.floatleft~h1,img.floatleft~h2,img.floatleft~h3,img.floatleft~h4,img.floatleft~h5,img.floatleft~h6,img.floatleft~p,p:first-child,pre:first-child{
	padding-top:0
}
.h1+ol .h2+ul,.h1+ul,.h2+ol,h1+ol h2+ul,h1+ul,h2+ol,h3+ol,h3+ul{
	margin-top:-.35em
}
.h1+ol,.h1+ul,h1+ol,h1+ul{
	padding-top:0
}
div:not(.hero) .small,small{
	font-size:90%;
	letter-spacing:.025em;
	line-height:1em
}
.sitetitle{
	word-wrap:normal;
	color:#4d5051;
	display:block;
	font-size:2.35em;
	font-weight:300;
	margin:0;
	padding:1em 0
}
#sitename .sitetitle{
	clear:none;
	font-size:3em;
	line-height:1.15em;
	transition:font-size .3s ease,height .3s ease,opacity .3s ease,padding .3s ease
}
.sitetitle:first-child{
	padding-top:0
}
.sitetitle:last-child{
	padding-bottom:0
}
button.tingle-modal__close{
	display:none
}
button.tingle-modal--close-btn{
	background-color:transparent;
	border:0;
	color:#6d6e71;
	font-size:2rem;
	height:2.2rem;
	padding:0;
	position:absolute;
	right:8px;
	top:8px;
	width:2.2rem
}
button.tingle-modal--close-btn:focus-visible,button.tingle-modal--close-btn:hover{
	background-color:#fff;
	color:#c41230
}
.tingle-modal-box .tingle-modal-box__footer{
	background:0;
	border:0;
	display:inline;
	height:0;
	padding:0;
	width:0
}
.breadcrumbs,.content,.grid,.hero .caption,.hero>.text,.roof,header nav,header>div{
	padding:2em 9%;
	width:auto
}
.menu-on .breadcrumbs,.menu-on .content,.menu-on .grid,.menu-on .hero .caption,.menu-on .hero>.text,.menu-on .roof,.menu-on header nav,.menu-on header>div{
	padding-left:2%;
	padding-right:2%
}
#container>header.float{
	background-color:hsla(0,0%,100%,.9);
	position:absolute;
	top:0;
	width:100%;
	z-index:10
}
.roof{
	border-bottom:1px solid rgba(0,0,0,.2);
	font-size:90%;
	line-height:0;
	padding-bottom:0;
	padding-top:0;
	z-index:20
}
.roof>div{
	align-content:stretch;
	align-items:stretch;
	display:flex;
	flex-flow:row nowrap;
	justify-content:flex-start;
	position:relative
}
.float .roof>div{
	border-bottom:1px solid rgba(0,0,0,.2)
}
.float .roof,.float .roof.invert>div,.roof.invert{
	border-bottom:0
}
#container>header a,#container>header a:focus,#container>header a:hover,.roof a,.roof a:focus,.roof a:hover,.roof.invert a{
	border-bottom-color:transparent
}
.roof a.wordmark,.roof form{
	display:inline-block;
	flex:0 1 auto;
	width:25%
}
body:not(.ie) .roof a.wordmark{
	background:url(../images/cmu-wordmark.png) no-repeat 0 scroll transparent;
	background-size:contain
}
body:not(.ie) .roof.invert .wordmark{
	background:url(../images/cmu-wordmark-white.png) no-repeat 0 scroll transparent;
	background-size:contain
}
body.ie .roof a.wordmark{
	background:url(../images/cmu-wordmark-small.png) no-repeat 0 scroll transparent;
	background-size:contain
}
body.ie .roof.invert .wordmark{
	background:url(../images/cmu-wordmark-white-small.png) no-repeat 0 scroll transparent;
	background-size:contain
}
.roof a.wordmark{
	border-bottom:0;
	margin:1em 0 .65em;
	min-height:2.15em;
	min-width:300px;
	text-indent:-9999px;
	width:31.333%
}
.roof.invert .wordmark{
	margin:6px 0 2px;
	width:25%
}
#skipnav{
	height:1px;
	left:-10000px;
	overflow:hidden;
	position:absolute;
	top:auto;
	width:1px
}
.roof form{
	align-content:stretch;
	align-items:stretch;
	display:flex;
	flex-flow:row nowrap;
	height:calc(100% - 1.6em);
	justify-content:flex-start;
	max-width:300px;
	padding:.8em 0;
	position:absolute;
	right:0;
	top:0
}
.roof.invert form{
	height:100%;
	padding:0
}
.roof .menu-btn+form{
	right:3em
}
.search label{
	height:100%;
	width:100%
}
.search label.searchSite,.search label:not(.searchSite) span{
	display:none
}
.roof label.searchSite{
	display:none;
	left:-105%;
	letter-spacing:.025em;
	position:absolute;
	text-align:right;
	top:30%
}
.roof.invert label.searchSite{
	top:20%
}
.roof input[type=checkbox]{
	margin:0;
	vertical-align:baseline
}
.search label.searchSite span{
	float:right;
	font-size:90%;
	margin:1px 0 0 .5em
}
.roof input[placeholder=Search]{
	background-color:rgba(0,0,0,.2);
	border:0;
	color:#fff;
	flex:0 1 auto;
	height:100%;
	margin:0;
	padding:0 30px 0 8px;
	width:calc(100% - 38px)
}
.roof input[placeholder=Search]:focus{
	background-color:rgba(0,0,0,.5);
	outline:0 none
}
.roof input[placeholder=Search]:-webkit-autofill{
	-webkit-box-shadow:inset 0 0 0 1000px #999;
	box-shadow:inset 0 0 0 1000px #999
}
.roof input::-webkit-input-placeholder{
	color:#fff
}
.roof input:-moz-placeholder,.roof input::-moz-placeholder{
	color:#fff;
	opacity:1
}
.roof input:-ms-input-placeholder{
	color:#fff
}
.search button{
	background:url(../images/icon-magnify.png) scroll no-repeat transparent 50% 50%;
	background-size:50%;
	border:0;
	display:block;
	height:calc(100% - 1.6em);
	margin:.8em 0;
	padding:0 14px;
	position:absolute;
	right:0;
	text-indent:-9999px;
	top:0;
	width:auto
}
.roof.invert .search button{
	height:100%;
	margin:0
}
.search button:focus,.search button:hover{
	border:0;
	outline:0 none
}
.search button:hover{
	background-color:inherit
}
body:not(.mobile) #sitename{
	display:block!important
}
#sitename a,#sitename div{
	display:inline-block;
	vertical-align:middle
}
#sitename,#sitename a{
	border:0;
	box-sizing:border-box;
	color:#333;
	padding-bottom:0;
	padding-top:0
}
#sitename{
	padding-bottom:.5em;
	padding-top:.5em
}
#sitename a:focus,#sitename a:hover{
	color:#c00
}
#sitename>div{
	padding-right:2%;
	width:66.666%
}
#sitename>a{
	max-width:31.333%;
	padding:.5em 0 0;
	text-align:right;
	width:100%
}
#sitename img{
	max-height:150px
}
#sitename h1,#sitename h2{
	clear:none
}
#sitename h1{
	font-size:3em;
	line-height:1.15em
}
#sitename h2{
	color:inherit;
	font-style:normal;
	margin-top:-1.5em;
	padding-top:0
}
#sitename h2 a{
	vertical-align:inherit
}
header nav{
	clear:both;
	overflow:hidden;
	padding-bottom:0;
	padding-top:0;
	position:relative
}
#sitename+nav{
	padding-top:.65em
}
#sitename+nav ul li{
	padding-top:.15em
}
header nav ul{
	clear:both;
	display:flex;
	flex-flow:row nowrap
}
header li,header li:first-child,header li:last-child{
	align-items:center;
	border-color:rgba(0,0,0,.2);
	border-bottom:1px solid rgba(0,0,0,.2);
	border-left:1px solid rgba(0,0,0,.2);
	clear:both;
	display:flex;
	flex:1 1 auto;
	padding:.5em .35em;
	text-align:center
}
nav.b li{
	border-bottom:none
}
header li a,header li a:visited{
	color:rgba(0,0,0,.65);
	display:block;
	font-size:80%;
	font-weight:700;
	line-height:1.35em;
	margin:.15em 0;
	text-align:center;
	width:100%
}
header li:first-child{
	border-left-color:transparent;
	padding-left:0
}
header li:last-child{
	padding-right:0
}
header li a:focus,header li a:hover,header li.active>a,header li.ancestor>a{
	color:#c00
}
header li.active,header li.ancestor{
	border-bottom-color:transparent
}
.menu-btn{
	color:#4d5051;
	display:block;
	float:right;
	font-size:2.5em;
	line-height:.85em;
	margin-top:13px;
	position:absolute;
	right:0;
	top:0;
	transition:right .2s linear
}
div.invert .menu-btn{
	margin-top:5px
}
.menu-on .menu-btn{
	color:#ddd;
	font-size:2em;
	position:fixed;
	right:11px
}
nav.tree .menu-btn,nav.tree form{
	display:none
}
.menu-btn:focus,.menu-btn:hover,.menu-btn:visited{
	color:inherit
}
.menu-btn:focus,.menu-btn:hover{
	color:#c00;
	transition-delay:-1s
}
.menu-on .menu-btn:focus,.menu-on .menu-btn:hover{
	color:#fff
}
.menu-on .roof form{
	right:0
}
.menu-btn b{
	display:block;
	font-weight:400;
	line-height:7px;
	transition:none!important
}
.invert .menu-btn,.invert .menu-btn:focus,.invert .menu-btn:hover{
	color:#fff!important;
	text-shadow:none!important
}
#container{
	position:relative;
	transition:width .3s ease;
	width:100%;
	z-index:100
}
#overlay{
	background-color:transparent;
	height:100vh;
	left:0;
	position:fixed;
	top:0;
	transition:background-color .3s ease;
	width:100%;
	z-index:99
}
.menu-on #container{
	z-index:101
}
.menu-on #campusAlert,.menu-on #container{
	width:calc(100% - 300px)
}
.menu-on footer{
	border-right:1px solid hsla(0,0%,100%,.15)
}
nav.tree{
	background-color:#333!important;
	box-sizing:border-box;
	height:100%;
	opacity:0;
	overflow:hidden;
	padding-top:3.25em;
	position:fixed;
	right:-320px;
	top:0;
	transition:right .2s ease;
	width:300px;
	z-index:100
}
nav.tree:focus{
	outline:none
}
.menu-on>nav.tree{
	opacity:1;
	right:0
}
nav.tree h1{
	font-size:1.5em;
	padding:0 1em .35em
}
.no-js footer nav li.active>a,.no-js footer nav li>a:focus,.no-js footer nav li>a:hover,nav.tree li.active:not(.ancestor):not(.arrow)>a,nav.tree li>a:focus:not(.arrow),nav.tree li>a:hover:not(.arrow){
	background-color:#4d5051
}
nav div>ul>.active.parent,nav div>ul>.ancestor{
	background-color:hsla(0,0%,100%,.1)
}
nav a{
	border:none!important;
	display:block;
	transition:background-color .1s ease
}
.nav nav li ul{
	display:none
}
.no-js .nav nav li ul{
	display:block
}
.nav nav li li a,footer nav li a,nav.tree li a{
	line-height:1.5em;
	padding:.5em 2em;
	padding-bottom:.5em!important
}
footer nav li a{
	margin-left:-1em
}
.nav nav li li li a,footer nav li li a,nav.tree li li a{
	padding-left:3em
}
.nav nav li li li a,footer nav li li li a,nav.tree li li li a{
	padding-left:4.5em
}
.nav nav li li li li a,footer nav li li li li a,nav.tree li li li li a{
	padding-left:6em
}
.nav nav li li li li li a,footer nav li li li li li a,nav.tree li li li li li a{
	padding-left:7.5em
}
.nav nav li li li li li li a,footer nav li li li li li li a,nav.tree li li li li li li a{
	padding-left:9em
}
footer nav li li li li li li li a,nav.tree li li li li li li li a{
	padding-left:10.5em
}
nav.tree li a{
	padding-right:220px
}
footer nav>ul>li>a,nav.tree div>ul>li>a:not(.arrow){
	font-weight:700
}
nav.tree li:not(.ancestor):not(.active)>ul{
	display:none
}
nav.tree div{
	overflow:hidden;
	position:relative
}
nav.tree div>ul{
	border-top:1px solid hsla(0,0%,100%,.15);
	font-size:85%;
	overflow:auto;
	position:relative;
	width:500px
}
nav.tree ul{
	display:block
}
nav.tree div>ul>li:last-child{
	margin-bottom:2em
}
nav.tree ul li,nav.tree ul li ul li{
	padding:0
}
.grid.nav nav h1{
	font-size:100%;
	text-transform:none
}
nav.tree div>ul>li:not(.secondary)>a{
	letter-spacing:.05em
}
nav.tree div>ul>li,nav.tree div>ul>li.active{
	border-bottom:1px solid hsla(0,0%,100%,.15)
}
nav.tree div>ul>li.secondary{
	border:none;
	transition:padding-top .3s ease
}
nav.tree div>ul>li.secondary>a:not(.arrow){
	font-weight:400
}
nav a{
	-webkit-tap-highlight-color:transparent
}
nav.tree li.parent{
	overflow:hidden;
	position:relative
}
nav.tree a.arrow{
	background-color:transparent!important;
	box-sizing:border-box;
	display:block;
	font-size:200%;
	height:40px;
	left:260px;
	padding:0;
	position:absolute;
	top:0;
	transition:color .3s ease,transform .2s ease;
	width:40px
}
nav.tree a.arrow:after{
	content:"\203a";
	display:block;
	left:20px;
	line-height:0;
	position:absolute;
	text-indent:0;
	top:14px;
	transition:left .2s ease
}
nav.tree .expand>a.arrow{
	transform:rotate(90deg)
}
nav.tree .expand>a.arrow:after{
	left:13px
}
nav.tree .scrolldown{
	color:#4d5051!important;
	opacity:0;
	transition:opacity .3s ease
}
nav.tree .scrolldown:focus,nav.tree .scrolldown:hover{
	background-color:#fff;
	color:#4d5051!important;
	text-shadow:none
}
nav.tree div.bottom .scrolldown,nav.tree div.top .scrolldown.up{
	opacity:0;
	z-index:0
}
nav.tree div.bottom .scrolldown.up,nav.tree div.middle .scrolldown,nav.tree div.top .scrolldown{
	opacity:1;
	z-index:1
}
.scrolldown.up{
	transform:rotate(180deg)
}
.breadcrumbs{
	font-size:80%;
	letter-spacing:.025em;
	padding-bottom:3em
}
.breadcrumbs+div.boxes:not(.grey):not(.darkgrey):not(.red):not(.gold.invert):not(.teal):not(.blue):not(.green):not(.darkgreen),.breadcrumbs+div.content:not(.grey){
	padding-top:0
}
#content>div,form,table{
	line-height:1.65em
}
#content>div:after{
	clear:both;
	content:" ";
	display:block
}
.scrolltop.btn{
	border-bottom:5px solid transparent;
	bottom:2vw;
	font-size:2em;
	height:40px;
	margin:0;
	padding:0;
	position:fixed;
	right:calc(-2vw - 40px);
	text-align:center;
	width:40px;
	z-index:100
}
.scrolltop.on{
	right:2vw
}
#content>div.content:first-child,#content>div.grid:first-child:not(.invert){
	padding-top:3em
}
header.float+#content{
	height:100vh
}
[id*=kaltura_player_]{
	aspect-ratio:16/9;
	height:auto!important;
	width:auto!important
}
#content .hero,#content>.js-flickityCustom:first-child{
	background-color:#000;
	background-position:50%;
	background-repeat:no-repeat;
	background-size:cover;
	height:49.5vw;
	overflow:hidden;
	position:relative;
	z-index:1
}
header.float+#content .hero,header.float+#content>.js-flickityCustom:first-child{
	background-position:center 0;
	height:75vh;
	min-height:500px
}
.tall .flickity-viewport,header.float+#content .tall,header.float+#content .tall .hero,header.float+#content>.js-flickityCustom.tall:first-child{
	height:100vh;
	max-height:1500px
}
.scrolldown{
	background-color:hsla(0,0%,100%,.75);
	border:0;
	bottom:0;
	color:#4d506d;
	font-size:250%;
	left:calc(50% - 25px);
	padding:0 10px 5px;
	position:absolute;
	z-index:20
}
.scrolldown:focus,.scrolldown:hover{
	background-color:#fff;
	color:#333
}
.scrolldown.up{
	bottom:auto;
	top:0
}
nav .scrolldown{
	background-color:hsla(0,0%,100%,.75);
	border:0;
	bottom:0;
	color:#4d506d;
	font-size:200%;
	left:calc(50% - 25px);
	padding:0 .25em .15em;
	position:absolute;
	transform-origin:center;
	z-index:20
}
#content .hero .text{
	align-content:center;
	align-items:center;
	bottom:0;
	box-sizing:border-box;
	color:#fff;
	display:flex;
	flex-flow:row wrap;
	position:absolute;
	text-align:center;
	text-shadow:0 0 1em #000;
	width:100%;
	z-index:10
}
header.float+#content .hero .text{
	bottom:8%
}
header:not(.float)+#content .hero>div.text{
	height:100%
}
.tubular{
	--hero-iframe-height:154%;
	--hero-youtube-hide-title-bottom:calc((100% - var(--hero-iframe-height))*0.5);
	--sidenav-width:0px;
	--vid-height-ratio:0.5625;
	position:relative
}
.menu-on header+#content #tubular-container,.menu-on header+#content .tubular{
	--sidenav-width:300px
}
header:not(.float)+#content #tubular-container,header:not(.float)+#content .tubular{
	--non-float-height:calc(100vw*var(--vid-height-ratio));
	height:75vh;
	height:calc(var(--non-float-height) - var(--sidenav-width)*var(--vid-height-ratio));
	width:calc(var(--non-float-height)/var(--vid-height-ratio) - var(--sidenav-width) + 4px)
}
.menu-on header:not(.float)+#content .tubular,header:not(.float)+#content .tubular{
	width:100%
}
header:not(.float)+#content #tubular-player{
	bottom:var(--hero-youtube-hide-title-bottom);
	height:var(--hero-iframe-height);
	left:0
}
header.float+#content #tubular-container{
	--hero-height:75vh;
	height:100vh;
	min-width:100%;
	width:calc(100vh/var(--vid-height-ratio))
}
header.float+#content .tall #tubular-container{
	--hero-height:100vh
}
#content .tubular{
	height:auto;
	height:var(--hero-height)
}
.ie #tubular-container{
	display:none!important
}
#tubular-container{
	overflow:hidden
}
#tubular-player{
	--hero-container-width-overflow:calc(100% - 100vw);
	--hero-container-height:100%;
	--hero-iframe-height-overflow:calc(var(--hero-container-height) - var(--hero-iframe-height));
	--convert-negative-percentage:calc(var(--hero-iframe-height-overflow) + var(--hero-container-height)*2);
	--hero-viewport-height-overflow:calc(var(--convert-negative-percentage) - 100vh);
	bottom:calc((var(--hero-viewport-height-overflow) - var(--hero-height))*.5);
	height:var(--hero-iframe-height);
	max-width:none;
	min-height:calc(100vw*var(--vid-height-ratio));
	position:absolute;
	right:calc((var(--hero-container-width-overflow) + var(--sidenav-width))*.5);
	transition:right .3s ease;
	width:101%
}
@media only screen and (min-width:1700px){
	.menu-on header+#content #tubular-container,.menu-on header+#content .tubular{
		--sidenav-width:450px
	}
}
#tubular-shield{
	height:100%;
	left:0;
	position:absolute;
	top:0;
	width:100%;
	z-index:2
}
:root{
	--focus-state-text-color:#fff;
	--focus-state-bg-color:#c41230
}
#pause-play-toggle-button{
	display:none
}
@media screen and (min-width:960px){
	#pause-play-toggle-button{
		--pause-button-size:2.5rem;
		--container-padding:8vw;
		fill:#c41230;
		background-color:red;
		background-color:hsla(0,0%,100%,.95);
		border:0;
		bottom:-16px;
		cursor:pointer;
		height:var(--pause-button-size);
		left:calc(100vw - var(--container-padding) - var(--pause-button-size) - var(--sidenav-width));
		line-height:0;
		padding:.75rem .65rem .65rem;
		position:absolute;
		width:var(--pause-button-size);
		z-index:11
	}
	#pause-play-toggle-button:active,#pause-play-toggle-button:focus-visible,#pause-play-toggle-button:focus-visible:hover{
		fill:var(--focus-state-text-color)!important;
		background-color:var(--focus-state-bg-color)!important;
		border-color:transparent!important;
		color:var(--focus-state-text-color)!important;
		outline:3px solid var(--focus-state-bg-color)!important;
		outline-offset:0;
		overflow:hidden;
		text-shadow:none
	}
	#tubular-container+#pause-play-toggle-button,iframe+#pause-play-toggle-button{
		display:block
	}
}
.tubular-pause path{
	transform:skew(-64deg,27deg) scale(3) translateX(-67%)
}
.icon-pause{
	height:100%;
	transition:margin-left .2s ease;
	width:100%
}
#content .hero>div.text h1,#content .hero>div.text h2{
	color:#fff;
	flex:0 0 100%;
	padding:0
}
#content .hero>div.text h1{
	font-size:3em
}
#content .hero>div.text h2{
	padding-top:1.5em
}
#content .hero .box{
	background-color:hsla(0,0%,100%,.9);
	border-bottom-color:transparent;
	bottom:3.5em;
	color:#4d5051;
	padding:.65em 1em;
	position:absolute;
	width:calc(41% - 2em);
	z-index:10
}
#content .hero .small{
	width:calc(33.333% - 2em)
}
#content .hero .large{
	width:calc(66.666% - 2em)
}
#content .tall .box{
	bottom:20%
}
#content .hero .box.right{
	right:9%
}
#content .hero .box.left{
	left:9%
}
.menu-on #content .hero .box.right{
	right:2%
}
.menu-on #content .hero .box.left{
	left:2%
}
#content .hero .box h1{
	border-bottom-color:transparent;
	line-height:1.25em;
	margin:0;
	padding:0
}
#content .hero .box p{
	margin:0;
	padding:.65em 0 0
}
#content .hero a.box:focus,#content .hero a.box:hover{
	background-color:#fff
}
#content .hero a.box:focus h1,#content .hero a.box:hover h1{
	color:#c00
}
#content .hero caption,.hero .caption{
	background-color:hsla(0,0%,100%,.9);
	bottom:8%;
	box-sizing:border-box;
	display:block;
	font-size:80%;
	font-style:italic;
	left:0;
	padding:.5em 1em .35em 9%;
	position:absolute;
	width:50%;
	z-index:50
}
.grid{
	align-content:stretch;
	align-items:stretch;
	display:flex;
	flex-flow:row wrap
}
.grid>h1{
	flex:0 0 100%;
	padding-bottom:.5em;
	z-index:2
}
.grid>div{
	display:inline-block;
	overflow:hidden;
	padding-bottom:1.5em;
	padding-right:2%;
	padding-top:1.5em;
	position:relative;
	vertical-align:top
}
.column2>div{
	width:48%
}
.column3>div{
	width:31.333%
}
.column4>div{
	width:23%
}
.breadcrumbs+.grid{
	padding-top:0
}
div.photo{
	background-color:#000;
	height:100%;
	margin:1.5em 2% 1.5em 0;
	min-height:100px;
	overflow:hidden;
	padding:0!important
}
.photos div.photo{
	margin:0
}
.column2.photos div.photo{
	flex:0 1 50%
}
.column3.photos div.photo{
	flex:0 1 33.333%
}
.column4.photos div.photo{
	flex:0 1 25%
}
.grid.photos>div div,.grid>div.photo div{
	background:linear-gradient(transparent,rgba(0,0,0,.65),#000);
	bottom:0;
	padding:1em 1em .65em;
	position:absolute;
	width:calc(100% - 2em + 1px);
	z-index:1
}
.invert .photo a,.photo a,.photo a:focus,.photo a:hover{
	border-color:transparent;
	border:0!important;
	color:#fff
}
.grid>div.photo>a:focus h2,.grid>div.photo>a:hover h2{
	color:#fff
}
.grid>div.photo>a:focus span,.grid>div.photo>a:hover span{
	opacity:.5;
	position:relative;
	z-index:0
}
.grid>div.photo div h2,.grid>div.photo div p{
	border:0;
	color:#fff;
	line-height:1.5em;
	padding:0;
	position:relative;
	z-index:1
}
.grid div.photo img{
	max-width:100%;
	width:100%
}
.events ul{
	list-style:none;
	margin:0;
	padding:0
}
.events li{
	padding:0;
	position:relative
}
.events ul li a,.events ul li i{
	border-bottom-color:transparent;
	display:block;
	font-size:90%;
	font-style:normal;
	font-weight:400;
	line-height:1.5em;
	margin-bottom:1em;
	min-height:4.15em;
	padding:.25em .25em .25em 85px;
	text-transform:none;
	width:auto
}
.events ul li a:focus,.events ul li a:hover{
	background-color:rgba(0,0,0,.1)
}
.invert .events ul li a:focus,.invert .events ul li a:hover{
	background-color:rgba(0,0,0,.5)
}
.events ul li a:after{
	display:none
}
.events ul li a>span,.events ul li i>span{
	left:0;
	position:absolute;
	text-shadow:none;
	top:.5em
}
.events ul li a:focus>span,.events ul li a:hover>span{
	box-shadow:0 0 5px rgba(0,0,0,.2);
	left:.5em
}
.events li span{
	background-color:#fff;
	border:1px solid #ccc;
	color:#c00;
	display:block;
	font-size:90%;
	line-height:1em;
	padding:0 0 .5em;
	text-align:center;
	width:70px
}
.invert .events li span{
	border:none
}
.events li span span{
	background-color:#eee;
	border:0;
	color:#4d5051;
	font-size:inherit;
	margin-bottom:.5em;
	padding-top:.5em;
	width:100%
}
.boxes{
	align-content:stretch;
	align-items:stretch;
	display:flex;
	flex-flow:row wrap;
	justify-content:flex-start;
	padding-bottom:.5em
}
.boxes>div,.boxes>div:nth-of-type(2n),.boxes>div:nth-of-type(3n),.boxes>div:nth-of-type(4n){
	background-color:#fff;
	border:1px solid rgba(0,0,0,.2);
	box-sizing:border-box;
	flex:0 0 auto;
	font-size:90%;
	margin:0 1% 2em 0;
	padding:1vw
}
.column2.boxes>div,.column3.boxes>div{
	margin-right:2%
}
.column4.boxes>div{
	width:24%
}
.grid.nav{
	font-size:100%
}
.grid.nav>div{
	padding-bottom:0;
	padding-top:0
}
.grid.nav nav h1{
	font-size:1em;
	font-weight:700;
	letter-spacing:.025em;
	line-height:1.65em;
	text-transform:uppercase
}
.grid.nav nav ul{
	margin-top:0
}
.grid.nav nav ul a{
	display:inline
}
.grid.nav nav ul li:last-child{
	margin-bottom:1px
}
.content .sidebar .list{
	padding-bottom:.5em
}
.list ul{
	list-style:none
}
.list li,.list ul{
	margin:0;
	padding:0
}
.list li{
	border-top:1px solid rgba(0,0,0,.2);
	position:relative
}
.sidebar .list>ul:first-child>li:first-child{
	border:0;
	margin-top:-1em
}
.invert .list li,.invert.list li{
	border-top:1px solid hsla(0,0%,100%,.5)
}
.grid .list ul:last-child{
	border-bottom:1px solid rgba(0,0,0,.2)
}
.invert .list ul:last-child{
	border-bottom:1px solid hsla(0,0%,100%,.5)
}
.list li a,.list li a:visited{
	border-bottom:0;
	color:rgba(0,0,0,.6);
	display:block;
	letter-spacing:.025em;
	line-height:1.35em;
	margin:0;
	padding:1.5em 0!important;
	width:92%
}
.list li a:after{
	content:" \25BA";
	font-size:.65em;
	position:absolute;
	right:0;
	top:39%
}
.list li a:focus,.list li a:focus:after,.list li a:hover,.list li a:hover:after{
	border-bottom:0;
	color:#c00
}
.invert .list li a,.invert.list li a{
	border-bottom:0;
	color:hsla(0,0%,100%,.85)
}
.invert .list li a:focus,.invert .list li a:focus:after,.invert .list li a:hover,.invert .list li a:hover:after,.invert.list li a:focus,.invert.list li a:focus:after,.invert.list li a:hover,.invert.list li a:hover:after{
	border-bottom:0;
	color:#fff
}
.news>div{
	display:flex;
	flex:0 0 auto
}
.news div.img{
	background:scroll 50% no-repeat #bbb;
	background-size:cover;
	text-indent:-9999px;
	width:100%
}
.news.column2 div.img{
	height:300px
}
.news.column3 div.img{
	height:225px
}
.news.column4 div.img{
	height:150px
}
.news div a{
	border:0!important;
	display:block;
	padding-bottom:0!important;
	width:100%
}
.news div a small,.news div a span{
	color:#4d5051;
	line-height:1.65em
}
.news div a small{
	padding-top:.5em
}
.news:not(.boxes) a span{
	padding-bottom:.65em
}
.news div a:focus,.news div a:hover{
	border-color:transparent
}
.news div a:focus div.img,.news div a:hover div.img{
	opacity:.65
}
.news div a>:not(div){
	display:block
}
.news div a h2{
	color:inherit;
	padding:.5em 0
}
.news.blue div a,.news.darkgreen div a,.news.darkgrey div a,.news.globe div a,.news.gold.invert div a,.news.green div a,.news.grey div a,.news.plaid div a,.news.red div a,.news.teal div a{
	background-color:#fff
}
.news.blue:not(.boxes) a>:not(div),.news.darkgreen:not(.boxes) a>:not(div),.news.darkgrey:not(.boxes) a>:not(div),.news.globe:not(.boxes) a>:not(div),.news.gold.invert:not(.boxes) a>:not(div),.news.green:not(.boxes) a>:not(div),.news.grey:not(.boxes) a>:not(div),.news.plaid:not(.boxes) a>:not(div),.news.red:not(.boxes) a>:not(div),.news.teal:not(.boxes) a>:not(div){
	padding-left:4%;
	padding-right:4%
}
.boxes.news>h1{
	padding-bottom:.65em
}
.content>div{
	display:inline-block;
	vertical-align:top
}
.content>div:first-child{
	width:60%
}
.wide>div:first-child{
	width:100%
}
.content .sidebar{
	margin-left:8.666%;
	width:31.333%
}
.content .sidebar div{
	font-size:90%;
	margin-top:2em;
	padding:1.5em;
	width:auto
}
.content .sidebar div:after{
	clear:both;
	content:"";
	display:block
}
.content .sidebar div.simple{
	margin-top:3em;
	padding:0 0 1.5em
}
.content .sidebar div:first-child{
	margin-top:0
}
.content .sidebar div.left-rule{
	border-left:1px solid rgba(0,0,0,.2);
	padding:0 0 0 1.5em
}
.collapsed{
	clear:both;
	z-index:1
}
.collapsed a:before{
	color:#c00;
	content:"\203a";
	display:block;
	float:left;
	font-size:135%;
	margin-right:.35em;
	margin-top:-2px;
	position:relative;
	transform:rotate(0);
	transform-origin:60% 60%;
	z-index:0
}
.collapsed.open a:before{
	transform:rotate(90deg)
}
.invert .collapsed a:before{
	color:hsla(0,0%,100%,.85)
}
h2.collapsed{
	padding-bottom:0
}
h2.collapsed+div{
	margin-top:1em!important
}
.collapsed>a,.grey .collapsed>a{
	border-color:transparent
}
.collapsed:hover a{
	border-bottom:1px solid;
	color:red
}
.indicia{
	display:inline-block
}
.content>div>.floatleft+h1,.content>div>.floatleft+h2{
	clear:none;
	padding-top:0
}
.contact{
	clear:both;
	font-size:90%;
	margin:.65em 0;
	min-height:2em;
	position:relative
}
h1+.contact{
	margin-top:-.5em
}
.contact>p,.date+h1{
	padding-top:0
}
.contact>p{
	display:inline;
	font-style:italic;
	padding-bottom:.35em;
	width:calc(100% - 10em)
}
body .contact>p a{
	font-style:normal
}
body:not(.no-js) .contact>p a{
	display:inline-block;
	text-indent:-9999px
}
.contact address{
	display:inline-block;
	font-style:normal;
	padding:2em 2em 1em 0;
	vertical-align:top;
	width:calc(50% - 2em)
}
p+a+.address>address{
	padding-top:1em
}
#contact ul,.contact address ul{
	list-style-type:none;
	margin-top:0;
	padding:0
}
.contact address li{
	margin-left:0
}
.contact .collapsed{
	margin-top:.25em
}
.contact .collapsed a{
	font-size:90%
}
.inquiry.open:before{
	transform:rotate(90deg)
}
.no-js .inquiry{
	display:none
}
#at3win a,.addthis-smartlayers a,.addthis_toolbox a,.atss a{
	border:0;
	padding:0
}
.no-js .loadmore{
	display:none
}
.loadmore{
	display:block;
	margin:1.5em auto;
	padding:0 25%;
	width:50%;
	z-index:2
}
.blue .loadmore .btn,.darkgreen .loadmore .btn,.darkgrey .loadmore .btn,.gold.invert .loadmore .btn,.green .loadmore .btn,.red .loadmore .btn,.teal .loadmore .btn{
	border-color:#fff;
	color:#fff
}
.blue .loadmore .btn:focus,.blue .loadmore .btn:hover,.darkgreen .loadmore .btn:focus,.darkgreen .loadmore .btn:hover,.darkgrey .loadmore .btn:focus,.darkgrey .loadmore .btn:hover,.gold.invert .loadmore .btn:focus,.gold.invert .loadmore .btn:hover,.green .loadmore .btn:focus,.green .loadmore .btn:hover,.red .loadmore .btn:focus,.red .loadmore .btn:hover,.teal .loadmore .btn:focus,.teal .loadmore .btn:hover{
	background-color:rgba(0,0,0,.35);
	border-color:#fff;
	color:#fff
}
.boxes>h1.collapsed:not(.open){
	padding-bottom:1.6em
}
.boxes>h1.collapsed{
	padding-bottom:.65em
}
.content>div>h1.collapsed:not(.open){
	padding-bottom:.5em
}
.tags{
	margin-top:1.5em
}
.tags .btn{
	margin-right:.5em
}
.no-js .tags{
	display:none
}
.stacked h2+h3{
	padding-top:0
}
.stacked .collapsed{
	font-weight:400
}
.icon{
	display:inline-block;
	margin-left:40px;
	position:relative
}
.icon:before{
	background:url(../images/sprites-icons-contact.png) 0 -5px no-repeat;
	background-size:auto 100%;
	bottom:-5px;
	content:"";
	display:block;
	height:31px;
	left:-39px;
	position:absolute;
	width:32px
}
.icon:after{
	content:"";
	display:inline-block
}
.icon.tel:before{
	background-position:-36px 0
}
.icon.fax:before{
	background-position:-82px 0
}
.icon.loc:before{
	background-position:-116px 0
}
.icon-cal:before{
	content:"\2b12";
	font-size:2.15em;
	opacity:.5;
	padding-right:.35em;
	position:relative;
	top:3px
}
a{
	border-bottom:1px solid #941120;
	color:#941120;
	text-decoration:none
}
#content a:not(.btn):not(.cta):not(.box):not(.scrolldown){
	padding-bottom:1px
}
a:focus,a:hover{
	border-bottom-color:red;
	color:red
}
.grid{
	background-attachment:scroll;
	background-position:50%;
	background-repeat:no-repeat
}
.invert .h2,.invert h2,.invert h3,.invert h4,.invert th{
	color:hsla(0,0%,100%,.95)
}
.invert .h1,.invert b,.invert h1,.invert h5,.invert h6,.invert strong,.invert thead{
	color:#fff
}
.invert .h1 a:not(.btn):not(.cta),.invert .h2 a:not(.btn):not(.cta),.invert a,.invert blockquote a:not(.btn):not(.cta),.invert h1 a:not(.btn):not(.cta),.invert h2 a:not(.btn):not(.cta),.invert h3 a:not(.btn):not(.cta),.invert h4 a:not(.btn):not(.cta),.invert h5 a:not(.btn):not(.cta),.invert h6 a:not(.btn):not(.cta),.invert li a,.invert p a:not(.btn):not(.cta){
	border-bottom:1px solid hsla(0,0%,100%,.85);
	color:#fff
}
.invert a:focus,.invert a:hover{
	color:#fff!important;
	text-shadow:0 0 5px rgba(0,0,0,.5)
}
.invert{
	background-color:#4d5051
}
.invert,.invert:not(footer) li{
	color:#fff
}
.invert .rule-bottom{
	border-bottom:1px solid hsla(0,0%,100%,.65)
}
.invert .flickity-page-dots .dot{
	background-color:hsla(0,0%,100%,.75)
}
.invert .flickity-page-dots .dot.is-selected{
	background-color:#fff
}
.grey .flickity-viewport,.grey:not(.plaid),.js-flickityCustom.grey .grid{
	background-color:#e0e0e0
}
.darkgrey,.darkgrey .flickity-viewport,.js-flickityCustom.darkgrey .grid{
	background-color:#4d5051
}
.js-flickityCustom.red .grid,.red,.red .flickity-viewport{
	background-color:#c41230
}
.gold,.gold .flickity-viewport,.js-flickityCustom.gold .grid{
	background-color:#fdb515
}
.gold.invert,.gold.invert .flickity-viewport,.js-flickityCustom.gold.invert .grid{
	background-color:#a60
}
.gold.invert,.gold.invert a{
	color:#fff!important
}
.js-flickityCustom.teal .grid,.teal,.teal .flickity-viewport{
	background-color:#008285
}
.blue,.blue .flickity-viewport,.js-flickityCustom.blue .grid{
	background-color:#043673
}
.green,.green .flickity-viewport,.js-flickityCustom.green .grid{
	background-color:#00853e
}
.darkgreen,.darkgreen .flickity-viewport,.js-flickityCustom.darkgreen .grid{
	background-color:#1f4c4c
}
.blue>h1,.blue>h1 a,.blue>h1 a:before,.darkgreen>h1,.darkgreen>h1 a,.darkgreen>h1 a:before,.darkgrey>h1,.darkgrey>h1 a,.darkgrey>h1 a:before,.gold.invert>h1,.gold.invert>h1 a,.gold.invert>h1 a:before,.green>h1,.green>h1 a,.green>h1 a:before,.red>h1,.red>h1 a,.red>h1 a:before,.teal>h1,.teal>h1 a,.teal>h1 a:before{
	border-color:#fff;
	color:#fff
}
.blue>h1 a:focus,.blue>h1:hover a,.darkgreen>h1 a:focus,.darkgreen>h1:hover a,.darkgrey>h1 a:focus,.darkgrey>h1:hover a,.gold.invert>h1 a:focus,.gold.invert>h1:hover a,.green>h1 a:focus,.green>h1:hover a,.red>h1 a:focus,.red>h1:hover a,.teal>h1 a:focus,.teal>h1:hover a{
	border-color:#fff;
	color:#fff;
	text-shadow:0 0 5px rgba(0,0,0,.5)
}
footer.grid{
	background-color:#333;
	font-size:90%;
	letter-spacing:.05em
}
footer.grid a,footer.grid a:visited,footer.grid h1{
	border-bottom-color:transparent
}
footer.grid a:focus,footer.grid a:hover{
	border-bottom:1px solid
}
footer ul{
	margin:0;
	padding:0
}
footer div:first-child ul li{
	display:inline
}
footer div:first-child ul li:after{
	content:" | ";
	padding:0 .5em
}
footer div:first-child ul li:last-child:after{
	content:none;
	padding:0
}
ul.social{
	margin:0;
	padding:0
}
.social a,.social span{
	background:url(../images/sprites-social.png) 0 0 scroll transparent no-repeat;
	background-size:auto 100%;
	border-bottom:0!important;
	display:inline-block;
	height:80px;
	margin:0 6px 6px 0;
	padding-bottom:0!important;
	text-indent:-9999px;
	width:80px
}
.social a:focus,.social a:hover{
	border-bottom:0;
	opacity:.5
}
ul.social li{
	display:inline-block;
	margin-left:0;
	padding:0;
	vertical-align:top
}
.social .twitter{
	background-position:-86px 0
}
.social .googleplus{
	background-position:-172px 0
}
.social .linkedin{
	background-position:-258px 0
}
.social .youtube{
	background-position:-344px 0
}
.social .itunesu{
	background-position:-430px 0;
	border-radius:50%
}
.social .rss{
	background-position:-516px 0
}
.social .tumblr{
	background-position:-602px 0
}
.social .instagram{
	background-position:-688px 0
}
.social .flickr{
	background-position:-774px 0
}
.social .weibo{
	background-position:-860px 0
}
.social .pinterest{
	background-position:-946px 0;
	width:31px
}
.social .vimeo{
	background-position:-1032px 0
}
.social .more{
	background-position:-1204px 0;
	position:relative;
	width:43px
}
.invert .social .more{
	background-position:-1118px 0
}
.social.half a,.social.half span{
	height:40px;
	width:40px
}
.social.half .twitter{
	background-position:-43px 0
}
.social.half .googleplus{
	background-position:-86px 0
}
.social.half .linkedin{
	background-position:-129px 0
}
.social.half .youtube{
	background-position:-172px 0
}
.social.half .itunesu{
	background-position:-215px 0
}
.social.half .rss{
	background-position:-258px 0
}
.social.half .tumblr{
	background-position:-301px 0
}
.social.half .instagram{
	background-position:-344px 0
}
.social.half .flickr{
	background-position:-387px 0
}
.social.half .weibo{
	background-position:-430px 0
}
.social.half .pinterest{
	background-position:-472px 0;
	width:41px
}
.social.half .vimeo{
	background-position:-516px 0
}
.social.half .more{
	background-position:-602px 0;
	width:22px
}
.invert .social.half .more{
	background-position:-559px 0
}
.social.third a,.social.third span{
	height:30px;
	width:30px
}
.social.third .twitter{
	background-position:-32px 0
}
.social.third .googleplus{
	background-position:-65px 0
}
.social.third .linkedin{
	background-position:-97px 0
}
.social.third .youtube{
	background-position:-129px 0
}
.social.third .itunesu{
	background-position:-161px 0
}
.social.third .rss{
	background-position:-193px 0
}
.social.third .tumblr{
	background-position:-226px 0
}
.social.third .instagram{
	background-position:-258px 0
}
.social.third .flickr{
	background-position:-290px 0
}
.social.third .weibo{
	background-position:-322px 0
}
.social.third .pinterest{
	background-position:-354px 0
}
.social.third .vimeo{
	background-position:-387px 0
}
.social.third .more{
	background-position:-451px 0;
	width:17px
}
.invert .social.third .more{
	background-position:-419px 0
}
input,textarea{
	background:#fff;
	border:1px solid rgba(0,0,0,.35);
	display:inline-block;
	font-size:1em;
	margin:.25em 0;
	max-width:calc(100% - 6px - .5em);
	padding:.35em .5em;
	position:relative
}
input[type=submit]{
	margin:0
}
input[type=checkbox],input[type=radio]{
	margin-left:2px
}
input:not([type=radio]),select,textarea{
	border-radius:0
}
select{
	background:#fff;
	border:1px solid rgba(0,0,0,.35);
	color:#777;
	margin:.25em 0;
	max-width:100%;
	padding:.25em
}
textarea{
	max-height:20em;
	max-width:calc(100% - 2px - .5em);
	min-height:5em;
	min-width:50%;
	overflow:auto;
	width:100%
}
a.btn,a.btn:visited,button,input[type=submit]{
	background-color:rgba(0,0,0,.6);
	border-bottom:0;
	border-top:0;
	border-color:transparent currentcolor rgba(0,0,0,.35);
	border-radius:0;
	border-style:solid none;
	border-width:2px 0;
	color:#fff;
	display:inline-block;
	line-height:1.15em;
	margin-bottom:1em;
	outline:none;
	padding:1em 1.35em
}
p>a.btn:first-child,p>a.cta:first-child{
	margin-top:.35em
}
a.btn.small,a.btn.small:visited,button.small,input[type=submit].small{
	padding:.35em .5em
}
a.btn:last-child,button:last-child,input[type=submit]:last-child{
	margin-bottom:0
}
a.btn.wide{
	display:block;
	padding:1.5em;
	text-align:center
}
a.btn:focus,a.btn:hover,button:focus,button:hover,input[type=submit]:focus,input[type=submit]:hover{
	background-color:rgba(0,0,0,.8)
}
a.btn.ghost,a.btn.ghost:visited,button.ghost,input[type=submit].ghost{
	background-color:transparent;
	border:2px solid rgba(0,0,0,.5);
	color:rgba(0,0,0,.6)
}
a.btn.ghost:focus,a.btn.ghost:hover,button.ghost:focus,button.ghost:hover,input[type=submit].ghost:focus,input[type=submit].ghost:hover{
	border-color:#c00;
	color:#c00
}
.invert a.btn.ghost,.invert a.btn.ghost:visited,.invert button.ghost,.invert input[type=submit].ghost{
	border-color:#fff;
	color:#fff
}
.invert a.btn.ghost:focus,.invert a.btn.ghost:hover,.invert button.ghost:focus,.invert button.ghost:hover,.invert input[type=submit].ghost:focus,.invert input[type=submit].ghost:hover{
	background-color:rgba(0,0,0,.35);
	border-color:#fff;
	color:#fff
}
.cta,a.cta{
	border-bottom-color:transparent;
	color:#4d5051;
	display:inline-block;
	font-size:90%;
	font-weight:700;
	margin-right:.15em;
	text-transform:uppercase
}
.cta:after{
	content:" \25BA";
	display:inline;
	font-size:75%;
	margin-left:.15em;
	position:relative;
	top:-1px
}
.cta:focus,.cta:hover,a.cta:focus,a.cta:hover,a:focus .cta,a:hover .cta{
	color:#c00
}
.invert .cta{
	border-bottom:none;
	color:#fff
}
.circle img,img.circle{
	border-radius:50%
}
.pointer{
	cursor:pointer
}
.hr,.pointer{
	display:block
}
.hr{
	border-top:1px solid rgba(0,0,0,.2);
	clear:both;
	margin:1em 0;
	max-width:100%
}
.border{
	border:1px solid rgba(0,0,0,.2)
}
.noborder,.noborder td,.noborder th{
	border:none!important;
	padding-left:0
}
.noborder td:last-child,.noborder th:last-child{
	padding-right:0
}
.rule-top{
	border-top:1px solid rgba(0,0,0,.2)
}
.rule-bottom,p.rule-bottom{
	border-bottom:1px solid rgba(0,0,0,.2);
	margin-bottom:.35em;
	padding-bottom:.35em
}
.invert .border,.invert .hr,.invert .rule-bottom,.invert .rule-top{
	border-color:hsla(0,0%,100%,.5)
}
.invert .alert,.invert div[role=alert],.invert noscript{
	background-color:#fff;
	padding:.5em .65em
}
.alert,.alert a,.alert a:focus,.alert a:hover,.alert a:visited,.alert p,div[role=alert],noscript,noscript a,noscript a:focus,noscript a:hover,noscript a:visited,p[role=alert],p[role=alert] a,p[role=alert] a:focus,p[role=alert] a:hover,p[role=alert] a:visited{
	color:red!important;
	text-shadow:none
}
.alert a,noscript a,p[role=alert] a{
	border-bottom:1px solid!important
}
div:not(.hero)>.caption{
	font-size:90%;
	max-width:36%
}
.caption img{
	width:100%
}
.floatleft,.floatleft img,.floatleft.caption,img.floatleft{
	float:left;
	margin:0 30px 15px 0;
	max-width:100%;
	padding-bottom:0
}
.floatright,.floatright img,.floatright.caption,img.floatright{
	float:right;
	margin:0 0 15px 30px;
	max-width:100%;
	padding-bottom:0
}
.caption.thumb,.thumb img{
	margin-bottom:0
}
.aligncenter{
	text-align:center!important
}
.alignright{
	text-align:right!important
}
.clear{
	clear:both;
	display:block
}
.hide{
	display:none!important
}
.show{
	display:block!important
}
.fixed{
	position:fixed
}
.overflow-hidden{
	overflow:hidden!important
}
.overflow-auto{
	overflow:auto!important
}
.error,.invert .error{
	background:#fdd;
	border:1px solid;
	color:#555;
	display:block;
	padding:1em!important
}
a.external:after{
	border:none;
	content:url(../images/icon-leave-site.png);
	display:inline;
	filter:grayscale(1);
	opacity:.85;
	padding-left:5px;
	position:relative;
	top:0;
	vertical-align:top
}
a.external:focus:after,nav.tree a.external:after,nav.tree a.external:hover:after{
	filter:invert(1) grayscale(1) brightness(2)
}
a.external:hover:after,nav.tree a.external:focus:after{
	filter:none;
	opacity:1
}
.flickity-enabled{
	position:relative
}
.flickity-enabled:focus{
	outline:none
}
.flickity-viewport{
	overflow:hidden;
	position:relative
}
.flickity-slider{
	position:absolute;
	width:100%
}
.flickity-slider,.flickity-slider>div{
	transition:none!important
}
.flickity-enabled.is-draggable{
	-webkit-tap-highlight-color:transparent;
	tap-highlight-color:transparent;
	-webkit-user-select:none;
	-moz-user-select:none;
	-ms-user-select:none;
	user-select:none
}
.flickity-enabled.is-draggable .flickity-viewport{
	cursor:move;
	cursor:-webkit-grab;
	cursor:grab
}
.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down{
	cursor:-webkit-grabbing;
	cursor:grabbing
}
.flickity-prev-next-button{
	background:#fff;
	background:hsla(0,0%,100%,.75);
	border:none;
	cursor:pointer;
	height:40px;
	margin:0;
	padding:0;
	position:absolute;
	top:50%;
	transform:translatey(-50%);
	width:30px
}
.flickity-prev-next-button:focus,.flickity-prev-next-button:hover{
	background:#fff
}
.flickity-prev-next-button:active{
	opacity:.6
}
.flickity-prev-next-button.previous{
	left:0
}
.flickity-prev-next-button.next{
	right:0;
	transform:rotate(180deg) translatey(50%);
	transform-origin:center
}
.flickity-rtl .flickity-prev-next-button.previous{
	left:auto;
	right:10px
}
.flickity-rtl .flickity-prev-next-button.next{
	left:10px;
	right:auto
}
.flickity-prev-next-button:disabled{
	cursor:auto;
	filter:alpha(opacity=30);
	opacity:.3
}
.flickity-prev-next-button svg{
	height:70%;
	left:0;
	position:absolute;
	top:15%;
	width:100%
}
.flickity-prev-next-button .arrow{
	fill:#4d506d
}
.flickity-prev-next-button:focus .arrow,.flickity-prev-next-button:hover .arrow{
	fill:#333
}
.flickity-prev-next-button.no-svg{
	color:#4d506d;
	font-size:26px
}
.flickity-page-dots{
	bottom:1em;
	left:51.35%;
	margin:0;
	padding:0;
	position:absolute
}
.flickity-rtl .flickity-page-dots{
	direction:rtl
}
.flickity-page-dots .dot{
	background:#4d506d;
	border-radius:50%;
	cursor:pointer;
	display:inline-block;
	height:.75em;
	margin:0 .65em 0 0;
	padding:0;
	width:.75em
}
.flickity-page-dots .dot.is-selected{
	background-color:#333
}
.js-flickityCustom .flickity-viewport:after{
	clear:both;
	content:".";
	display:block;
	height:0;
	line-height:0;
	visibility:hidden
}
.js-flickityCustom{
	background-color:transparent;
	position:relative;
	-ms-touch-action:pan-y;
	width:100%
}
.no-js .js-flickityCustom{
	cursor:auto;
	display:block;
	height:auto!important;
	width:auto
}
.js-flickityCustom .flickity-viewport{
	-webkit-backface-visibility:hidden;
	-moz-backface-visibility:hidden;
	-ms-backface-visibility:hidden;
	position:relative;
	-webkit-transform:translateZ(0);
	-moz-transform:translateZ(0);
	-ms-transform:translateZ(0)
}
.js-flickityCustom{
	border-color:transparent;
	margin:0 auto;
	padding:0;
	transition:none!important
}
.js-flickityCustom:not(.invert)+div:not(.invert),div:not(.invert):not(.breadcrumbs)+.js-flickityCustom:not(.invert){
	border-top:1px solid rgba(0,0,0,.2)
}
#content>div:first-child+div:not(.js-flickityCustom){
	border-top:0
}
.js-flickityCustom .grid>div{
	padding-bottom:0;
	padding-top:0
}
.js-flickityCustom .grid>div:first-child img{
	width:100%
}
.js-flickityCustom .grid{
	font-size:100%;
	margin:0;
	max-width:none;
	padding:0;
	width:100%
}
.js-flickityCustom .grid>div:nth-of-type(2n-1){
	padding-right:1.25%;
	width:50%
}
.js-flickityCustom .grid>div:nth-of-type(2n){
	padding:1em 0 5em;
	width:39%
}
#content>.js-flickityCustom.tall:first-child,#content>.js-flickityCustom:first-child .flickity-viewport,#content>.js-flickityCustom:first-child .hero{
	width:100%
}
#content>.js-flickityCustom:first-child .flickity-page-dots{
	background-color:hsla(0,0%,100%,.75);
	bottom:0;
	cursor:default;
	left:auto;
	line-height:0;
	padding:10px;
	position:absolute;
	right:9%;
	transition:background-color .3s ease,right .3s ease
}
#content>.js-flickityCustom:first-child .flickity-page-dots:hover{
	background-color:#fff
}
.menu-on #content>.js-flickityCustom:first-child .flickity-page-dots{
	right:2%
}
#content>.js-flickityCustom:first-child .flickity-page-dots .dot:last-child{
	margin-right:0
}
#content>.js-flickityCustom:first-child+div.boxes{
	padding-top:3.65em
}
.no-js #content>.js-flickityCustom.tall:first-child,.no-js #content>.js-flickityCustom:first-child .flickity-viewport{
	height:auto;
	max-height:none
}
.no-js #content>.js-flickityCustom:first-child .hero{
	height:auto;
	min-height:700px
}
.touch .js-flickityCustom .grid>div:nth-of-type(2n){
	padding-bottom:2em
}
.touch #content>.js-flickityCustom:first-child+div:not(.breadcrumbs){
	padding-top:1.5em
}
iframe{
	max-width:100%;
	transition:height .3s ease
}
.collapsed a:before,.inquiry:before,a.arrow{
	transition:transform .3s ease
}
body:not(.touch) a,body:not(.touch) b,body:not(.touch) button,body:not(.touch) div,body:not(.touch) em,body:not(.touch) h1,body:not(.touch) header,body:not(.touch) i,body:not(.touch) img,body:not(.touch) input,body:not(.touch) nav,body:not(.touch) p,body:not(.touch) span,body:not(.touch) strong{
	transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease,color .3s ease,margin .3s ease,min-height .3s ease,max-width .3s ease,opacity .3s ease,padding-left .3s ease,padding-right .3s ease,left .3s ease,right .3s ease,text-shadow .3s ease,width .3s ease
}
#sitename h1,#sitename h2,nav h1{
	transition:font-size .3s ease,height .3s ease,opacity .3s ease,padding .3s ease
}
body:not(.touch) a.external:after{
	transition:opacity .2s ease
}
body:not(.touch) .events li a>span{
	transition:left .3s ease,box-shadow .3s ease
}
body:not(.touch) .flickity-page-dots,body:not(.touch) .icon:before{
	transition:background-color .3s ease,box-shadow .3s ease
}
body:not(.touch) .flickity-prev-next-button .arrow{
	transition:fill .3s ease
}
.campusAlertRed{
	background-color:#c41230
}
.campusAlertGold{
	background-color:#fdb515
}
.campusAlertGreen{
	background-color:#00853e
}
#campusAlert{
	box-sizing:border-box;
	padding:2em 2em 1em;
	position:relative;
	transition:width .2s ease;
	width:100%;
	z-index:200
}
#campusAlert p{
	color:#fff;
	position:relative
}
#campusAlert.campusAlertGold p{
	color:#333
}
#campusAlert p:before{
	border:3px solid #fff;
	color:#fff;
	float:left;
	font-weight:700!important;
	height:33px;
	margin-right:.35em;
	padding:7px 0 0;
	position:relative;
	top:-10px;
	width:40px
}
#campusAlert.campusAlertGold:before{
	border-color:#333;
	color:#333
}
.campusAlertOn p:before{
	content:"!";
	font-size:200%;
	left:-.25em;
	text-align:center;
	top:-.5em
}
.campusAlertOn p:before,.campusAlertRed p:before{
	background-color:#c41230
}
.campusAlertGold p:before{
	background-color:#fdb515
}
.campusAlertGreen p:before{
	background-color:#00853e;
	content:"\2713";
	font-size:150%;
	left:-.35em;
	text-indent:.4em;
	top:-.65em
}
#campusAlert a{
	border-bottom:1px solid!important;
	color:#fff
}
#campusAlert strong{
	letter-spacing:1px;
	text-transform:uppercase
}
#campusAlert.campusAlertGold a{
	color:#941120
}
#campusAlert.campusAlertGold a:focus{
	color:#fff
}
#campusAlert+#container .roof a.wordmark{
	display:block
}
#campusAlert+#container .hero .text{
	position:absolute
}
@media only screen and (min-width:768px){
	button,html,input,select,textarea{
		font-family:Open Sans,Helvetica,sans-serif
	}
	.globe{
		background-image:url(../images/bg-globe.png)
	}
	.plaid{
		overflow:hidden;
		position:relative;
		z-index:1
	}
	.plaid:before{
		background-image:url(../images/bg-plaid-big.png);
		background-position:50%;
		background-repeat:repeat;
		background-size:auto;
		content:"";
		height:9999px;
		left:0;
		margin:0 auto;
		position:absolute;
		top:0;
		transform:rotate(41.35deg) translateX(-50%);
		width:9999px;
		z-index:-1
	}
	.plaid:not(.invert):not(.boxes):not(.news):before{
		opacity:.65
	}
	#content .mask:before{
		background:url(../images/overlay.png) repeat 0 0 scroll transparent;
		content:"";
		display:block;
		height:100%;
		left:0;
		position:absolute;
		top:0;
		width:100%;
		z-index:5
	}
}
@media only screen and (min-width:1700px){
	.breadcrumbs,.content,.grid,.hero .caption,.hero>.text,.roof,header nav,header>div{
		padding-left:15%;
		padding-right:15%
	}
	.menu-on .breadcrumbs,.menu-on .content,.menu-on .grid,.menu-on .hero .caption,.menu-on .hero>.text,.menu-on .roof,.menu-on header nav,.menu-on header>div{
		padding-left:10%;
		padding-right:10%
	}
	.menu-on #campusAlert,.menu-on #container{
		width:calc(100% - 450px)
	}
	nav.tree{
		right:-450px;
		width:450px
	}
	nav.tree li a{
		padding-right:70px
	}
	nav.tree a.arrow{
		left:412px
	}
	.roof.invert .wordmark{
		width:23%
	}
	header.float+#content .hero{
		background-position:50%
	}
	#content .hero .box{
		width:calc(35% - 2em)
	}
	#content .hero .box.right,#content>.js-flickityCustom:first-child .flickity-page-dots{
		right:15%
	}
	#content .hero .box.left{
		left:15%
	}
	.menu-on #content .hero .box.right,.menu-on #content>.js-flickityCustom:first-child .flickity-page-dots{
		right:10%
	}
	.menu-on #content .hero .box.left{
		left:10%
	}
	#content .hero .small{
		width:calc(27.222% - 2em)
	}
	#content .hero .large{
		width:calc(54.444% - 2em)
	}
	#content>.js-flickityCustom:not(:first-child):not(.invert):not(.grey){
		border:1px solid rgba(0,0,0,.2)
	}
	.invert+.js-flickityCustom{
		border:0
	}
	.js-flickityCustom .grid>div:nth-of-type(2n){
		width:47.35%
	}
	.js-flickityCustom .grid>div:nth-of-type(2n-1){
		padding-right:1.5%
	}
	.js-flickityCustom:not(.invert)+div:not(.invert):not(.js-flickityCustom){
		border-top:0
	}
}
@media only screen and (max-width:1300px){
	.breadcrumbs,.content,.grid,.hero .caption,.hero>.text,.roof,header nav,header>div{
		padding-left:2%;
		padding-right:2%
	}
	.roof a.wordmark,.roof form,.roof.invert .wordmark{
		width:25%
	}
	.search label.searchSite span{
		font-size:80%
	}
	nav.tree.b{
		padding-top:3.5em
	}
	#content .hero{
		min-height:400px
	}
	#content .hero .box{
		font-size:90%;
		width:calc(48% - 2em)
	}
	#content .hero .box.right,#content>.js-flickityCustom:first-child .flickity-page-dots{
		right:2%
	}
	#content .hero .box.left{
		left:2%
	}
	#content .hero .small{
		width:calc(37.222% - 2em)
	}
	#content .hero .large{
		width:calc(74.444% - 2em)
	}
	.js-flickityCustom .grid>div:nth-of-type(2n){
		width:46.5%
	}
	.js-flickityCustom .grid>div:nth-of-type(2n-1){
		padding-right:1.45%
	}
	#content .hero>div.text h1{
		font-size:2em
	}
}
@media only screen and (max-width:960px){
	#sitename h1{
		font-size:2.5em
	}
	#sitename h2{
		margin-top:-1.35em
	}
	nav.tree{
		padding-top:4.65em
	}
	nav.tree form{
		display:block;
		margin:0;
		padding:13px 0 0 1.5em;
		position:absolute;
		top:0;
		width:calc(100% - 4.5em)
	}
	nav.tree input[placeholder=Search]{
		background-color:hsla(0,0%,100%,.15);
		border:none;
		color:#fff;
		margin:0;
		padding-right:10px;
		width:100%
	}
	nav.tree input[placeholder=Search]:focus{
		background-color:#4d5051;
		color:#fff
	}
	nav.tree label.siteSearch{
		display:none;
		left:0;
		position:relative;
		text-align:left;
		top:2px!important;
		width:auto
	}
	nav.tree input[name=site]{
		float:left;
		margin:.45em 0 0;
		padding:0
	}
	nav.tree label.searchSite span{
		float:none
	}
	nav.tree button{
		height:auto;
		padding:6px 14px
	}
	nav.tree h1{
		display:none;
		height:0;
		line-height:0;
		padding:0
	}
	nav.tree.b .menu-btn{
		margin-top:13px
	}
	nav.tree li>a:hover:not(.arrow){
		background-color:transparent
	}
	.menu-on #container{
		position:fixed;
		width:auto
	}
	.menu-on .menu-btn{
		display:none
	}
	.menu-on table{
		width:80vw
	}
	.menu-btn,.menu-on nav.tree .menu-btn{
		display:block
	}
	.menu-on #overlay{
		background-color:hsla(0,0%,100%,.65);
		display:block;
		z-index:101
	}
	.menu-on>nav.tree{
		z-index:102
	}
	.roof a.wordmark{
		width:40%
	}
	.roof.invert .wordmark{
		width:33.333%
	}
	.breadcrumbs,.content,.grid{
		padding-bottom:1.5em;
		padding-top:1.5em
	}
	#container>header .wordmark img{
		max-width:33.333%
	}
	a.external:after{
		top:auto
	}
	.content>div:first-child{
		width:64.666%
	}
	.content .sidebar{
		margin-left:4%
	}
	.wide>div:first-child{
		width:100%
	}
	a.btn.wide{
		padding:.65em
	}
	.ios .cta:after{
		content:" \25B8";
		font-size:100%;
		margin-left:0
	}
	.column4>div,.column4>div:nth-of-type(4n){
		padding-right:3%;
		width:31.333%
	}
	.column4>div:nth-of-type(3n){
		padding-right:0
	}
	.boxes{
		padding-bottom:0
	}
	.boxes>div,.boxes>div:nth-of-type(2n),.boxes>div:nth-of-type(3n),.boxes>div:nth-of-type(4n){
		margin-bottom:1.5em
	}
	.column4.boxes>div{
		margin-right:2%;
		padding:1vw;
		width:31.333%
	}
	.column4.photos div.photo{
		flex-basis:50%
	}
	.column4>div.photo:nth-of-type(3n){
		margin-right:0
	}
	.grid .floatleft,.grid .floatright{
		display:block;
		float:none;
		margin:0 1em 1em 0
	}
	.news.column2 div.img{
		height:225px
	}
	.news.column3 div.img,.news.column4 div.img{
		height:150px
	}
	.js-flickityCustom .grid{
		font-size:90%
	}
	.js-flickityCustom .grid>div{
		padding:1.5em 2%
	}
	.js-flickityCustom .grid>div:nth-of-type(2n){
		padding-top:1em;
		width:42%
	}
	.js-flickityCustom .grid>div:nth-of-type(2n-1){
		padding-right:3%;
		width:47%
	}
	#content .js-flickityCustom .hero>div.text,header:not(.float)+#content .hero>div.text{
		height:100%;
		padding:0 2em
	}
	#content .hero iframe{
		display:none
	}
	.grid.nav nav ul li:first-child,.grid.nav nav ul li:last-child{
		padding:.35em 0
	}
	.contact>p{
		display:block
	}
}
@media only screen and (max-width:767px){
	.menu-on #campusAlert{
		width:100%;
		z-index:1
	}
	body,html{
		height:auto
	}
	body{
		background-image:none!important
	}
	h1{
		font-size:2em
	}
	.roof{
		position:relative
	}
	.mobile header>div nav{
		display:none;
		z-index:1
	}
	.roof.fixed{
		box-shadow:0 0 1em rgba(0,0,0,.2)
	}
	#sitename.large>div,#sitename>div{
		width:auto
	}
	#sitename.large>a,#sitename>a{
		display:block;
		max-width:100%;
		padding:1em 0 .5em;
		text-align:left;
		width:auto
	}
	#sitename img,#sitename.large img{
		max-width:50%;
		width:auto
	}
	#sitename h1{
		line-height:1.15em;
		padding-bottom:.125em
	}
	#sitename h2{
		margin-top:0
	}
	.roof.fixed+#sitename,.roof.fixed+#sitename h2,header:not(.float) .roof.fixed+#sitename{
		padding-bottom:0
	}
	#content,#sitename{
		padding-top:1em;
		transition:none
	}
	#content>.breadcrumbs:first-child{
		padding-top:0
	}
	#content .hero,#content>.js-flickityCustom.tall:first-child,#content>.js-flickityCustom:first-child,#content>.js-flickityCustom:first-child .flickity-viewport,#content>.js-flickityCustom:first-child .hero,#content>.tall,header.float+#content,header.float+#content .hero,header.float+#content>.js-flickityCustom:first-child{
		background-position:50%;
		height:auto!important;
		min-height:400px
	}
	#content .hero .box h1{
		font-size:1.5em
	}
	header nav{
		display:none
	}
	#container>header.float{
		position:static
	}
	.roof:not(.invert){
		background-color:#fff
	}
	.roof div{
		display:block;
		padding-bottom:.5em
	}
	.roof a.wordmark,.roof.invert .wordmark{
		margin:10px 0 6px;
		min-width:0;
		width:85%
	}
	.roof form{
		display:block;
		max-width:none;
		padding:0;
		position:relative;
		right:auto;
		top:auto;
		width:100%
	}
	.roof .menu-btn+form{
		right:0
	}
	input[placeholder=Search]{
		background-size:auto 75%
	}
	.roof input[placeholder=Search],input[placeholder=Search]{
		background-image:url(../images/icon-magnify.png);
		background-position:98%;
		background-repeat:no-repeat;
		font-size:16px
	}
	.roof input[placeholder=Search]{
		background-size:auto 80%;
		padding-bottom:.35em;
		padding-top:.35em
	}
	.search button{
		display:none;
		height:100%;
		margin:0
	}
	.search input[name=site]{
		float:left;
		margin-top:.65em
	}
	.search label.searchSite span{
		float:none
	}
	a.external:after{
		opacity:1
	}
	nav ul a{
		letter-spacing:.05em
	}
	nav.tree div>ul>li:not(.secondary)>a{
		letter-spacing:.075em
	}
	.float .roof.fixed:not(.invert){
		border-bottom:1px solid rgba(0,0,0,.2)
	}
	header:not(.float) #sitename{
		margin:0 2%;
		padding-left:0;
		padding-right:0
	}
	nav a{
		-webkit-tap-highlight-color:transparent
	}
	nav.tree{
		right:-85%;
		width:85%
	}
	nav.tree li a{
		padding-right:3em
	}
	.roof label.searchSite{
		display:none;
		left:0;
		position:relative;
		text-align:left;
		top:2px!important;
		width:auto
	}
	.scrolldown{
		display:none
	}
	nav.tree div>ul{
		width:100%
	}
	div.invert .menu-btn,nav.tree.b .menu-btn{
		margin-top:13px
	}
	nav.tree a.arrow{
		left:auto;
		right:0
	}
	#content .hero>div.text{
		bottom:auto!important;
		height:calc(100% - 1em);
		padding-top:.5em
	}
	#content .hero .box.left,#content .hero .box.right{
		background-color:hsla(0,0%,100%,.85);
		bottom:0;
		display:block;
		left:auto;
		right:auto;
		width:auto
	}
	#content>.tall p.caption{
		bottom:0;
		padding-right:2%;
		width:100%
	}
	.content,.grid,.grid>div{
		display:block;
		padding-bottom:2em;
		padding-top:2em
	}
	.column2.boxes>div,.column2>div,.column3.boxes>div,.column3>div,.column4.boxes>div,.column4>div,.content .sidebar,.content>div:first-child,.js-flickityCustom .grid>div:nth-of-type(2n),.js-flickityCustom .grid>div:nth-of-type(2n-1){
		display:block;
		flex:none;
		margin:0;
		padding-left:0;
		padding-right:0;
		width:auto
	}
	.column2>div:nth-of-type(2n-1),.column4>div:nth-of-type(2n-1),.column4>div:nth-of-type(4n){
		margin-right:0;
		padding-right:0;
		width:auto
	}
	.grid .list{
		padding:0
	}
	.grid .list:not(:first-child) h2{
		padding-top:1em
	}
	.grid .list:not(:last-child) ul,.grid div:not(.list)+.list ul{
		border-bottom:0
	}
	.boxes{
		display:block;
		overflow:hidden;
		padding-bottom:0;
		padding-top:1em
	}
	.boxes>div{
		font-size:inherit;
		margin-bottom:1em!important;
		padding:1em 4%!important
	}
	.column4.boxes>div{
		margin-right:0
	}
	.grid:not(.boxes)>div:first-child{
		padding-top:0
	}
	.grid:not(.boxes)>div:last-child{
		padding-bottom:0
	}
	.grid.photos{
		padding:2em 0 0;
		width:auto
	}
	.column2:not(.photos) div.photo,.column3:not(.photos) div.photo,.column4:not(.photos) div.photo{
		margin:1em 0!important
	}
	.grid.photos h1{
		padding-left:2%;
		padding-right:2%
	}
	.grid.photos>div>a div,.grid>div.photo>a div{
		padding:1.15em 5%;
		width:90%
	}
	.grid.nav>div{
		padding-bottom:2em
	}
	.js-flickityCustom{
		border:0
	}
	.js-flickityCustom .grid>div:nth-of-type(2n){
		font-size:100%;
		padding:0 2% 3em
	}
	.js-flickityCustom .grid>div:nth-of-type(2n-1){
		padding:1em 2%!important
	}
	#content>div.content:first-child,#content>div.grid:first-child:not(.invert){
		padding-top:0
	}
	.content .sidebar{
		margin-top:2em
	}
	.content .sidebar div{
		font-size:inherit
	}
	.content .sidebar div.left-rule{
		border-left:0;
		padding:0
	}
	.content .sidebar div.simple{
		margin-top:2em;
		padding:0
	}
	div:not(.hero)>.caption{
		float:none;
		max-width:100%
	}
	div:not(.hero)>.caption,div:not(.hero)>.caption img{
		margin-left:0;
		margin-right:0
	}
	.collapsed a:focus,.collapsed a:hover{
		color:#c00
	}
	.news.column2 div.img,.news.column3 div.img,.news.column4 div.img{
		height:225px
	}
	.news.blue a>:not(div),.news.darkgreen a>:not(div),.news.darkgrey a>:not(div),.news.gold.invert a>:not(div),.news.green a>:not(div),.news.grey a>:not(div),.news.red a>:not(div),.news.teal a>:not(div){
		padding-left:3%;
		padding-right:3%
	}
	.news>div{
		padding-bottom:0
	}
	.loadmore{
		padding:0;
		width:auto
	}
	body:not(.no-js) .contact>p a{
		margin-bottom:1em;
		text-indent:0
	}
	.contact span{
		display:block
	}
	.contact address{
		display:block;
		padding:1em 0 0;
		width:auto
	}
	.thumb img{
		margin-bottom:15px
	}
	.flickity-page-dots{
		display:none
	}
}
.hidden{
	display:none!important
}
.hidden,.invisible{
	visibility:hidden!important
}
#wordmarkPrint,img[alt=print]{
	display:none
}
.spinner{
	border:none!important;
	height:40px!important;
	margin:100px auto;
	position:relative;
	width:40px!important
}
.double-bounce1,.double-bounce2{
	animation:sk-bounce 2s ease-in-out infinite;
	background-color:#d50017;
	border-radius:50%;
	height:100%!important;
	left:0;
	position:absolute;
	top:0;
	width:100%!important
}
.double-bounce2{
	animation-delay:-1s
}
@-webkit-keyframes sk-bounce{
	0%,to{
		transform:scale(0)
	}
	50%{
		transform:scale(1)
	}
}
@keyframes sk-bounce{
	0%,to{
		transform:scale(0)
	}
	50%{
		transform:scale(1)
	}
}
.no-results-message{
	flex:0 0 100%
}
