/*--------- GENERAL STYLES ----------*/
 strong {
	 font-weight: 600;
}
 .pullquote strong {
	 font-weight: 900;
}
 em {
	 font-style: italic;
}
 .center {
	 text-align: center;
}
 .left {
	 text-align: left;
}
 h3 {
	 font: normal bold 1.375rem "Oswald", sans-serif;
	 color: #000;
	 line-height: 1.5;
	 text-transform: inherit;
}
 h4 {
	 font: normal normal 1.1rem "Open Sans", sans-serif;
	 line-height: 1.5;
	 text-transform: none;
	 font-style: normal;
	 margin: 0 0 0.5rem 0;
	 color: #500000;
	 font-weight: 500;
}
 .basic-content-row {
	 margin: 15px 0px;
}
 section.basic-content-background-image {
     background-repeat: no-repeat !important;
     background-size: cover !important;
     background-position: center !important;
}
 section.section-wrap.flex-rows > .basic-content-rows {
	 display: flex;
	 justify-content: space-between;
	 gap: 50px;
}

 .basic-content-text .html-content {
     padding: 0 !important;
     margin-bottom: 20px;
}
 .basic-content.black .html-content {
     padding: 0 !important;
     margin-bottom: 20px;
     color: #000000;
}
 .basic-content.maroon .html-content{
     padding: 0 !important;
     margin-bottom: 20px;
     color: #500000;
}
 .basic-content.white .html-content {
     padding: 0 !important;
     margin-bottom: 20px;
     color: #FFFFFF;
}
 .basic-max-width .main-internal div {
	 max-width: 900px !important;
}
#publication-type-selector {
    background-origin: padding-box !important;
    background-position: right 0.5rem center !important;
    padding-right: 1.5rem; 
}

/*-------- GLOBAL STYLES ---------*/
 .main-internal {
	 max-width: 75rem;
	 margin-left: auto;
	 margin-right: auto;
	 position: relative;
	 z-index: 2;
}
 .main-internal-news {
	 max-width: 75rem;
	 margin-left: auto;
	 margin-right: auto;
	 position: relative;
	 z-index: 2;
	 padding: 2rem 0 2rem 0;
	 padding-top: 0;
	 padding-bottom: 0;
}
 .main.is-news section.section-wrap {
	 padding-top: 0;
}
 .main.is-news .basic-row-content {
	 margin-top: 0;
}
 .main-wrapper {
	 display: flex;
	/*we need max-width: 100% this so all sections take up the full width of the page*/
	 max-width: 100%;
	 margin-left: auto;
	 margin-right: auto;
	 margin-bottom: 0;
	 min-width: 0;
	/* added this so blogs will not fill whole screen */
}
 .main.is-news .main-wrapper, .main-wrapper.has-sidebar {
	 max-width: 75rem;
}
 .section-wrap {
	 clear: both;
}
 .main-wrapper section.main-content {
	 flex: 0 1 100%;
}
 section.section-wrap--shade {
	 background: #f6f6f6;
}

 section.section-wrap--color {
	 background: #3C0001; !important
}

 section.section-wrap.section-wrap--dark, section.section-wrap--dark, section.section-wrap.section-wrap--dark-shade, section.section-wrap--dark-shade {
	 background: #eaeaea;
	 color: #000;
}
 .section-wrap-small-padding {
	 padding: 0.5rem 0.5rem!important;
}
 .pt-none {
	 padding-top: 0px !important;
}
 .pb-none {
	 padding-bottom: 0px !important;
}
 .mt-none {
	 margin-top: 0px !important;
}
 .mb-none {
	 margin-bottom: 0px !important;
}
/*---------TEASER CREDITS----------*/
 .teaser-credits.reverse .collection__items {
	 align-items: flex-end;
}
 .teaser-credits .collection__items .teaser__body:has(.superhead) {
	 margin-top: 30px;
}
 .teaser-credits .collection__items .teaser__body .superhead {
	 font-size: 18px;
	 line-height: 1.5;
	 letter-spacing: normal;
	 text-align: left;
	 color: #500000;
}
/*---------UPDATE BUTTONS----------*/
 .button, .pagination ul li a, button, input[type=button], input[type=reset], input[type=submit] {
	 font-family: 'Oswald', sans-serif;
	 font-size: 1rem;
	 font-style: normal;
	 line-height: 1.5;
}
 .button-secondary {
	 border: solid 1px #a7a7a7;
	 background-color: #fff;
	 color: #500000 !important;
}
 .button-secondary:hover {
	 background-color: #500000;
	 color: #fff !important;
}
/*------------ FACULTY DIRECTORY LINKS-------------- */
.faculty-directory-intro .list-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    
    @media screen and (max-width: 800px) {
        display: block;
    }
}

.icon-row-hidden .icon-row {
    display: none;
}

 .faculty-directory-links {
	 display: flex;
	 flex-wrap: wrap;
}
 .faculty-directory-links .faculty-directory-link {
	 min-width: 220px;
	 height: 100%;
	 display: flex;
}
 .faculty-directory-links .faculty-directory-link img {
	 width: 24px;
	 height: 26px;
	 margin-right: 5px;
}
 .text-center {
	 text-align: center;
}
 cite {
	 font-size: 1.2em;
	 color: #500000;
}
 .pullquote cite {
	 border-top: none;
}
 .pullquote .pullquote__quote:before {
	 font-size: 18.625rem;
	 line-height: 12.625rem;
	 font-family: serif;
	 left: -60px;
	 top: -20px;
}
 section.blockquote {
	 padding-top: 100px;
	 padding-bottom: 100px;
}
 section.blockquote > * {
	 /*max-width: 75rem;*/
}
 .hubspot-form-wrapper h2 {
	 margin-bottom: 1.5rem;
}
/*----------PAGE HEADER------------*/
 header.page-header.page-header--shaded {
	 background-color: #f6f6f6;
	 margin-bottom: 0;
}
 header.page-header .page-header__wrapper .breadcrumbs {
	 margin-bottom: inherit;
}
 header.page-header .page-header__wrapper, header.page-header.page-header--no-dots .page-header__wrapper {
	 padding: 2.5rem;
}
 header.page-header .page-header__wrapper .page-header__page-title {
	 margin: 2rem 0;
}
 header.page-header .page-header__wrapper .page-header__page-title.full-length {
	 flex: 1;
	 width: 100%;
	 margin-bottom: 0;
}
 header.page-header .page-header__wrapper .page-header-card-content {
	 padding: 20px;
	 background-color: #fff;
	 box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
	 height: max-content;
	 flex: 0 1 28%;
	 margin-top: 2rem;
}
header.page-header.landing-hero .page-header__wrapper .page-header-card-content.hero-right-side-image-block {
    box-sizing: border-box;
    padding: 0px;
    margin: 0;
    background: none!important;
    height: 100%;
    width: 100%;
    flex: 0 1 30%;
    position: relative;
    display: flex;
    justify-content: center;
    overflow: hidden;
}

header.page-header.landing-hero .page-header__wrapper .page-header-card-content.hero-right-side-image-block img {
    position: absolute;
    min-width: 430px;
    min-height: 500px;
    bottom: -100px;
}

 header.page-header .headline-group {
	 display: flex;
	 flex-wrap: wrap;
	 flex-direction: column-reverse;
}

.content--white * {
    color: #fff;
}
.content--black * {
    color: #000;
}
.content--maroon * {
    color: #520001;
}

 header.page-header h2.superhead {
	 font-family: 'Oswald', sans-serif;
	 font-weight: normal;
	 font-stretch: normal;
	 font-style: normal;
	 letter-spacing: normal;
	 color: #3e3e3e;
	 margin-bottom: 1rem;
	 text-transform: uppercase;
	 width: 100%;
	 font-size: 1.5rem;
}
 header.page-header .page-header__wrapper .formatted-text {
	 margin-top: 1.875rem;
	 padding-right: 20px;
}
 header.page-header:not(.page-header--dark) .page-header__wrapper .page-header__page-title .headline-group.headline-group--fancy .head:after {
	 border: none;
}
 header.page-header:not(.page-header--dark, .page-header--shaded) .page-header__wrapper .page-header__page-title .headline-group.headline-group--fancy.show-border .head:after {
	 border-bottom: 2px solid #fff;
	 margin-bottom: 10px;
	 padding-bottom: 10px;
	 content: "";
	 position: absolute;
	 left: 0;
	/*top: 130%;
	 */
	 width: 60%;
	 bottom: 0;
}

 header.page-header.page-header--shaded .page-header__wrapper .page-header__page-title .headline-group.headline-group--fancy.show-border .head:after {
     border-bottom: 2px solid #520001;
     width: 60%;
 }
 header.page-header .page-header-buttons {
	 margin-top: 1.875rem;
	 display: flex;
	 flex-wrap: wrap;
	 gap: 15px;
}
 header.page-header .page-header-buttons .button {
	 margin-bottom: 0;
}

 header.page-header .breadcrumbs-wrapper {
	 padding: 1rem 2.5rem;
	 background-color: #fff;
}
 header.page-header .breadcrumbs-wrapper .breadcrumbs {
	 margin: 0 auto;
	 max-width: 75rem;
	 padding: 0;
}
 header.page-header .directory-icons-wrapper {
	 background-color: #f6f6f6;
	 width: fit-content;
	 padding: 20px;
	 margin-top: 2rem;
}
 header.page-header .directory-icons-wrapper h2 {
	 font-size: 1rem;
	 color: #3e3e3e;
	 text-transform: uppercase;
	 margin-bottom: 15px;
}
 header.page-header .directory-icons-wrapper .directory-icons {
	 display: flex;
	 flex-wrap: wrap;
	 justify-content: flex-start;
}
 header.page-header .directory-icons-wrapper .directory-icons .directory-icon {
	 display: inline-block;
	 text-align: center;
	 width: max-content;
	 margin-right: 20px;
}
 header.page-header .directory-icons-wrapper .directory-icon-label {
	 font-family: sans-serif;
	 line-height: 2.25;
	 color: #000;
	 padding-bottom: 0;
}

/*--------Landing Hero specific styles-----------*/
header.page-header.landing-hero {
    min-height: 530px;
    height: 530px;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    color: #fff!important;
    background-color: #000!important;
}

header.page-header.landing-hero.banner-medium {
    min-height: unset;
    max-height: 350px;
}

header.page-header.landing-hero.banner-medium .titleBackground{
    background-position: top;
}

header.page-header.landing-hero .breadcrumbs-wrapper {
    width: 100%;
    z-index: 1;
}

header.page-header.landing-hero h1,
header.page-header.landing-hero h2.superhead {
    color: #fff;
}

header.page-header.landing-hero.no-background {
    background-color: #f6f6f6;
}

header.page-header.landing-hero.no-background h1.head {
    color: #500000;
}

header.page-header.landing-hero.no-background h2.superhead {
    color: #3e3e3e;
}

header.page-header.landing-hero.maroon, 
header.page-header.landing-hero.maroon h1.head,
header.page-header.landing-hero.maroon h1.head:after,
header.page-header.landing-hero.maroon h2.superhead, 
header.page-header.landing-hero.maroon .formatted-text {
    color: #500000!important;
    border-color: #500000!important;
}

header.page-header.landing-hero.white, 
header.page-header.landing-hero.white h1.head,
header.page-header.landing-hero.white h1.head:after,
header.page-header.landing-hero.white h2.superhead, 
header.page-header.landing-hero.white .formatted-text {
    color: #fff!important;
    border-color: #fff!important;
}

header.page-header.landing-hero.black, 
header.page-header.landing-hero.black h1.head,
header.page-header.landing-hero.black h1.head:after,
header.page-header.landing-hero.black h2.superhead, 
header.page-header.landing-hero.black .formatted-text {
    color: #000!important;
    border-color: #000!important;
}

header.page-header.landing-hero .titleBackground {
    height: 100%;
    width: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: absolute;
    /*opacity: 0.8;*/
}

header.page-header.landing-hero .page-header__wrapper {
    height: 100%;
    max-width: 75rem;
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    width: 100%;
    padding: 0;
}

.publication-title {
    display: flex;
    justify-content: flex-start;
    margin: 0px auto;
}

 section.section-wrap.section-wrap--dots {
	 position: relative;
	 padding-top: inherit;
}
 section.section-wrap.section-wrap--dots:before {
	 display: none;
}
 section.section-wrap.section-wrap--angled {
	 background: none;
}
 ul.body-accordion-list > li {
	 padding: 1.375rem;
}
 .maroon-text {
	 color: #500000;
}
 .maroon-text.header-text {
	 font-size: 18px;
	 font-weight: 500;
}
 table.table-no-borders tbody tr td {
	 border: none;
	 padding-left: 0px;
}
/*-----------LIBRARY SEARCH-------------*/
 .library-tab {
	 overflow: hidden;
}
 .library-tab button {
	 background-color: #d1d1d1;
	 float: left;
	 border: none;
	 outline: none;
	 cursor: pointer;
	 padding: 14px 16px;
	 transition: 0.3s;
	 font-size: 17px;
	 color: black;
	 margin-bottom: 0;
	 margin-right: 4px;
}
 .library-tab button:hover {
	 background-color: white;
}
 .library-tab button.active {
	 background-color: white;
}
 .library-tabcontent {
	 background-color: white;
	 display: none;
	 padding: 40px 60px;
	 border: 1px solid #ccc;
	 border-top: none;
}

 .library-tabcontent select {
	 appearance: auto;
}
 .library-filters {
	 background-color: #333;
}

/*-------library inputs------------*/
.search-fields {
    display: flex;
    width: 100%;
    flex-direction: row;
    justify-content: space-between;
    gap: 10px;
    height: 50px;
    margin-bottom: 20px;
}

.search-fields select,
.search-fields input {
    height: 50px;
    margin: 0px!important;
}

.search-fields span {
    height: 100%;
    box-sizing: border-box;
}

.search {
    width: 100%;
    box-sizing: border-box;
    height: 50px!important;
    min-width: 250px;
}

.search-fields .searchbutton {
    max-width: 200px;
    min-width: 140px;
    margin: 0px;
    display: flex;
    justify-content: center;
    height: 100%;
    box-sizing: border-box;
}

 .icon-w-text {
	 display: flex;
	 align-items: center;
	 padding-bottom: 10px;
}
 .icon-w-text i {
	 width: 5%;
	 color: #500000;
}
 .icon-w-text p {
	 padding: 0px;
}
 .Accordion-trigger-start {
	 font-size: 1.1rem;
	 letter-spacing: 1px;
}
 .section-wrap.yellow-divider {
	 padding-top: 0;
}
 .yellow-divider .main-internal {
	 padding-top: 40px;
	 border-top: 2px solid #998542;
}
 .pullquote .pullquote__quote .html-content {
	 font-weight: bold;
	 font-size: 1.375rem;
	 line-height: 1.5;
	 color: #500000;
	 position: relative;
	 z-index: 2;
}
 .pullquote__quote > .html-content > p {
	 font-size: 1.375rem;
	 font-weight: inherit;
}
 .pullquote .pullquote__quote p {
	 font-weight: bold;
	 font-size: 1.375rem;
	 line-height: 1.5;
	 color: #500000;
	 position: relative;
	 z-index: 2;
}
 .main.is-news .html-content img {
	 max-width: 300px;
	 width: 100%;
}
 .main.is-news .html-content img.float-left {
	 float: left;
	 margin: 0px 10px 5px 0px;
}
 .main.is-news .html-content img.float-right {
	 float: right;
	 margin: 0px 0px 5px 10px;
}
 .loader-div {
	 position: absolute;
	 height: 100%;
	 width: 100%;
	 background-color: rgba(0, 0, 0, 0.2);
	 z-index: 9999;
	 margin: auto;
	 align-items: center;
	 justify-content: center;
	 display: flex;
}
 .loader {
	 border: 5px solid #f3f3f3;
	 border-top: 5px solid #500000;
	 border-radius: 50%;
	 width: 50px;
	 height: 50px;
	 animation: spin 2s linear infinite;
}
 .loader-div.show {
	 display: flex;
}
 .loader-div.hide {
	 display: none;
}
 #profile-research-wrapper.hide {
	 display: none;
}
 @keyframes spin {
	 0% {
		 transform: rotate(0deg);
	}
	 100% {
		 transform: rotate(360deg);
	}
}



/*------------MEDIA BREAKPOINTS-----------------*/
 @media (max-width: 768px) {
	 section.section-wrap > * {
		 padding-left: 2.5rem;
		 padding-right: 2.5rem;
	}
	 table.table-single-col-mobile tbody tr td {
		 display: flex;
		 flex-direction: column;
	}
	 .main-internal-news {
		 padding: 2.25rem 0;
	}
	 section.section-wrap.section-wrap--dots {
		 padding-top: inherit;
	}
	 .main-internal-news {
		 padding-left: 1.25rem;
		 padding-right: 1.25rem;
	}
	 .main-wrapper, .main.is-news section.section-wrap > * {
		padding-left: 0;
		padding-right: 0;
		 
	}
	 section.section-wrap.section-wrap--dots:before {
		 padding-left: inherit;
		 padding-right: inherit;
	}
}
}
 @media screen and (max-width: 1400px) {
	 .main-internal-news {
		 padding-left: 2.5rem;
		 padding-right: 2.5rem;
	}
}
 .hide {
	 display: none!important;
}
 @media screen and (max-width: 80em) {
	 .main-wrapper.has-sidebar section.section-wrap.blog-posts-wrapper > * {
		 padding-left: 0;
		 padding-right: 0;
	}
}
 @media screen and (min-width: 993px) {
	 .main-wrapper.has-sidebar aside.sidebar {
		 margin-top: 2rem;
		 margin-bottom: 3rem;
	}
}
/*------------FORMS--------------*/
 section .hbspt-form {
	 width: 100%;
	 font-family: "Open Sans", sans-serif;
}
 section.html-content {
	 margin-top: 1rem;
}
 section .hbspt-form label, section .hbspt-form label>span {
	 font-weight: 400;
	 font-family: "Open Sans", sans-serif;
}
 section .hbspt-form fieldset {
	 max-width: unset !important;
}
 section .hbspt-form .input ul {
	 list-style: none;
	 margin-left: inherit;
}
 section .hbspt-form fieldset:not(:first-of-type), section .hbspt-form .form-columns-1 .hs-form-field:not(:first-of-type), section .hbspt-form .hs-submit {
	 margin-top: 20px;
}
 section .hbspt-form input, section .hbspt-form select {
	 width: 100% !important;
	 box-sizing: border-box;
}
 section .hbspt-form select {
	 border: 2px solid #eee;
	 width: 100% !important;
	 padding: 0.75rem;
	 margin: unset;
	 height: unset;
	 box-sizing: border-box;
}
 section .hbspt-form .hs-form-booleancheckbox-display input {
	 width: max-content !important;
}
 section .hbspt-form .hs-button {
	 width: max-content !important;
}
 section .hbspt-form .hs-dependent-field>div:not(:first-of-type) {
	 margin-left: 20px;
}
 section .hbspt-form .hs-field-desc {
	 color: #111;
	 font-style: italic;
}
 section .hbspt-form input.hs-input[type="checkbox"] {
	 width: auto !important;
}
 section .hbspt-form label.hs-form-checkbox-display span {
	 margin-left: 10px;
}
 section.dark-gray-background {
	 background-color: #333 !important;
}
 section.dark-gray-background .basic-content-row {
	 display: flex;
	 flex-wrap: wrap;
}
 section.dark-gray-background .main-internal {
	 background-color: #fff;
	 padding: 40px;
}
 section.dark-gray-background .captioned-media.captioned-media--left {
	 float: none;
	 margin-right: unset;
	 margin-left: unset;
}
 section.dark-gray-background .html-content {
	 padding: 0 0 0 20px;
	 width: 50%;
}
 section.dark-maroon-background {
	 background-color: #3C0001!important;
}
 section.dark-maroon-background .basic-content-row {
	 display: flex;
	 flex-wrap: wrap;
	 gap: 3rem;
}
section.dark-maroon-background.request-form .basic-content-row .captioned-media.captioned-media--left {
    flex: 1;
    margin: auto;
}
 section.dark-maroon-background .main-internal {
	 background-color: #3C0001;
	 padding: 40px;
}
 section.dark-maroon-background .captioned-media.captioned-media--left {
	 float: none;
	 margin-right: unset;
	 margin-left: unset;
}
 section.dark-maroon-background .html-content {
	 padding: 0 0 0 20px;
	 color: white;
}
 section.dark-maroon-background .hs-button {
	 border: solid 1px #a7a7a7;
	 background-color: #fff;
	 color: #500000 !important;
}
 .mauticform-row {
	/* Question container */
	 margin: 1rem 0;
}
 .mauticform-label {
	/* Question label */
	 display: block;
}
 .mauticform-req-label {
	/* Required field marker */
}
 .mauticform-errormsg {
	/* Error message */
	 color: red;
	 display: block;
	 &::before {
		 content: "\26A0";
		 margin-right: .5ch;
	}
}
 .mauticform-message:empty{
	/* Success Message: Empty */
	 display: none;
}
 .mauticform-message{
	/* Success Message: Empty */
	 color: green;
	 &:before{
		 content: "\2713";
		 margin-right: .5ch;
	}
}
 .mauticform-input {
	 width: 100%;
}

.flex-justify-center .html-content {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 4rem;
}

.flex-justify-center .html-content div {
    flex: 1;
}
/*--------MEDIA BREAKPOINTS----------*/
 @media screen and (max-width: 576px) {
	 ul {
		 columns: 1!important;
		 grid-template-columns: unset!important;
	}
}
 @media screen and (max-width: 992px) {
     .main-wrapper section.main-content {
         width: 100%;
     }
     header.page-header.landing-hero.banner-medium {
         max-height: fit-content;
     }
     header.page-header.landing-hero .page-header__wrapper {
         padding-left: 2.5rem;
         padding-right: 2.5rem;
     }
     header.page-header.landing-hero .page-header__wrapper .page-header-card-content.hero-right-side-image-block {
         display: none!important;
         visibility: hidden!important;
     }
    .search-fields {
        flex-direction: column!important;
        height: unset;
    }
	/*BASIC CONTENT RFI FORM SPECIFIC*/
	 section.dark-gray-background .basic-content-row {
		 flex-direction: column;
		 width: 100%;
	}
	 section.dark-gray-background .captioned-media.captioned-media--left {
		 max-width: 100%!important;
		 overflow: hidden;
	}
	 section.dark-gray-background figure {
		 width: 100%;
	}
	 section.dark-gray-background figure-wrapper {
		 width: 100%;
		 min-height: 300px;
	}
	 section.dark-gray-background .html-content {
		 padding: 0;
		 width: 100%;
	}
	 .mauticform-input {
		 position: relative;
		 box-sizing: border-box;
	}
	/*Table Properties*/
	 table {
		 width: 100%!important;
	}
	 .mobile-table {
		 width: 100%;
		 overflow: scroll;
		 margin-bottom: 20px;
	}
	section.dark-maroon-background .basic-content-row {
	    flex-direction: column;    
	}
	section.dark-maroon-background .basic-content-row .html-content {
	    width: 100%;
	}
	
	section.dark-maroon-background.request-form .basic-content-row .captioned-media.captioned-media--left {
	    max-width: unset;
	}
	
	.flex-justify-center .html-content {
	    flex-direction: column;
	}
	
	.flex-justify-center .html-content div {
	    width: 100%;
	}
}

 @media screen and (max-width: 1200px) {
     header.page-header .breadcrumbs-wrapper .breadcrumbs {
         padding-left: 2.5rem;
         padding-right: 2.5rem;
     }
     header.page-header.landing-hero .page-header__wrapper {
         padding-left: 2.5rem;
         padding-right: 2.5rem;
     }
 }

/*override styles*/
.no-padding-top {
    padding-top: 0!important;
}
.no-padding-bottom {
    padding-bottom: 0!important;
}
.no-padding-y {
    padding-top: 0!important;
    padding-bottom: 0!important;
}
.no-margin-y {
    margin-top: 0!important;
    margin-bottom: 0!important;
}
.no-margin-bottom {
    margin-bottom: 0!important;
}
