/* ============================ CSS BELOW WILL OVERRIDE styles.css RULES (AS LONG AS SELECTORS ARE EXACTLY THE SAME) * ============================*/

/* == Colors == */

.toggleBtn span {
    color:#575757;
}

.utility .toolsmenu span.title {
    color:#575757;
}

label[for="searchtoggle"] span {
    color:#575757;
}

.gray {
    color:#575757;
}

/* === Typography === */

 .intro.wysiwygContent p {
	 font-family: 'Roboto Slab', serif !important;
	 font-size: 1.125em !important;
	 margin: 12px 0 24px 0;
}

 h1 {
	 font-family: 'Roboto Slab', Georgia, Times, "Times New Roman", serif;
	 font-size: 2rem;
	 color: #AA1010;
	 line-height: 1.3;
}

 h2 {
	 font-size: 1.725rem;
	 line-height: 1.25;
	 font-family: 'Raleway', sans-serif;
	 letter-spacing: .01em;
	 margin-bottom: 10px;
	 font-weight:400;
	 color: #3a3a3a;
}

 h3 {
	 line-height:1.5em;
	 color:#AA1010;
	 font-weight:500;
}

 h4 {
	 line-height:1.35;
}

 h5 {
	 line-height:1.45;
}

.thin {
    font-size: .9rem;
}

.columns a {
    text-decoration: underline;
}

 .columns .content h5 {
	 font-size:1rem;
}

 .special-title {
	 color: #AA1010;
	 font-weight: 300;
	 font-size: 1.85rem;
}

.accordion h2 {
    margin-bottom:25px;
}

.home-acc-title {
    font-weight:600 !important;
    font-size:1.125rem !important;
    padding-bottom:5px;
    padding-top:5px;
}

.wysiwygContent blockquote {
    font-weight: 100;
    font-size: 1.25em;
    line-height: 1.6;
}

 .wysiwygContent p {
	 margin: 12px 0 16px 0;
}

 .wysiwygContent h3 {
	 margin-bottom:.5rem;
}
.widget .wysiwygContent ul {
    list-style: disc;
}
 .columns .content h3 {
	 font-size:1.15em;
	 margin-bottom: .35em;
	 margin-top: .5em;
	 font-weight: 600;
}

.special-header {
    font-size:1.3rem;
    line-height:2rem;
}

.special-p {
    font-size:.9rem;
}

.left-align figcaption {
    font-size: .75rem;
}

/* ============================ LAYOUT * ============================*/

.center {
    text-align:center !important;
}

.hidden {
	display:none;
}

/* ============================ ELEMENTS * ============================*/

/* === Figures and Captions === */

figure {
    background:#f4f4f4;
    border-bottom:solid 3px #cdcdcd;
    margin-bottom:25px;
}

figcaption {
    padding:1.25% 2% 2% 2%;
    font-size:.8rem;
    line-height:1.5;
}

.mfp-title, .mfp-counter {
	padding: 0 15px 0 15px;
	color:#222222;
}

.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
	color:#222222;
	right:-3px;
}

/* === Columns === */

 .content .columns img {
	 margin-bottom: 5px;
}

.columns .popupYoutube img {
    width: 80%;
    margin: auto;
}

/* === Numbers Info for Interio Pages === */

.info-title {
	font-size: 3.5rem;
	font-weight: 400;
	font-family: Roboto Slab;
	padding: 10px;
	color: #aa1010;
}

.info-content {
	margin-top: 5px; 
	border-top: 2px solid #cdcdcd;
	font-weight: 300;
	font-size: 1.25rem;
}

.top10 {
	margin-top:10px;
}

.top20 {
	margin-top:20px;
}

.top40 {
	margin-top:40px;
}

.top60 {
	margin-top:60px;
}

.top80 {
	margin-top:80px;
}

/* === Widgets === */

.widget .wysiwygContent p {
    font-family: 'Nunito Sans', sans-serif;
}


/* ============================ Alert * ============================*/
/* Alert Message Button and Icons */

#alertButton.orangeBg:focus {
  border: 1px solid #222;
}

.toggleAlertBtn.orangeBg:before {
  padding: 11px 18px;
  color: #222;
}

.orangeBg .alertIcon:before {
  color: #222;
}
.alert.orangeBg .alertIcon:before {
  padding: 15px 31px;
}
.toggleAlertBtn.redBg:before, .alert.redBg .alertIcon:before {
  content: '\f071';
}
.toggleAlertBtn.orangeBg:before, .alert.orangeBg .alertIcon:before {
  content: '\f129';
}

.orangeBg .alertMessage {
  color: #222;
}
.orangeBg .alertMessage a {
  color: #222;
}

/* Alert Message Colors */

.toggleAlertBtn.orangeBg, .alert.orangeBg {
  background-color: #FF8E52;
  color: #222;
}

/* === Other === */


 .divider {
	 margin: 1em 0 2em 0;
}

 a.cta-button, .cta-button, a.btn, button.btn {
	 font-size:.925rem;
}

 hr {
	 border-top: 3px solid #ececec;
	 border-left: #ffffff;
	 border-right: #ffffff;
	 border-bottom: #ffffff;
	 background-color: #ffffff;
	 clear: both;
	 margin: 40px 0px 40px 0px;
	 width: 103%;
	 margin-left: -1.5%;
}

@media screen and (max-width: 960px) {
 .carousel .gradientOverlay {
	 background: linear-gradient(rgba(0, 0, 0, 0) 7%, rgb(0, 0, 0) 35%) !important;
}

.home .carousel .gradientOverlay {
	 background: linear-gradient(rgba(0, 0, 0, 0) 7%, rgb(0, 0, 0) 40%) !important;
}
}

 .color-border {
	 border: 1px solid #cdcdcd;
	 padding:5px;
	 margin:10px !important;
	 text-align:center;
}

 .color-block {
	 height: 70px;
	 width: 70px;
	 margin:auto;
}

 .blurb a:not(.btn) {
	 color: #f4f4f4 !important;
	 text-decoration: underline !important;
	 font-weight: 700;
}

 .blurb a:not(.btn):hover {
	 color: #f9f9f9 !important;
}

/* Dots */
ul.slick-dots > li {margin: 0 5px;}
ul.slick-dots li button:hover, ul.slick-dots li button:focus { border:2px solid #aa1010;border-radius:20px;padding:0px;}
ul.slick-dots li.slick-active button:before { color: #aa1010;padding:0px;}


/* ============================ Autocomplete for Search * ============================*/
.twitter-typeahead {
   flex-grow: 2;
   width: 95%;
}

.tt-menu {
    left: 0 !important;
    width: 75% !important;
}

/* ===== Home Programs Search ===== */

.program-search-input {
	width: 65%;
    padding: 1rem 1.5rem;
    border: none;
    color: #222222;
    margin-right: -4px;
    outline: 2px solid #cdcdcd;
    outline-offset: -1px;
}

.program-search-btn {
	color: #ffffff !important;
    width: 30%;
    font-weight:600 !important;
    height: 56px;
    border: 3px solid #aa1010 !important;
    font-size: .825rem !important;
    padding: 1rem 1.5rem !important;
}

.explore-programs-right {
	border-left: solid 2px #e3e3e3;
    padding-left: 30px;
}

@media screen and (max-width:499px) {
	.explore-programs-right {
	border-left: none;
    padding-left: 0px;
    }

    .program-search-btn {
    width:100%;
    }
    .program-search-input {
    width:100%;
    }
}

@media screen and (min-width:500px) and (max-width:768px) {
	.explore-programs-right {
	border-left: none;
    padding-left: 0px;
    }

    .program-search-btn {
    width:40%;
    }

    .program-search-input {
    width:50%;
    }
}

@media screen and (min-width:769px) {
    .program-search-btn {
    width:35%;
    }

    .program-search-input {
    width:50%;
    }
}

/* ===== Academics Programs Search ===== */

.academics-program-search {
	font-size: .825rem;
    margin: 20px 0px;
}

.academics-program-search-label {
	margin-top: 20px;
    width: 20%;
}

.academics-program-search-btn {
	background: #222222;
    padding: 14px 40px;
    text-align: center;
    color: #ffffff;
    float: left;
    font-weight: 600;
    border: 3px solid #222222;
}

.academics-program-field {
	font-size: 1.25rem;
    line-height: 1.75;
    font-family: 'Nunito Sans', sans-serif;
    letter-spacing: .01em;
    padding: .5rem 1rem;
    width: 40%;
    font-weight: 400;
    color: #3a3a3a;
    border: 2px #cdcdcd solid;
}


/* ============================ Formstack Form Overrides * ============================*/
 .fsBody .fsLabel, .fsBody label {
	 color: #222222 !important;
	 background: none !important;
}

 label.fsOptionLabel {
	 background: none !important;
	 color: #222222 !important;
}

.fsFieldFocused:not(.fsValidationError) {
background-color: yellow;
}

/* ============================ Office of the President * ============================*/
 .hero-text-box {
	 position: relative;
	 min-height: 50vh;
	 display: flex !important;
}

.hero-text-box-right:before {
	 content: "";
	 position: absolute;
	 top: 1.75em;
	 bottom:0;
	 left: -1920px;
	 width: 1000%;
	 height: 95%;
	 background-image: linear-gradient(120deg,#dee2e6,#f2f2f2);
}

.hero-text-box > * {
	 z-index: 100;
}

.featured-image-label {
	 position: relative;
	 font-size: 1.15rem;
	 bottom: 6rem;
	 left: 0px;
	 padding-top: 12px;
	 padding-bottom: 10px;
	 background-color: #aa1010;
	 color: white;
	 padding-left: 20px;
	 width: 40%;
	 min-height: 50px;
	 padding-right: 20px;
	 font-weight:600;
}

.featured-image {
	 position: relative;
	 float:right;
}

.featured-quote {
	 position: absolute;
	 top: 12rem;
	 color: #222222;
	 font-size: 1.7rem;
	 line-height: 2rem;
	 font-weight: 600;
	 z-index: 1;
	 max-width: 45%;
	 left:10%;
	 background: #cdcdcd5c;
	 padding: 2%;
}

.featured-quote:before {
	 content: open-quote;
	 display: inline;
	 height: 0;
	 line-height: 0;
	 left: -5px;
	 position: relative;
	 top: 30px;
	 color: #575757;
	 font-size: 3em;
}

.featured-quote:after {
	 content: close-quote;
	 display: inline;
	 height: 0;
	 line-height: 0;
	 left: 0px;
	 position: relative;
	 top: 35px;
	 color: #575757;
	 font-size: 3em;
}

@media screen and (max-width: 776px) and (min-width: 547px) {
	 .featured-quote {
		 position: relative;
		 top: 32rem;
		 color: #222222;
		 font-size: 1.5rem;
		 line-height: 2rem;
		 font-weight: 600;
		 z-index: 1;
		 max-width: 80%;
		 padding-bottom:25px;
		 left:20%;
		 background: #cdcdcd5c;
		 padding: 2%;
	}
	 .featured-image {
		 position: relative;
		 top:-6rem;
		 float:right;
	}
}
 @media screen and (max-width: 546px) and (min-width: 376px) {
	 .featured-quote {
		 position: relative;
		 top: 22rem;
		 color: #222222;
		 font-size: 1.35rem;
		 line-height: 1.8rem;
		 font-weight: 600;
		 z-index: 1;
		 max-width: 90%;
		 padding-bottom:5px;
		 left:5%;
		 background: #cdcdcd5c;
		 padding: 5%;
		 border-bottom: 3px solid #cdcdcd;
	}
	 .featured-image {
		 position: relative;
		 top:-7rem;
		 float:right;
	}
	 .featured-image-label {
		 font-size:1rem;
		 width: 52%;
		 bottom: 5rem;
	}
}
 @media screen and (max-width: 375px) {
	 .featured-quote {
		 position: relative;
		 top: 19rem;
		 color: #222222;
		 font-size: 1.35rem;
		 line-height: 1.8rem;
		 font-weight: 600;
		 z-index: 1;
		 max-width: 90%;
		 padding-bottom:0px;
		 left:5%;
		 background: #cdcdcd5c;
		 padding: 5%;
		 border-bottom: 3px solid #cdcdcd;
	}
	 .featured-image {
		 position: relative;
		 top:-7rem;
		 float:right;
	}
	 .featured-image-label {
		 font-size:1rem;
		 width: 60%;
		 bottom: 5rem;
	}
}
 
 
/* ===== Marketing Page ===== */

.home.marketingPage .headlineListing {
    width: 100%;
}

.home.marketingPage .CTAButtons {
    border:none;
}

/* Call to Action Buttons */

.CTAButton-Alt {
	margin: 5px;
    border:5px solid #000000;
    font-family: 'Roboto Slab';
    font-weight: bold;
}

.CTAButton-Alt-Link {
    color: #ffffff !important;
    padding: 10px;
    margin:5px !important;
    background:#AA1010;
    text-align:center;
}

.CTAButton-Alt a {
    text-decoration:none !important;
    color:#ffffff !important;
    display:table;
    width:100%;
}

.CTAButton-Alt-Link:hover {
    background: #000000;
}

.fa-arrow-circle-right-alt {
	color:#ffffff;
	font-size:1.75em;
	display:table-cell;
	vertical-align:middle;
	text-align:center;
	padding-left: 10px;
}

.fa-arrow-circle-right-alt:before {
	content: "\f0a9";
}

/* Fullwidth Version */

.CTAButton-fw-alt {
    margin: 5px;
    border: 5px solid #000000;
    font-family: 'Roboto Slab';
    font-weight: bold;
}

.CTAButton-fw-alt-link {
    background: #AA1010;
    margin: 5px !important;
    padding: 10px;
    text-align: center;
}

.CTAButton-fw-alt a {
    text-decoration: none !important;
    color: #ffffff !important;
    display: block;
}

.CTAButton-fw-alt a:hover {
    background: #000000;
}

.fa-arrow-circle-right-fw-alt {
    color:#ffffff;
    font-size:1.75em;
    vertical-align:middle;
    text-align:center;
    padding-left: 10px;
}

.fa-arrow-circle-right-fw-alt:before {
	content: "\f0a9";
}

.home.marketingPage .sideBlurb p {
    margin-top:10px;
    margin-bottom:25px;
}

.color-tag {
    padding:8px;
    background:#ffffff;
    font-size:.875rem;
}

/* ===== Timeline ===== */

.history-tl-container{
    font-family: "Roboto Slab",sans-serif;
    width: 100%;
    margin: auto;
    display: block;
    position: relative;
}
.history-tl-container ul.tl{
    margin:20px;
    padding:0;
    display:block;
}
.history-tl-container ul.tl li{
    list-style: none;
    float: left;
    width: 25%;
    margin: 20px auto 30px auto;
    min-height: 180px;
    background: rgba(244, 244, 244, 0.45);
    border-top: 1px dashed #cdcdcd;
    padding: 40px 30px 40px 30px;
    position: relative;
}
.history-tl-container ul.tl li:last-child{ border-left:0;}
.history-tl-container ul.tl li::before{
    position: absolute;
    left: 50px;
    top: -17px;
    content: " ";
    margin-left: 0;
    border: 8px solid rgba(255, 255, 255, 0.6);
    border-radius: 500%;
    background: #AA1010;
    height: 20px;
    padding: 0;
    width: 20px;
    transition: all 500ms ease-in-out;

}
.history-tl-container ul.tl li:hover::before{
    border-color:  #222222;
    transition: all 1000ms ease-in-out;
}
ul.tl li .item-title{font-weight:700;
}
ul.tl li .item-detail{
    color:#575757;
    font-size:12px;
    font-family: "Nunito Sans",sans-serif;
}
ul.tl li .timestamp{
    color:#575757;
    position: relative;
    width:100px;
    text-align: left;
    font-size: 12px;
}

@media screen and (max-width: 575px) {

.history-tl-container{
  font-family: "Roboto Slab",sans-serif;
  width:100%;
  margin:auto;
  display:block;
  position:relative;
}
.history-tl-container ul.tl{
    margin:20px 0;
    padding:0;
    display:inline-block;
}
.history-tl-container ul.tl li{
    list-style: none;
    margin: auto;
    float: none;
    width: 50%;
    margin-left: 160px;
    min-height: 50px;
    border-top: none;
    background: none;
    border-left: 1px dashed #cdcdcd;
    padding: 0 0px 75px 30px;
    position: relative;
}
.history-tl-container ul.tl li:last-child{ border-left:0;}
.history-tl-container ul.tl li::before{
    position: absolute;
    left: -18px;
    top: -5px;
    content: " ";
    border: 8px solid rgba(255, 255, 255, 0.6);
    border-radius: 500%;
    background: #aa1010;
    height: 20px;
    width: 20px;
    padding: 0;
    margin-left: 0;
    transition: all 500ms ease-in-out;

}
.history-tl-container ul.tl li:hover::before{
    border-color:  #222222;
    transition: all 1000ms ease-in-out;
}
ul.tl li .item-title{font-weight: 700;
}
ul.tl li .item-detail{
    color: #575757;
    font-size:12px;
    font-family: "Nunito Sans",sans-serif;
}
ul.tl li .timestamp{
    color: #575757;
    position: absolute;
    width: 100px;
    left: -88%;
    top: 4px;
    text-align: right;
    font-size: 12px;
}
}

/* START ----------------------------------- ACCESSIBILITY STYLES */

.screenreader {
    position: absolute;
    left: 0;
}

.skip{position:absolute;top:-1000px; left:15px; width:auto; height:auto; text-align:left; overflow:hidden; text-decoration:none; -webkit-transition:.25s; -moz-transition:.25s; transition:.25s}
.skip:active,.skip:focus,.skip:hover{ left:15px; top:15px; width:auto; height:auto; overflow:visible; background:#000000; padding:15px; color:#FFFFFF; font-weight:bold; font-size:14px; box-shadow:0 0 10px 0 #000; z-index:10001; text-decoration:none !important}
/* END ------------------------------------- ACCESSIBILITY STYLES */