  /* 911±¬ÁÏÍø Website Style */
/* Initial */
 * {
	 box-sizing: border-box;
	 padding: 0;
	 margin: 0;
	 border: none;
	 text-decoration: none;
}
 :root {
	/* Colors */
	 --accent: var(--surface-green-aa);
	 --accent-hover: var(--surface-green-hover);
	 --accent-light: #D0DBD2;
	 --gold: #A28448;
	 --light-gold: #CBBB99;
	 --gray: #999999;
	 --light-gray: #EEEBE4;
	 --off-black: #08080B;
	 --off-white: #F5F2EB;
	/* Body */
	 --body-padding: 2rem;
	 --body-padding-sides: 0 var(--body-padding);
	 --body-background: var(--surface-primary);
	 --body-max-width: 2048px;
	/* Breadcrumb */
	 --breadcrumb-padding: 3rem 0;
	/* Buttons */
	 --accent-button-border: var(--button-border) solid var(--accent);
	 --accent-button-border-dark: var(--button-border) solid var(--accent-hover);
	 --accent-button-border-hover: var(--button-border-hover) solid var(--accent-hover);
	 --button-border: 1px;
	 --button-border-hover: 2px;
	 --button-font-size: .85rem;
	 --button-outline-padding: calc(var(--button-padding-top) - 1px) calc(var(--button-padding-sides) - 1px);
	 --button-outline-padding-hover: calc(var(--button-padding-top) - 2px) calc(var(--button-padding-sides) - 2px);
	 --button-padding: var(--button-padding-top) var(--button-padding-sides);
	 --button-padding-sides: 1rem;
	 --button-padding-top: .75rem;
	 --button-row-gap: 1rem;
	 --text-color-on-accent: white;
	/* Carousel */
	 --carousel-card-background: var(--light-gray);
	 --carousel-card-width: 450px;
	 --carousel-dots-padding: 2rem;
	 --carousel-gap: 3rem;
	 --carousel-image-border: 5px;
	 --carousel-image-wrap-margin: 1.5rem;
	 --carousel-dot: var(--accent-light);
	 --carousel-dot-active: var(--accent);
	 --carousel-dot-size: 8px;
	 --carousel-dot-spacing: 15px;
	/* Corner Borders */
	 --corner-box-border: 2px solid var(--light-gold);
	 --corner-box-corner-width: 5rem;
	 --corner-box-padding: 16px;
	/* Faculty Carousel */
	 --faculty-carousel-image-border-color: var(--gold);
	 --faculty-carousel-image-width: calc(var(--carousel-card-width) * .4);
	 --faculty-carousel-text-content-width: calc(60% - var(--carousel-image-wrap-margin));
	 --faculty-carousel-text-margin: 1.5rem auto;
	/* Font Size */
	 --rem: 16px;
	/* Header */
	 --header-background: var(--off-black);
	 --header-color: var(--off-white);
	 --header-nav-background: var(--off-white);
	 --header-nav-color: var(--off-black);
	 --header-nav-padding: .5rem;
	 --header-padding: 24px 64px;
	 --header-logo-height: 52px;
	 --header-height: calc(var(--header-logo-height) + calc(var(--header-padding) * 2));
	/* Hero */
	 --hero-background: var(--off-black);
	 --hero-button-2-background: rgba(0, 0, 0, 0.5);
	 --hero-gradient: linear-gradient( to right, rgba(8, 8, 11, .9) 0px, rgba(8, 8, 11, 0.0) 100% );
	 --hero-h1-color: var(--off-white);
	 --hero-padding: 0 calc(var(--body-padding) * 2);
	 --hero-margin-top: 81px;
	/* List */
	 --list-bullet-size: 5px;
	 --list-indent: 1.5rem;
	/* Mosaic */
	 --mosaic-gap: 8px;
	 --mosaic-highlight-light: var(--surface-white);
	 --mosaic-highlight-dark: var(--surface-invert);
	 --mosaic-invert-text: var(--text-invert);
	 --mosaic-highlight-padding: 2rem;
	 --mosaic-offset: 4rem;
	 --mosaic-image-overlay-background: var(--surface-gold-aa);
	 --mosaic-image-overlay-border: var(--border-primary);
	 --mosaic-image-overlay-color: var(--text-invert);
	 --mosaic-half-wide-text-padding: .5rem 1rem;
	 --mosaic-stack-cutoff-1: 1440px;
	/* Paragraph */
	 --paragraph-font-size: 1rem;
	 --paragraph-margin: 16px 0;
	/* Pull Quote */
	 --pull-quote-padding: 3rem;
	 --quote-font-size: 2rem;
	 --quote-mark-width: calc(var(--pull-quote-padding) * 2);
	/* Quote */
	 --quote-box-background: var(--light-gray);
	 --quote-color: var(--gold);
	/* Related Programs */
	 --program-card-width: 312px;
	/* Sticky Header */
	 --sticky-header-background: var(--off-black);
	 --sticky-header-color: var(--off-white);
	 --sticky-header-cta-font-size: .85rem;
	 --sticky-header-cta-color: var(--gray);
	 --sticky-header-gap: 1rem;
	 --sticky-header-link-color: var(--off-white);
	 --sticky-header-link-font-size: 1.25rem;
	 --sticky-header-padding: .5rem;
	/* Table */
	 --table-cell-min-width: 120px;
	 --table-cell-padding-sides: var(--button-padding-sides);
	 --table-cell-padding-top: var(--button-padding-top);
	 --table-first-column-width: 12rem;
	 --table-row-border: 1px solid var(--light-gold);
	/* Widget */
	 --accordion-border-top: 1px solid var(--gold);
	 --accordion-heading-font-size: 1.25rem;
	 --accordion-heading-padding: 1rem 0;
	 --accordion-plus: var(--gold);
	 --h2-margin: 1rem 0;
	 --h3-margin: 1rem 0;
	 --mid-widget-max-width: 1024px;
	 --paragraph-margin: 16px 0;
	 --table-cell-padding-sides: var(--button-padding-sides);
	 --mobile-widget-max-width: 350px;
	 --widget-max-width: 768px;
	 --wide-widget-max-width: 1200px;
	 --ultra-wide-widget-max-width: 1440px;
	 --widget-top-padding: 3rem;
	 
	 /* Other */
	 --scrollbar-width: 0px;
	 --transition: .25s ease-in all;
}

@media (max-width: 1024px) {
    :root {
        
	 --hero-gradient: linear-gradient( to top, rgba(8, 8, 11, .8) 0px, rgba(8, 8, 11, 0.0) 100% );
    }
}

/* Using Gotham */
 h2, h3, p, ol, ul, li, table, th, tr, td, .header-top > a, .breadcrumbs, .button-row > a, .accordion-heading, .faculty-carousel > h2, .faculty-carousel > div, .hero-above-title, .hero-text, .mosaic-half-wide-heading, .mosaic-half-wide-text, .mosaic-highlight-text, .pull-quote > .quote-box > .quote-name, #sticky-
 > .cta {
	 font-family: var(--gotham), "Montserrat", sans-serif;
	 font-weight: 350;
}
/* Using Trajan Pro */
 h1, .pull-quote > .quote-box > .quote, .header-nav > a, #sticky-header > .link {
	 font-family: "trajan-pro-3", "Cinzel", serif;
}

a:hover {
    color: var(--text-link-hover);
}
 html::before {
	 content: "";
	 position: fixed;
	 top: 0;
	 left: 0;
	 right: 0;
	 bottom: 0;
	 background: inherit;
	 /*filter: blur(10px);*/
	 z-index: -1;
	 background: var(--surface-primary);
}
 html {
	 position: relative;
	 height: 100%;
	background: var(--surface-primary);
}
 body {
	 font-size: var(--rem);
	 background: var(--surface-primary);
	 
	 max-width: var(--body-max-width);
	 margin: auto;
	 overflow-x: hidden;
}
div {
    font-family: var(--b-n-font);
}
/* IMG Initial Constrain */
 img {
	 /*width: 100%;*/
}
/**/

/* Search */

.gsc-results-wrapper-overlay {
    left: 0 !important;
    right: 0 !important;
    width: calc(100% - 60px) !important;
    padding: 30px !important;
}

.error-page.search {
    display: flex;
    gap: 12px;
}

.error-page.search input[type="submit"] {
        width: fit-content;
}

/* Header */
 #header {
	 width: 100%;
	 z-index: 100;
	 position: sticky;
	 top: 0;
}
#header > .header-top > a {
    /*display: contents;*/
}
 #header > .header-top .logo {
	 width: 205.46px;
	 filter: invert(1);
	 padding: 8px 2px;
}


 .header-top {
     
	 width: 100%;
	 background: var(--surface-invert);
	 color: var(--text-invert);
	 padding: 24px 64px;
	 display: flex;
	 gap: 56px;
	 justify-content: flex-start;
	 align-items: center;
	 position: relative;
	 z-index: 3;
}
.header-top * {
    transition: var(--transition);
}
.header-top .nav-links {
    display: none;
}
 .header-top > .subnav > a, .header-top > .ctalinks > a, .header-top > .ctalinks > button {
	 color: var(--text-invert);
	 font-family: var(--s-tm-font);
	 font-weight: var(--s-tm-weight);
	 font-size: var(--s-tm-font-size);
	 line-height: var(--s-tm-line-height);
}

.header-top > .ctalinks > button {
    background: var(--surface-invert);
}

 .header-top > .subnav > a {
	 opacity: 0.7;
}

.header-top > .subnav > a:hover, a.gift.cta:hover, button.search:hover {
     border-bottom: 1px solid var(--border-primary);
     cursor: pointer;
     transition: none;
     color: white;
     
	 opacity: 1;
}
 .header-top > .subnav {
	 display: flex;
	 gap: 32px;
	 justify-content: flex-start;
	 align-items: center;
}
 .header-top > .ctalinks {
	 margin-left: auto;
	 display: flex;
	 gap: 24px;
	 justify-content: flex-start;
	 align-items: center;
	 position: relative;
}
 .header-top > .ctalinks ~ .ctalinks {
	 margin-left: 0;
}
 .header-top > .ctalinks > a > span,
 .header-top > .ctalinks > button > span{
     padding-top: 4px;
 }
 .header-top > .ctalinks > a > span > img,
 .header-top > .ctalinks > button > span > img{
	 height: 20px;
	 width: 20px;
	 display: inline-block;
}
 .header-top > .ctalinks > a,
 .header-top > .ctalinks > button {
	 display: flex;
	 flex-wrap: nowrap;
	 gap: 8px;
	 align-items: center;
	 cursor: pointer;
}
 .header-top > .ctalinks > button.search {
	 color: #B5B5B6;
}
 .header-top > .ctalinks > .grey-bar {
	 height: 36px;
	 width: 1px;
	 background: var(--border-invert);
}

/* Search */

.header-top > .search {
    
	 background: var(--surface-invert);
    display: flex;
    flex-wrap: nowrap;
    gap: 24px;
    height: 50.64px;
    align-content: center;
}

.header-top > .search input {
    background: var(--grey-800);
    border: 0;
    border-bottom: 1px solid #454547;
    color: var(--text-invert);
}

.header-top > .search .closex {
    background: var(--surface-invert);
}

.header-top > .search img.search-close {
    width: 32px;
    filter: grayscale(100%);
    cursor: pointer;
}

.header-top.search {
    justify-content: flex-end;
}





.header-top.search > *, .header-top.search .nav-links, #header > .header-top.search > a {
    display: none !important;
}

.header-top.search > .search {
    display: flex !important;
    position: relative;
}

.header-top.search > .search input {
    margin-bottom: 0;
}

.header-top.search > .search input[type="submit"] {
    width: fit-content;
    background: var(--surface-green-aa);
    border-bottom: 1px solid var(--surface-green-aa);
    cursor: pointer;
}

.header-top.search > .search input[type="submit"]:hover {
    
    background: var(--surface-green-hover);
    border-bottom: 1px solid var(--surface-green-hover);
}

/* */

.header-top:not(.search) > .search {
    position: absolute;
    right: 0;
   /*transform: translateX(105vw);*/
   display: none;
   transition: var(--transition);
}


 .header-nav {
	 width: 100%;
	 border-top: 2px solid var(--surface-gold);
	 background: var(--surface-primary);
	 display: flex;
	 gap: 72px;
	 justify-content: center;
	 transition: var(--transition);
	 position: relative;
	 z-index: 2;
}
 .header-nav > a, .header-nav > button {
	 color: var(--text-primary);
    background: var(--surface-primary);
	 font-family: var(--s-mn-font);
	 font-weight: var(--s-mn-weight);
	 font-size: var(--s-mn-font-size);
	 line-height: var(--s-mn-line-height);
	 text-transform: uppercase;
	 padding: 8px 15px;
	 cursor: pointer;
}

.header-nav > a:hover, .header-nav > a.hovered, 
.header-nav > button:hover, .header-nav > button.hovered, .header-nav > button.grey {
    background: var(--grey-800);
    color: var(--text-invert);
}

.nav-dropdown {
    display: none;   
    transition: none !important;
}

.nav-dropdown.dropped {
    
    position: absolute;
    top: 0;
    padding: 12px;
    
    background: var(--grey-800);
    color: var(--text-invert);
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: left;
    transform: translateY(44px);
    
}

.nav-links .nav-dropdown.dropped {
    transform: translateY(48px);
    
}

.ctalinks .nav-dropdown.dropped {
    
    transform: translateY(32px);
    z-index: 4;
}

.arrow.flip {
    transform: rotateX(180deg);
}

.nav-dropdown a {
    padding: 8px;
    
    font-family: var(--s-la-font);
	 font-weight: var(--s-la-weight);
	 font-size: var(--s-la-font-size);
	 line-height: var(--s-la-line-height);
	 color: var(--text-invert);
}

.nav-dropdown a:hover {
    
  background: rgba(255,255,255,.2);
}

#header.scroll {
    
}

#header.scroll .header-top .nav-links {
    display: flex;
    flex-wrap: no-wrap;
}

#header.scroll .header-top .subnav {
    display: none;
}

#header.scroll .header-nav {
    transform: translateY(-100px);
}


#header.scroll .header-top {
	 z-index: 99;
	 background: var(--sticky-header-background);
	 color: var(--sticky-header-color);
	 display: flex;
	 gap: 24px;
	 justify-content: flex-start;
	 align-items: center;
	 padding: 16px 24px;
}
 #header.scroll .header-top .logo {
     width: 150px;
}

#header.scroll .header-top > .nav-links {
	 display: flex;
	 gap: 24px;
	 justify-content: flex-start;
	 align-items: center;
}
 #header.scroll .header-top > .nav-links > a {
	 color: var(--text-invert);
	 font-family: var(--s-mn-font);
	 font-weight: var(--s-mn-weight);
	 font-size: var(--s-mn-font-size);
	 line-height: var(--s-mn-line-height);
	 text-transform: uppercase;
	 display: block;
}

#header.scroll .header-top > .ctalinks {
	 margin-left: auto;
	 display: flex;
	 gap: 12px;
	 justify-content: flex-end;
	 align-items: center;
}

#header.scroll .header-top > .ctalinks > .grey-bar {
	 height: 36px;
	 width: 1px;
	 background: var(--border-invert);
}

#header.scroll .header-top > .ctalinks > a > span {
     padding-top: 4px;
 }
#header.scroll .header-top > .ctalinks > .cta,  #header.scroll .header-top > .ctalinks > .search {
	color: var(--text-invert);
	 font-family: var(--s-tm-font);
	 font-weight: var(--s-tm-weight);
	 font-size: var(--s-tm-font-size);
	 line-height: var(--s-tm-line-height);
}
#header.scroll .header-top > .ctalinks > .cta {
} 

#header.scroll .header-top > .ctalinks > .search {
	 color: #B5B5B6;
  }
#header.scroll .header-top > .ctalinks > .search > span > img {
	 height: 20px;
	 width: 20px;
	 display: inline-block;
}
#header.scroll .header-top > .ctalinks > a {
	 display: flex;
	 flex-wrap: nowrap;
	 gap: 12px;
	 align-items: center;
}



#header.scroll .header-top.search {
    justify-content: flex-end;
}


 @media (min-width: 1367px) {
	 #mobile-header, #mobile-header-drop {
		 display: none;
	}
}
 @media (max-width: 1366px) {
	 #sticky-header, .header-top, .header-nav, #header.scroll {
		 display: none;
	}
	body {
	    margin-top: 71px;
	}
	#mobile-header {
	        position: fixed;
    top: 0;
    z-index: 9999;
    width: 100%;
	}
	 #mobile-header .top, #mobile-header-drop .top {
		 width: 100%;
		 background: var(--surface-invert);
		 color: var(--text-invert);
		 /*padding: 24px 16px;*/
		 display: flex;
		 gap: 20px;
		 justify-content: space-between;
		 border-bottom: 3px solid var(--surface-gold);
		 z-index: 99;
	}
	.mobile-header-left {
	    padding: 20px;
	}
	.mobile-header-right {
	    padding: 20px;
	    cursor: pointer;
	}
	#mobile-header .logo, #mobile-header-drop .logo {
	    width: 162px;
	    filter: invert(1);
	     display: block;
	}
	#mobile-header .menu-button, #mobile-header-drop .menu-button {
	    width: 28px;
	}
	.mobile-header-right .menu {
	    display: block;
	}
	.mobile-header-right .x-button {
	    display: none;
	}
	
	.mobile-header-right.active {
	    background: var(--surface-gold);
	}
	.mobile-header-right.active .menu {
	    display: none;
	}
	.mobile-header-right.active .x-button {
	    display: block;
	}
	
	#mobile-header-drop {
	    display: none;
        z-index: 33;
        background: var(--surface-primary);
        max-width: 480px;
        margin-left: auto;        
        position: fixed;
        top: 71px;
        bottom: 0;
        right: 0;
        overflow-y: scroll;
	}
	
	.m-header-nav {
	    display: flex;
	    flex-direction: column;
	}
	
	.m-nav-a {
	    display: flex;
	    justify-content: space-between;
	    flex-wrap: nowrap;
	    align-items: center;
	    padding-right: 24px;
	    cursor: pointer;
        
        border-bottom: 1px solid var(--border-primary-50);
	}
	.m-nav-a .adiv {
	    display: block;
	    padding: 16px 24px;
        font-family: var(--m-s-mn-font);
        font-weight: var(--m-s-mn-weight);
        font-size: var(--m-s-mn-font-size);
        line-height: var(--m-s-mn-line-height);
        color: var(--text-primary);
	}
	.m-nav-a img {
	    display: block;
	    transition: transform .5s;
	}
	.m-nav-a img.rotate {
	 transform: rotate(135deg);
	}
	
	.m-nav-dropdown {
	    display: flex;
	    flex-direction: column;
	    border-bottom: 1px solid var(--surface-onprimary);
	}
	
	.m-nav-dropdown a {
	 color: var(--text-primary);
	 font-family: var(--s-tm-font);
	 font-weight: var(--s-tm-weight);
	 font-size: var(--s-tm-font-size);
	 line-height: var(--s-tm-line-height);
	 
	 padding: 12px 32px;
	}
	
	.m-nav-a.active {
	    background: var(--surface-onprimary);
	    border-bottom: 1px solid var(--surface-onprimary);
	}
	
	.m-nav-dropdown.active {
	    background: var(--surface-onprimary);
	    border-bottom: 1px solid var(--border-primary-50);
	}
	
	#mobile-header-drop .bottom {
	    padding: 24px;
	}
	
	#mobile-header-drop .bottom .subnav {
	    margin-bottom: 20px;
	}
	
	#mobile-header-drop .bottom .subnav, #mobile-header-drop .bottom .ctalinks {
	    background: var(--surface-onprimary);
	    border-left: 2px solid var(--border-primary);
	    display: flex;
        flex-wrap: nowrap;
        flex-direction: column;
        gap: 4px
	}
	
	#mobile-header-drop .bottom .subnav a, #mobile-header-drop .bottom .ctalinks a, #mobile-header-drop .bottom .ctalinks form.search {
        padding: 6px 12px 6px 24px;	 
	 color: var(--text-primary);
	 font-family: var(--s-tm-font);
	 font-weight: var(--s-tm-weight);
	 font-size: var(--s-tm-font-size);
	 line-height: var(--s-tm-line-height);   
	 
    width: fit-content;
	}
	
	#mobile-header-drop .bottom .ctalinks {
	    position: relative;
	}
	
	#mobile-header-drop .bottom .subnav a:hover, #mobile-header-drop .bottom .ctalinks a:hover {
	    border-bottom: none;
	}
	
	#mobile-header-drop .bottom .ctalinks a, #mobile-header-drop .bottom .ctalinks form.search {
	        display: flex;
        flex-wrap: nowrap;
        gap: 8px;
        align-items: center;
	}
	
	#mobile-header-drop .bottom .ctalinks form.search {
	    width: 100%;
	}
	
	#mobile-header-drop .bottom .ctalinks form.search input {
	    margin-bottom: 0;
	}
	
	#mobile-header-drop .bottom .ctalinks form.search input[type="submit"] {
	    width: fit-content;
    background: var(--surface-green);
    border: none;
    color: var(--text-invert);
    font-weight: bold;
    border-bottom: 1px solid var(--surface-green);
    cursor: pointer;
    
	}
	
	#mobile-header-drop .bottom .ctalinks form.search input[type="submit"]:hover {
	    width: fit-content;
    background: var(--surface-green-hover);
    border-bottom: 1px solid var(--surface-green-hover);
	}
	
	#mobile-header-drop .bottom .ctalinks a img {
	    display: inline-block;
        width: 20px;
        transition: var(--transition);
	}
	
	#mobile-header-drop .bottom .ctalinks a img.flip {
	    transform: rotateX(180deg);
	}
	

    .nav-dropdown2 {
        padding: 12px;
        
        background: var(--surface-primary);
        color: var(--text-primary);
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        justify-content: left;
    }
	
	#mobile-header-drop .bottom .ctalinks button.search input {
	    margin-bottom: 0;
	}

}

/* Navigation */

.navigation {
    border-top: 4px solid var(--surface-gold);
    background: var(--surface-gold-aa);
    color: var(--text-invert);
    font-family: var(--b-n-font);
    font-weight: var(--b-n-weight);
    font-size: var(--b-n-font-size);
    line-height: var(--b-n-line-height);
    display: flex;
    flex-wrap: nowrap;
    align-content: center;
    padding: 0;
}

.navigation a {
    font-family: var(--b-nb-font);
    font-weight: var(--b-nb-weight);
    font-size: var(--b-nb-font-size);
    line-height: var(--b-nb-line-height);
}

.navigation span, .navigation a, .mobile-navigation {
    padding: 16px 20px;
    text-wrap: nowrap;
}

.navigation a {
    border-bottom: 1px solid rgba(0,0,0,0);
    color: white;
    display: inline-block;
}

.navigation a:hover {
    background: var(--surface-primary);
    color: var(--text-primary);
}

.mobile-navigation {
    display: none;
    cursor:pointer;
}

/* Default state for navigation-links */
.navigation-links {
    display: none;
}

/* Style for larger screens */
@media (min-width: 769px) {
    .navigation-links {
        display: flex !important;
        overflow-x: scroll;
        scrollbar-width: none;
    }
}


 @media (max-width: 768px) {
     .navigation {
        border-top: 4px solid var(--surface-gold);
        background: var(--surface-gold-aa);
        color: var(--text-invert);
        font-family: var(--b-n-font);
        font-weight: var(--b-n-weight);
        font-size: var(--b-n-font-size);
        line-height: var(--b-n-line-height);
        display: flex;
        flex-wrap: wrap;
        align-content: center;
        padding: 0;
     }
     

    .mobile-navigation {
        display: flex;
         width: 100%;
         flex-wrap: nowrap;
         justify-content: space-between;
    }
    .mobile-navigation > span {
        padding: 0;
    }
    .mobile-navigation > img {
	 transition: transform .5s;
	 width: 20px;
    }
    .mobile-navigation > img.rotate {
	 transform: rotateX(180deg);
    }
    .navigation-links {
        display: flex;
        flex-wrap: wrap;
        align-content: center;
        padding: 0;
        border-bottom: 4px solid var(--border-primary);
    }
     .navigation-links > * {
         width: 100%;
     }
     .navigation-links span, .navigation a {
        font-family: var(--s-b-font);
    	 font-weight: var(--s-b-weight);
    	 font-size: var(--s-b-font-size);
    	 line-height: var(--s-b-line-height);
    	 background: var(--surface-onprimary);
    	 color: var(--text-primary);
     }
     .navigation-links span {
         font-weight: var(--b-n-weight);
     }
 }

/* Widgets */
 .widget {
	 padding: 64px 20px;
	 padding-top: 20px;
}

.widget.error {
    max-width: var(--widget-max-width);
    margin: auto;
    padding-top: 0;
}

.widget.error h1 {
	 text-transform: var(--h-g-h2-case);
	 line-height: var(--h-g-h2-line-height);
	 font-size: var(--h-g-h2-font-size);
	 font-weight: var(--h-g-h2-weight);
	 margin: var(--h2-margin);
}

/* Hero */
 .widget.hero {
	 margin-top: 0;
	 width: 100%;
	 height: calc(((100vw / 8) * 3) - var(--scrollbar-width));
	 padding: 0;
	 background: var(--hero-background);
	 background-repeat: no-repeat;
	 background-position: 65%;
	 background-size: cover;
	 position: relative;
}

.hero-image-view {
    position: absolute;
    bottom: 0;
    right: 0;
    background: transparent;
    color: rgba(255, 255, 255, .5);
    z-index: 3;
    cursor: pointer;
}

.hero-image-view:hover {
    color: rgba(255, 255, 255, .75);
}

.hero-image-view > i {
    font-size: 24px;
    padding: 24px;
}

.hero-image-view > i.hidden {
    display: none;
}

 .hero-content {
	 position: absolute;
	 padding: var(--hero-padding);
    padding-right: 35%;
	 top: 0;
	 left: 0;
	 height: 100%;
	 width: 100%;
	 background: var(--hero-gradient);
	 color: var(--hero-h1-color);
	 display: flex;
	 justify-content: flex-start;
	 flex-wrap: wrap;
	 align-content: flex-end;
    transition: var(--transition);
}
.hero-content.swipeaway {
        transform: translateX(-100%);
}
 @media (max-width: 1366px) {
	  .widget.hero {
    	 margin-top: 0;
    	 height: 80vh;
    	 max-height: 80vh;
    }
    .hero-content {
        padding: 96px 20px 32px 20px;
    }
    
    
.hero-content.swipeaway {
        transform: translateY(-100%);
}
    
    .hero-content > * {
        max-width: var(--widget-max-width);
    }
    .hero-content > div {
    width: 100%;
}
}
 .hero-content > h1 {
         font-family: var(--h-t-h1-font);
    	 font-size: var(--h-t-h1-font-size);
    	 font-weight: var(--h-t-h1-weight);
    	 line-height: var(--h-t-h1-line-height);
    	 padding-bottom: 12px;
}
 @media (max-width: 1440px) {
     .hero-content > h1 {
         font-family: var(--m-h-t-h1-font);
    	 font-size: 64px;
    	 font-weight: var(--m-h-t-h1-weight);
    	 line-height: var(--m-h-t-h1-line-height);
    }
}
 @media (max-width: 1366px) {
     .hero-content > h1 {
         font-family: var(--m-h-t-h1-font);
    	 font-size: var(--m-h-t-h1-font-size);
    	 font-weight: var(--m-h-t-h1-weight);
    	 line-height: var(--m-h-t-h1-line-height);
    }
}
 .hero-content > div, .hero-content h1, .hero-content > nav {
	 width: 100%;
}
 .hero-content > .breadcrumbs {
     padding-top: 12px;
	 padding-bottom: 32px;
	 display: flex;
	 gap: 12px;
	 align-items: center;
}

.hero-content > .breadcrumbs > img {
    width: 24px;
    height: 24px;
}

.hero-content > .breadcrumbs > a > img {
    width: 24px;
    height: 24px;
}

.hero-content > .breadcrumbs > a {
    font-family: var(--b-s-font) !important;
	 font-weight: var(--b-s-weight) !important;
	 font-size: var(--b-s-font-size) !important;
	 line-height: var(--b-s-line-height) !important;
	 text-transform: none;
	 color: var(--text-invert) !important;
     border-bottom: 1px solid rgba(0,0,0,0);
}

 .hero-content > .breadcrumbs > a:hover {
     border-bottom: 1px solid white;
 }

 @media (max-width: 768px) {
      .hero-content > .breadcrumbs {
          gap: 4px;
      }
 }


/* Elements */
 h2 {
	 width: 100%;
	 text-transform: var(--h-g-h2-case);
	 line-height: var(--h-g-h2-line-height);
	 font-size: var(--h-g-h2-font-size);
	 font-weight: var(--h-g-h2-weight);
	 margin: var(--h2-margin);
}
 h3 {
	 width: 100%;
	 text-transform: var(--h-g-h3-case);
	 font-size: var(--h-g-h3-font-size);
	 line-height: var(--h-g-h3-line-height);
	 font-weight: var(--h-g-h3-weight);
	 margin: var(--h3-margin);
} 

h3 i {
        font-size: 18px;
    display: inline-block;
    transform: translateY(-6px);
}
h4 {
	 width: 100%;
	 text-transform: var(--h-g-h4-case);
	 font-size: var(--h-g-h4-font-size);
	 line-height: var(--h-g-h4-line-height);
	 font-weight: var(--h-g-h4-weight);
	 margin: var(--h4-margin);
}

.widget.rich-text h3, .widget.rich-text h4, .accordion h3, .accordion h4 {
    
} 

 @media (max-width: 1366px) {
 h3 {
	 width: 100%;
	 text-transform: var(--m-h-g-h3-case);
	 font-size: var(--m-h-g-h3-font-size);
	 line-height: var(--m-h-g-h3-line-height);
	 font-weight: var(--m-h-g-h3-weight);
}
}
 h4 {
	 width: 100%;
	 font-family: var(--h-g-h4-font);
	 text-transform: var(--h-g-h4-case);
	 font-size: var(--h-g-h4-font-size);
	 line-height: var(--h-g-h4-line-height);
	 font-weight: var(--h-g-h4-weight);
	 padding-bottom: 12px;
}
em {
    font-style: normal;
}
 p {
	 margin: var(--paragraph-margin);
	 line-height: 24px;
	 font-size: 16px;
}
p.indent {
    padding-left: 24px;
}
 p > a {
	 color: var(--text-link);
	 font-weight: var(--b-nb-weight);
}
a {
    color: var(--text-link);
	 font-weight: var(--b-nb-weight);
	 font-family: var(--b-n-font);
}
div > ol, div> ul {
    margin-bottom: 12px;
}
 ol {
	 padding-left: var(--list-indent);
	 list-style: none;
	 list-style-position: outside;
	 counter-reset: list-counter;
}
 ol li {
    font-family: var(--b-n-font);
	 font-weight: var(--b-n-weight);
	 font-size: var(--b-n-font-size);
	 line-height: var(--b-n-line-height);
}
ol > li {
    counter-increment: list-counter;
}
 ol > li::before {
	 content: counter(list-counter) ".";
	 color: var(--surface-gold);
	 margin-right: .5rem;
	 font-weight: bold;
}
 ul {
	 padding-left: var(--list-indent);
	 list-style-image: url('/_files/icons/bullet-point-cropped.svg');
	 list-style-position: outside;
}

div > ul {
	 padding-left: calc(var(--list-indent) * 2);
}

.column-text > ul {
    
	 padding-left: var(--list-indent);
}
ul li {
    font-family: var(--b-n-font);
	 font-weight: var(--b-n-weight);
	 font-size: var(--b-n-font-size);
	 line-height: var(--b-n-line-height);
}

::marker {
    height: 24px;
}
/* SHORT LINE */
/* Gold line - horizontal */
 .short-line {
	 background: var(--gold);
	 width: 5rem;
	 height: 2px;
}
/* */
/* Max-Widths */
 .rich-text {
	 max-width: var(--widget-max-width);
	 margin: auto;
} 
.accordion-group {
	 /*max-width: var(--widget-max-width);*/
	 margin: auto;
}
 .pull-quote {
	 max-width: var(--mid-widget-max-width);
	 margin: auto;
}
 .widget > p {
	 width: 100%;
}
/* Accordion Group */
 .accordion {
	 width: 100%;
}

.accordion-group > h3,
.accordion-group > div.short-line-container,
.accordion-group > p {
	 max-width: var(--widget-max-width);
	 margin-left: auto;
	 margin-right: auto;
}
 .accordion-heading {
	 padding: var(--accordion-heading-padding);
	 font-size: var(--accordion-heading-font-size);
	 display: flex;
	 justify-content: space-between;
	 cursor: pointer;
	 display: flex;
    width: 100%;
    background: unset;
    color: var(--text-primary);
    max-width: var(--widget-max-width);
    margin: auto;
    border-top: var(--accordion-border-top);
}

.accordion-heading span {
    text-align: left;
}
 .accordion-icon {
	 position: relative;
	 height: var(--accordion-heading-font-size);
	 width: var(--accordion-heading-font-size) !important;
	 transition: transform .5s;
}
 .accordion-icon:before, .accordion-icon:after {
	 content: "";
	 position: absolute;
	 background: var(--accordion-plus);
}
 .accordion-icon:before {
	 left: calc(50% - 1px);
	 top: 0;
	 bottom: 0;
	 width: 2px;
}
 .accordion-icon:after {
	 top: calc(50% - 1px);
	 left: 0;
	 right: 0;
	 height: 2px;
}
 .accordion-icon.active {
	 transform: rotate(135deg);
}
 .accordion-content {
	 display: none;
	 max-width: var(--widget-max-width);
    margin: auto;
}

.accordion-content:after {
  content: "";
  display: table;
  clear: both;
}

.accordion-content.full {
    max-width: unset;
}

.accordion-content > h3 {
    font-family: var(--b-l-font);
	 font-weight: var(--b-l-weight);
	 font-weight: bold;
	 font-size: var(--b-l-font-size);
	 line-height: var(--b-l-line-height);
	 text-transform: none;
}
 .accordion-content > p {
	 display: block;
	 margin: 0 0 1rem 0;
}
/* Buttons */
 .button-row {
	 width: 100%;
	 margin: var(--paragraph-margin);
	 display: flex;
	 gap: var(--button-row-gap);
}
 @media (max-width: 1366px) {
    .button-row {
        gap: 16px;
        display: flex;
        flex-wrap: wrap;
    }   
 }
 .button-row > a, .button-row > input, input::file-selector-button, .error-page.search input[type="submit"] {
	 border: var(--accent-button-border);
	 padding: var(--button-padding);
	 line-height: 1;
	 display: block;
	 font-weight: bold;
	 font-size: var(--button-font-size);
	 cursor: pointer;
	 width: auto;
}
input::file-selector-button {
    display: inline;
}
 .button-row > a:first-child, .button-row > input:first-child, input::file-selector-button, .error-page.search input[type="submit"]  {
	 background: var(--surface-green-aa);
	 color: var(--text-color-on-accent);
}
 .button-row > a:nth-child(2), .button-row > input:nth-child(2) {
	 padding: var(--button-outline-padding);
	 color: var(--text-primary);
}
 .hero-content > .button-row > a:nth-child(2) {
	 color: var(--off-white);
	 background: var(--hero-button-2-background);
}
 .button-row > a:nth-child(2):hover, .button-row > input:nth-child(2):hover {
	 border: var(--accent-button-border-hover);
	 padding: var(--button-outline-padding-hover);
}
 .button-row > a:first-child:hover, .button-row > input:first-child:hover, input::file-selector-button:hover, .error-page.search input[type="submit"]:hover {
	 background: var(--accent-hover);
	 border: var(--accent-button-border-dark);
}

/* By the Numbers */
.widget.by-the-numbers {
    width: 100%;
}

.by-the-numbers-container {
    display: flex;
    padding: 64px;
    justify-content: space-evenly;
    gap: 32px;
}

@media (max-width:  1366px) {
    .by-the-numbers-container {
        display: flex;
        flex-wrap: wrap;
        padding: 0;
        gap: 16px;
    }
    .by-the-numbers-item {
        max-width: 100%;
        width: 100%;
        position: relative;
    }   
}

.by-the-numbers-item {
    max-width: 30%;
    position: relative;
}

.by-the-numbers-item::before {
    content: "";
    width: 176px;
    height: 176px;
    border-radius: 100%;
    left: 50%;
    transform: translateX(-50%);
    position: absolute;
    background: var(--surface-onprimary);
    z-index: 1;
}


@media (max-width: 1366px) {
    .by-the-numbers-item::before {
    
        width: 76px;
        height: 76px;
    }
    
}

.by-the-numbers-number {
     font-family: var(--h-t-h1-font);
	 font-size: var(--h-t-h1-font-size);
	 font-weight: var(--h-t-h1-weight);
	 line-height: var(--h-t-h1-line-height);
	 text-transform: uppercase;
	 color: var(--text-brand-onlight);
	 
	 text-align: center;
	 position: relative;
	 z-index: 2;
}

.by-the-numbers-text {
    
	/* body/large */
	 font-family: var(--b-l-font);
	 font-weight: var(--b-l-weight);
	 font-size: var(--b-l-font-size);
	 line-height: var(--b-l-line-height);
	 text-transform: none;
	 color: var(--text-primary);
	 
	 position: relative;
	 text-align: center;
	 z-index: 2;
}

/* Carousel General */
 .carousel {
	 display: flex;
	 flex-wrap: nowrap;
	 gap: var(--carousel-gap);
	 margin: auto;
	 overflow-x: scroll;
	 -ms-overflow-style: none;
	 scrollbar-width: none;
	 padding: 0 var(--body-padding);
	 cursor: -webkit-grab;
	 cursor: grab;
	 justify-content: flex-start;
	 align-items: flex-start;
}
.carousel.fit {
    width: fit-content;
	cursor: revert;
}
 .carousel.dragging {
	 cursor: -webkit-grabbing;
	 cursor: grabbing;
}
 .carousel::-webkit-scrollbar {
	 display: none;
}
 .carousel-item {
	 background: var(--carousel-card-background);
	 width: var(--carousel-card-width);
	 flex: 0 0 auto;
	 display: flex;
	 padding: var(--carousel-image-wrap-margin);
	 gap: var(--carousel-image-wrap-margin);
	 -webkit-touch-callout: none;
	/* iOS Safari */
	 -webkit-user-select: none;
	/* Safari */
	 -khtml-user-select: none;
	/* Konqueror HTML */
	 -moz-user-select: none;
	/* Old versions of Firefox */
	 -ms-user-select: none;
	/* Internet Explorer/Edge */
	 user-select: none;
	/* Non-prefixed version, currently supported by Chrome, Edge, Opera and Firefox */
}
 .carousel-image-wrap {   
     width: 172px;
    height: 172px;
	 background: var(--faculty-carousel-image-border-color);
	 border-radius: 100%;
}

.carousel-image-wrap > img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    object-position: 5% 5%;
    border-radius: 100%;
    padding: 2px;
}
 .carousel-text-content {
	 width: var(--faculty-carousel-text-content-width);
	 display: flex;
	 flex-wrap: wrap;
	 align-content: center;
}

 @media (max-width: 1366px) {
     .carousel {
         gap: 24px;
     }
  .carousel-item {
      flex-direction: column;
      width: 300px;
      align-items: center;
  }   
  .carousel-text-content {
    width: 100%;
      
  }
 }
 .carousel-card-line, .carousel-card-title {
	 width: 100%;
}
 .carousel-card-title {
	 font-weight: bold;
}
h4.carousel-card-title {
    font-family: unset;
    text-transform: unset;
    font-size: unset;
    line-height: unset;
    font-weight: bold;
    padding-bottom: unset;
}
 .carousel-dots {
	 width: 100%;
	 margin: auto;
	 padding: var(--carousel-dots-padding);
	 display: flex;
	 flex-wrap: nowrap;
	 justify-content: center;
	 gap: var(--carousel-dot-spacing);
}
.carousel-dots.fit {
    display: none;
}
 .carousel-dot {
	 background: var(--carousel-dot);
	 width: var(--carousel-dot-size);
	 height: var(--carousel-dot-size);
	 border-radius: 100%;
	 cursor: pointer;
}
 .carousel-dot.active {
	 background: var(--carousel-dot-active);
}
/* Contact Information */
 .widget.contact-info {
	 width: 100%;
	 max-width: var(--ultra-wide-widget-max-width);
	 margin: auto;
	 padding-left: 0;
	 padding-right: 0;
	 position: relative;
	 height: 592px;
}
 .contact-info > .contact-info-box {
	 position: absolute;
	 width: 484px;
	 top: 0;
	 left: 0;
	 z-index: 3;
	 background: var(--surface-gold-aa);
	 color: var(--text-invert);
	 padding: 64px;
	 font-family: var(--b-n-font);
	 font-weight;
	 var(--b-n-weight);
	 font-size: var(--b-n-font-size);
	 line-height: var(--b-n-line-height);
}
 .contact-label, .contact-title {
	 font-weight: var(--b-nb-weight);
}
.contact-title {
    padding-bottom: 4px;
}
.contact-title a {
    font-family: var(--b-nb-font);
    font-weight: var(--b-nb-weight);
    font-size: var(--b-nb-font-size);
    line-height: var(--b-nb-line-height);
    border-bottom: 1px solid var(--border-primary-50);
    display: inline-block;
    color: white;
}
.contact-title a:hover {
    border-bottom: 1px solid white;
}
 .contact-info-box > .short-line {
	 background: var(--border-primary);
}
 .contact-email > a, .contact-phone > a {
	 color: var(--text-invert);
    border-bottom: 1px solid var(--border-primary-50);
}
.contact-email > a:hover, .contact-phone > a:hover {
    border-bottom: 1px solid white;
}
.contact-info-box > a {
    color: white;
}
 .contact-info > img {
	 width: 998px;
	 position: absolute;
	 top: 24px;
	 right: 0;
	 z-index: 2;
}

 @media (max-width: 768px) {
      .contact-info > .contact-info-box {
        padding: 32px 20px;
        width: calc(100% - 16px);
        position: relative;
     }
     .widget.contact-info {
         padding: 64px 20px;
         height: auto;
     }
      .contact-info > img {
        width: calc(100% - 16px);
        position: relative;
        margin-left: 16px;
        top: auto;
        transform: translateY(-16px);
    }
    
    .contact-info > .contact-info-box .contact-title a,
    .contact-info > .contact-info-box .contact-email a {
        padding: 4px 0px;
    }
 }
 
/* Corner Boxes */
 @media (max-width: 1366px) {
     :root {
	 --corner-box-padding: 8px;   
     }
 }
 .corner-box {
	 padding: var(--corner-box-padding);
	 position: relative;
}
 .corner-box-corner {
	 position: absolute;
	 width: var(--corner-box-corner-width);
	 height: var(--corner-box-corner-width);
	 z-index: 1;
}
 .corner-box-corner.top-right {
	 right: 0;
	 top: 0;
	 border-right: var(--corner-box-border);
	 border-top: var(--corner-box-border);
}
 .corner-box-corner.bottom-left {
	 left: 0;
	 bottom: 0;
	 border-left: var(--corner-box-border);
	 border-bottom: var(--corner-box-border);
}
 .corner-box-corner.top-left {
	 left: 0;
	 top: 0;
	 border-left: var(--corner-box-border);
	 border-top: var(--corner-box-border);
}
 .corner-box-corner.bottom-right {
	 right: 0;
	 bottom: 0;
	 border-right: var(--corner-box-border);
	 border-bottom: var(--corner-box-border);
}
.corner-box-inner {
    position: relative;
    z-index: 2;
}
 .corner-box-inner-test {
	 width: 100%;
	 height: 500px;
	 background: var(--accent);
}

/* CTA Box */

.widget.cta-box {
    width: 100%;
    position: relative;
    padding: 0;
}

.cta-box-wrapper {
    padding: 132px 64px;
    width: 100%;
    background: rgba(8, 8, 11, 0.8);
    z-index: 1;
}


@media (max-width: 768px) {
    .cta-box-wrapper {
        padding: 100px 32px;
    }
    
}

.cta-box-wrapper > h2 {
    text-align: center;
    color: var(--text-invert);
    position: relative;
    z-index: 2;
}

.cta-box-wrapper > .short-line {
    margin: auto;
    position: relative;
    z-index: 2;
}

.cta-box-wrapper > .cta-box-text {
    font-family: var(--b-n-font);
	 font-weight: var(--b-n-weight);
	 font-size: var(--b-n-font-size);
	 line-height: var(--b-n-line-height);
	 text-transform: none;
	 color: var(--text-invert);
	 text-align: center;
	 padding-top: 32px;
	 padding-bottom: 32px;
	 position: relative;
	 z-index: 2;
}

.cta-box-wrapper > .button-row {
    margin: 0;
    justify-content: center;
    position: relative;
    z-index: 2;
}

 .cta-box-wrapper > .button-row > a:nth-child(2) {
	 color: var(--text-invert);
}

/* Faculty Carousel */
 .widget.faculty-carousel {
	 padding-left: 0;
	 padding-right: 0;
}
 .faculty-carousel > h3 {
	 text-align: center;
	 padding: 0px 20px;
}
 .faculty-carousel > .short-line {
	 margin: auto;
}
 .faculty-carousel > .faculty-carousel-text {
	 margin: var(--faculty-carousel-text-margin);
	 font-size: var(--paragraph-font-size);
	 max-width: var(--widget-max-width);
	 text-align: center;
	 padding: 0px 20px;
}

.faculty-carousel > .button-row {
    justify-content: center;
}

/* Form */

.widget.emailform {
    max-width: var(--widget-max-width);
    margin: auto;
}

.emailform .headnote {
    
    
    font-family: var(--b-s-font);
	 font-weight: var(--b-s-weight);
	 font-size: var(--b-s-font-size);
	 line-height: var(--b-s-line-height);
	 text-transform: none;
	 color: var(--text-error-validation);
	 
	 margin-bottom: 4px;
}

.emailform-description {
    font-family: var(--b-n-font);
	 font-weight: var(--b-n-weight);
	 font-size: var(--b-n-font-size);
	 line-height: var(--b-n-line-height);
	 text-transform: none;
	 color: var(--text-primary);
	 padding: 24px 0;
}

.emailform .short-line {
    margin-bottom: 1rem;
}

.emailform > form > .emailform-fields 
.emailform-field {
    margin-bottom: 8px;
}

 input, select, textarea {
    padding: 10px 12px;
    border: 1px solid var(--surface-hover);
    font-family: var(--b-s-font);
	 font-weight: var(--b-s-weight);
	 font-size: var(--b-s-font-size);
	 line-height: var(--b-s-line-height);
	 text-transform: none;
	 color: var(--text-primary);
    width: 100%;
    
    margin-bottom: 12px;
}

.emailform-field-entry.option {
    display: flex;
    flex-direction: column;
    gap: 12px;
    flex-wrap: wrap;
    padding-top: 12px;
    align-items: flex-start;
}
.emailform-field-entry.option.row {
    flex-direction: row;
    gap: 12px 24px;
}

@media (max-width: 768px) {
    .emailform-field-entry > label {
        width: 100%;   
    }
}
input[type='checkbox'], input[type='radio'] {
    width: fit-content;
}
.emailform > form > .emailform-fields 
.emailform-field > .emailform-field-label,
.emailform > form > .emailform-fields 
.emailform-field > .emailform-field-label > .emailform-field-help,
.emailform > form > .emailform-fields 
.emailform-field > .emailform-field-label > label {
    
    font-family: var(--b-s-font);
	 font-weight: var(--b-s-weight);
	 font-size: var(--b-s-font-size);
	 line-height: var(--b-s-line-height);
	 text-transform: none;
	 color: var(--text-primary);
	 
	 margin-bottom: 4px;
}

.emailform > form > .emailform-fields
  .emailform-field > .emailform-field-label > .emailform-field-help,
.emailform > form > .emailform-fields
  .emailform-field > .emailform-field-entry > .emailform-field-option >
  .emailform-field-option-help {
      
	 font-style: italic;
}
.emailform > form > .emailform-fields > .emailform-field >
  .emailform-field-entry > .emailform-field-option >
  .emailform-field-option-help {
      margin-left: var(--list-indent);
      font-size: var(--b-s-font-size);
}

.emailform label span, .emailform-field-label span {
	 color: var(--text-error-validation);
}

.emailform > form > div.button-row.ignore-first-div > div:first-child {
    display: none;
}

.emailform .button-row > button:first-of-type, .emailform .button-row > input:first-of-type {
     padding: var(--button-padding);
	 background: var(--surface-green-aa);
	 color: var(--text-color-on-accent);
}
.emailform .button-row > button:nth-of-type(2), .emailform .button-row > input:nth-of-type(2) {
	 padding: var(--button-outline-padding);
	 color: var(--text-primary);
}
.emailform .button-row > button:nth-of-type(2):hover, .emailform .button-row > input:nth-of-type(2):hover {
	 border: var(--accent-button-border-hover);
	 padding: var(--button-outline-padding-hover);
}
.emailform .button-row > button:first-of-type:hover, .emailform .button-row > input:first-of-type:hover {
     padding: var(--button-padding);
	 background: var(--accent-hover);
	 border: var(--accent-button-border-dark);
}

/* Four Cards */
 .widget.four-cards {
	 padding-left: 0;
	 padding-right: 0;
}
 .four-cards > h3 {
	 text-align: center;
}
 .four-cards > .short-line {
	 margin: auto;
}
 .four-cards > .carousel {
}
 .four-cards > .carousel > .carousel-card {
	 width: var(--program-card-width);
	 flex: 0 0 auto;
	 display: block;
    background: unset;
    text-align: left;
    cursor: pointer;
}
.carousel-card .card-image {
    overflow: hidden;
    display: block;
}

.carousel-card img {
    width: 100%;
  transition: var(--transition);
  display: block;
}

.carousel-card img:hover {
    transform: scale(1.2);
}
.carousel-card img a {
    display: block;
}
.carousel-card{
    position: relative;
    
}
 .four-cards > .carousel > .carousel-dots {
	 width: 100%;
}
.four-cards > .carousel > .carousel-card > .card-info {
    padding: 16px 8px 0 32px;
}
 .four-cards > .carousel > .carousel-card > .card-info > .card-headline {
	margin: 0 0 8px 0;
	/* body/large */
	 font-family: var(--b-l-font);
	 font-weight: var(--b-l-weight);
	 font-size: var(--b-l-font-size);
	 line-height: var(--b-l-line-height);
	 text-transform: none;
	 color: var(--text-primary);
}
.card-vertical-line {
    height: 84px;
    width: 2px;
    background: var(--border-primary);
    position: absolute;
    left: 16px;
    top: -42px;
}
.card-info {
    position: relative;
}
.card-headline a {
    
    color: inherit;
    font-weight: inherit;
}
.four-cards > .carousel > .carousel-card > .card-info > .card-text {
    font-family: var(--b-n-font);
	 font-weight: var(--b-n-weight);
	 font-size: var(--b-n-font-size);
	 line-height: var(--b-n-line-height);
	 text-transform: none;
	 color: var(--text-primary);
}

/* Full Embed */

.widget.full-embed {
    width: 100%;
    padding-right: 0;
    padding-left: 0;
}

.full-embed  * {
    width: 100%;
    
    /*height: 85vh;*/
}

.full-embed.centered {
    margin: auto;
    max-width: var(--widget-max-width);
}

.widget.full-image-overlay {
    margin: 64px;
    padding: 0;
}

 .full-image-overlay-content > h4,
 .full-image-overlay-content > .full-image-overlay-text,
 .full-image-overlay-content > .button-row > a:nth-child(2) {
	 color: var(--text-invert);
}

.full-image-overlay-text {
     font-family: var(--b-n-font);
	 font-weight: var(--b-n-weight);
	 font-size: var(--b-n-font-size);
	 line-height: var(--b-n-line-height);
	 text-transform: none;
	 padding-top: 32px;
}

@media (min-width: 1025px) {
    .full-image-overlay-text {
        padding-right: 50%;
    }
}

.full-image-overlay-content-wrapper {
    
	 background: var(--hero-gradient);
    padding: 64px;
    padding-top: 128px;
}


@media (max-width: 1366px) {
 .widget.full-image-overlay {
     margin: 48px 20px;
 }   
 .full-image-overlay-content-wrapper {
     padding: 196px 20px 32px 20px;
 }
    
}

    .widget.images {
        padding-top: 0px;
        padding-bottom: 0px;
    }
.images  img {
    width: 100%;
    object-fit: contain;
    max-height: 80vh;
    margin: auto;
    padding-top: 20px;
}


.images .img-wrap {
   /* cursor: zoom-in; */
}


.images .img-wrap.fullscreen {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(8, 8, 11, 0.8);
  padding: 24px;
  z-index: 10000;
  display: flex; /* Added display: flex */
  justify-content: center; /* Added justify-content: center */
  align-items: center; /* Added align-items: center */
  
    cursor: zoom-out;
}

.images .img-wrap.fullscreen img {
  display: block;
  width: 100%;
  max-height: calc(100vh - 48px);
  margin: 0;
    z-index: 10001;
  
}

/* Join Our Community */

.widget.join-our-community {
    position: relative;
    min-height: 840px;
    background-image: url(/_files/img/16-9_standard/join-our-community.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: right;
    transform: translateY(0px);
}

.join-our-community img {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
}

.join-our-community-box {
    padding: 56px 60px;
    z-index: 3;
    background: var(--surface-primary);
    position: relative;
    max-width: 490px;
}

.join-our-community-box h2 span {
    
	 color: var(--text-brand-onlight);
	 font-family: var(--h-t-h2-font);
	 font-weight: var(--h-t-h2-weight);
	 font-size: var(--h-t-h2-font-size);
	 line-height: var(--h-t-h2-line-height);
}

.join-our-community-box .button-row {
    flex-wrap: wrap;
}

.join-our-community-box .button-row a {
    background: var(--accent);
    color: var(--text-color-on-accent);
}

.join-our-community-box .button-row a:hover {
    background: var(--accent-hover);
    border: var(--accent-button-border-dark);
}

.join-our-community-box .button-row a:nth-child(2):hover {
    border-width: 2px;
}

 @media (max-width: 1024px) {
    
    .join-our-community-box {
        padding: 48px 20px;
        text-align: center;
        background: white;
    }
    
    .join-our-community-box h2  {
        text-align: center;
    }
    
    .join-our-community-box .short-line {
        margin: auto;
    }
    
    .join-our-community-box .button-row {
        justify-content: center;
    }
}

 @media (max-width: 768px) {
     
     .widget.join-our-community {
        background-position: top;
     }
    
    .join-our-community-box {
        padding: 48px 20px;
        text-align: center;
        background: white;
        margin: auto;
        margin-top: 150px;
    }
 }

 @media (max-width: 560px) {
     
     .widget.join-our-community {
        background-size: contain;
        background-position: top;
     }
     
     .widget.join-our-community .gradient {
         position: absolute;
         top: 0;
         bottom: 0;
         left: 0;
         right: 0;
         background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 100px, var(--surface-primary) 30%);
     }
 }



/* Landscape Video */
 .landscape-video {
	 width: 100%;
	 max-width: var(--mid-widget-max-width);
	 margin: auto;
}
 @media (max-width: 1366px) {
  div.widget.landscape-video {
      padding-left: 8px;
      padding-right: 8px;
  }   
 }
 .video {
	 width: 100%;
	 height: 500px;
	 z-index: 2;
}
/* Map */
.widget.map {
    padding-left: 0;
    padding-right: 0;
}

/* Mosaic */
 .widget.mosaic {
	 width: 100%;
	 display: flex;
	 gap: var(--mosaic-gap);
	 justify-content: center;
}
 .mosaic-1st-of-2, .mosaic-2nd-of-2 {
	 width: 50%;
	 display: flex;
	 gap: var(--mosaic-gap);
	 flex-wrap: wrap;
}
 .mosaic-1st-of-2 {
	 align-content: flex-start;
	 padding-bottom: var(--mosaic-offset);
}
 .mosaic-2nd-of-2 {
	 align-content: flex-end;
	 padding-top: var(--mosaic-offset);
}
 .mosaic-highlight {
	 width: 100%;
	 padding: 32px;
}
 .mosaic-highlight.light {
	 background: var(--mosaic-highlight-light);
}
 .mosaic-highlight.dark {
	 background: var(--mosaic-highlight-dark);
	 color: var(--mosaic-invert-text);
}
 .mosaic-highlight-text {
	/*body/normal*/
	 font-weight: 350;
	 font-size: 16px;
	 line-height: 24px;
}
 .mosaic-full-wide-image-container {
	 width: 100%;
}
 .mosaic-full-wide-image-container > img {
	 width: 100%;
	 height: 100%;
}
.mosaic > .mosaic-1st-of-2 > a, .mosaic > .mosaic-2nd-of-2 > a, .mosaic > .mosaic-1st-of-2 > .mosaic-half-wide-image-container, .mosaic > .mosaic-2nd-of-2 > .mosaic-half-wide-image-container {
	 width: calc(50% - (var(--mosaic-gap) / 2));
	 position: relative;
	 display: flex;
}
 .mosaic-half-wide-image {
	 width: 100%;
	 height: 100%;
	 cursor: pointer;
	 overflow: hidden;
}
.mosaic-half-wide-image-container {
	 position: relative;
    overflow: hidden;
}
.mosaic-half-wide-image-container::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 48px;
  height: 48px;
  background-color: var(--mosaic-image-overlay-border);
  transform: translateX(50%) translateY(-50%) rotate(45deg);
  transition: var(--transition);
}
.mosaic-half-wide-image-container:hover::after { 
  width: 0px;
  height: 0px;
}
 .mosaic-half-wide-image > img {
	 width: 100%;
	 height: 100%;
}
 .mosaic-half-wide-content {
	 position: absolute;
	 bottom: 0;
	 left: 0;
	 width: 100%;
	 height: 100%;
	 padding: var(--mosaic-gap);
	 background: var(--mosaic-image-overlay-background);
	 border: var(--mosaic-gap) solid var(--mosaic-image-overlay-border);
	 color: var(--mosaic-image-overlay-color);
}
 .mosaic-half-wide-text {
	/*Body/small*/
	 font-weight: 350;
	 font-size: 14px;
	 line-height: 20px;
	 padding: var(--mosaic-half-wide-text-padding);
}
 .mosaic-half-wide-heading {
	/*body/large*/
	 font-weight: 350;
	 font-size: 22px;
	 line-height: 30px;
	 letter-spacing: -2%;
	 padding-top: var(--mosaic-gap);
	 text-align: center;
}
 .mosaic-half-wide-content-hide {
	 bottom: 0;
	 left: 0;
	 width: auto;
	 height: auto;
	 padding: 20px 16px;
	 border: none;
	 background: var(--mosaic-image-overlay-background);
	 color: var(--mosaic-image-overlay-color);
}
 .mosaic-half-wide-content-hide .mosaic-half-wide-heading {
	 padding: 0;
	 line-height: 20px;
	 text-align: left;
}
 .mosaic-half-wide-content-hide .mosaic-half-wide-text {
	 display: none;
}
 .mosaic-highlight > .short-line {
	 margin: var(--h3-margin);
}
 @media (max-width: 1440px) {
	 .widget.mosaic {
		 flex-wrap: wrap;
		 max-width: var(--widget-max-width);
		 margin: auto;
	}
	 .mosaic-1st-of-2, .mosaic-2nd-of-2 {
		 width: 100%;
		 padding: 0;
	}
	 .mosaic-2nd-of-2 {
		 flex-direction: column-reverse;
		 flex-direction: row-reverse;
		 flex-wrap: wrap-reverse;
	}
}
 @media (max-width: 768px) {
	 .mosaic-1st-of-2, .mosaic-2nd-of-2 {
		 width: 100%;
	}
	 .mosaic > .mosaic-1st-of-2 > a, .mosaic > .mosaic-2nd-of-2 > a, .mosaic > .mosaic-1st-of-2 > .mosaic-half-wide-image-container, .mosaic > .mosaic-2nd-of-2 > .mosaic-half-wide-image-container {
		 width: 100%;
		 position: relative;
	}
}

/* News */
.widget.news {
    max-width: var(--ultra-wide-widget-max-width);
    margin-left: auto;
    margin-right: auto;
}

.news .heading h3 .accent-heading {
    font-family: var(--h-t-h3-font);
    font-weight: var(--h-t-h3-weight);
    font-size: var(--h-t-h3-font-size);
    line-height: var(--h-t-h3-line-height);
    color: var(--text-brand-onlight);
}

/* Program Info */

.widget.program-info {
    padding: 28px 20px;
    border-top: 4px solid var(--surface-gold);
    background: var(--surface-gold-aa);
    color: var(--text-invert);
    font-family: var(--b-n-font);
    font-weight: var(--b-n-weight);
    font-size: var(--b-n-font-size);
    line-height: var(--b-n-line-height);
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}

.program-info > .program-info-section {
    flex: 1 1;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    padding: 0px 24px;
}

 @media (max-width: 768px) {
 .program-info > .program-info-section {
    width: 100%;
    padding: 0px 16px;
    flex: auto;
}    
 }

.program-info > .program-info-section {
    border-left: 2px solid var(--border-primary-50);
}

.program-info > .program-info-section > * {
    text-align: left;
}
.program-info > .program-info-section > .program-info-section-label {
    width: 100%;
}

.program-info > .program-info-section > .program-info-section-value {
    font-family: var(--b-nb-font);
    font-weight: var(--b-nb-weight);
    font-size: var(--b-nb-font-size);
    line-height: var(--b-nb-line-height);
}

.program-info-section:nth-child(2) .program-info-section-value {
    border-bottom: 1px solid var(--border-primary-50);
}

.program-info-section:nth-child(2) .program-info-section-value:nth-child(2):hover {
    border-bottom: 1px solid white;
}

.program-info-section-value a {
    color: white;
    width: 100%;
    display: inline-block;
}

/* Pull Quote */
 .pull-quote {
	 width: 100%;
	 padding: var(--pull-quote-padding);
	 position: relative;
}
 .pull-quote > img {
	 width: var(--quote-mark-width);
	 position: absolute;
	 opacity: .2;
}
 .pull-quote > img:first-child {
	 left: 0;
	 top: 0;
}
 .pull-quote > img:nth-child(2) {
	 right: 0;
	 bottom: 0;
}


.pull-quote .image-wrap > img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    object-position: 5% 5%;
    border-radius: 100%;
    padding: 2px;
}

.pull-quote.multipleQuotes .image-wrap > img {
    width: 172px;
}

 .pull-quote .quote-box {
	 width: 100%;
	 background: var(--quote-box-background);
	 padding: var(--quote-mark-width);
}
 .pull-quote.multipleQuotes .quote-box {
	 width: 100%;
	 background: var(--quote-box-background);
	 padding: 32px 24px;
	 display: flex;
	 align-items: center;
	 gap: 24px;
}

.pull-quote .image-wrap {
    width: 215px;
    height: 215px;
    margin: auto;
    margin-bottom: 48px;
    background: var(--faculty-carousel-image-border-color);
    border-radius: 100%;
}
 .pull-quote.multipleQuotes .quote-box .image-wrap {
	 height: 172px;
	 margin: 0;
}
 .pull-quote.multipleQuotes .quote-box .quote-wrap {
	 width: 100%;
}

 .pull-quote .quote-box .quote {
	 color: var(--text-brand-onlight);
	 font-family: var(--h-t-h4-font);
	 font-weight: var(--h-t-h4-weight);
	 font-size: var(--h-t-h4-font-size);
	 line-height: var(--h-t-h4-line-height);
	 text-transform: var(--h-t-h4-case);
}
 .pull-quote.multipleQuotes .quote-box .quote {
	 color: var(--text-brand-onlight);
	 font-family: var(--h-t-h4-font);
	 font-weight: var(--h-t-h4-weight);
	 font-size: var(--b-l-font-size);
	 line-height: var(--b-l-line-height);
}
 .pull-quote .quote-box .short-line.centered {
	 margin: 1.5rem auto;
}
 .pull-quote.multipleQuotes .quote-box .short-line.centered {
	 margin: 12px auto;
}
 .pull-quote .quote-box .quote-name {
	 font-weight: bold;
	 font-size: 1.1rem;
	 margin-bottom: .5rem;
}
 .pull-quote.multipleQuotes .quote-box .quote-name {
	 font-weight: bold;
	 font-size: var(--b-n-font-size);
	 margin-bottom: .5rem;
}
 .pull-quote .quote-box p {
	 margin: 0;
}
 .pull-quote.multipleQuotes .quote-box p {
	 font-size: var(--b-s-font-size);
}


@media (max-width: 768px) {
    .widget.pull-quote {
        padding-right: 20px;
        padding-left: 20px;
    }
    .pull-quote .quote-box {
        padding: 48px 24px;
    }
     .pull-quote.multipleQuotes .quote-box {
	 flex-direction: column;
    }
    
    .pull-quote.multipleQuotes .image-wrap {
        width: auto;
        height: auto;
    }
}
    
/* Related Programs */
 .widget.related-programs {
	 padding-left: 0;
	 padding-right: 0;
}
 .related-programs > h3 {
	 text-align: center;
}
 .related-programs > .short-line {
	 margin: auto;
}
 .related-programs > .carousel {
}
 .related-programs > .carousel > .carousel-card {
	 width: var(--program-card-width);
	 flex: 0 0 auto;
	 display: block;
    background: unset;
    text-align: left;
    cursor: pointer;
}
 .related-programs > .carousel > .carousel-dots {
	 width: 100%;
}
.related-programs > .carousel > .carousel-card > .card-info {
    padding: 16px 8px 0 32px;
}
 .related-programs > .carousel > .carousel-card > .card-info > .card-headline {
	margin: 0 0 8px 0;
	/* body/large */
	 font-family: var(--b-l-font);
	 font-weight: var(--b-l-weight);
	 font-size: var(--b-l-font-size);
	 line-height: var(--b-l-line-height);
	 text-transform: none;
	 color: var(--text-primary);
}
.related-programs > .carousel > .carousel-card > .card-info > .card-text {
    font-family: var(--b-n-font);
	 font-weight: var(--b-n-weight);
	 font-size: var(--b-n-font-size);
	 line-height: var(--b-n-line-height);
	 text-transform: none;
	 color: var(--text-primary);
}

/* Wrap Images */

    .widget.rich-text img.large-size, .widget.accordion-group img.large-size {
        width: 100%;
        padding: 16px 0 16px 0;
    }
    .widget.rich-text img.medium-size, .widget.accordion-group img.medium-size {
        width: 50%;
            padding: 0 0 16px 16px;
        float: right;
    }
    .widget.rich-text img.small-size, .widget.accordion-group img.small-size {
        width: 30%;
            padding: 0 0 16px 16px;
        float: right;
    }
    
    @media (max-width: 768px) {
        
        .widget.rich-text img.medium-size, .widget.accordion-group img.medium-size {
            width: 70%;
            padding: 0 0 16px 16px;
            clear: both;
        }
        .widget.rich-text img.small-size, .widget.accordion-group img.small-size {
            width: 40%;
            padding: 0 0 16px 16px;
            float: right;
        }
    }
    
     @media (max-width: 512px) {
        
        .widget.rich-text img.medium-size, .widget.accordion-group img.medium-size {
            width: 100%;
        padding: 16px 0 16px 0;
            clear: both;
        }
        .widget.rich-text img.small-size, .widget.accordion-group img.small-size {
            width: 60%;
            padding: 0 0 16px 16px;
            float: right;
        }
    }

/* Rich Text */

.widget.rich-text.left {
    margin: 0;
    margin: auto;
    padding-bottom: 0;
}

/* Six Options */

.widget.six-options {
    width: 100%;
    max-width: var(--ultra-wide-widget-max-width);
    margin: auto;
    background: var(--surface-onprimary);
    padding: 80px 64px;
}

.six-options .column::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 24px;
  height: 24px;
  background-color: var(--surface-green);
  transform: translateX(50%) translateY(-50%) rotate(45deg);
  transition: var(--transition);
}

.six-options .column.plain::after {
  display: none;
}

.six-options > h2 {
    text-align: center;
    margin: auto;
}

.six-options .short-line {
    margin: 12px auto;
    background: var(--border-primary-50);
}
.six-options .column  .short-line {
    margin: 12px auto 12px 0;
    background: var(--border-primary-50);
}

.six-options > .columns {
    width: 100%;
    padding-top: 32px;
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}

.six-options > .columns > .column {
    background: white;
    width: calc(33.33% - 16px);
    padding: 24px;
    position: relative;
    overflow: hidden;
}

.six-options > .columns > .column:hover {
    
}

.six-options .column:hover::after { 
  width: 36px;
  height: 36px;
}

.six-options > .columns > .column > .column-heading {
	/* body/large */
	     font-family: var(--b-l-font);
    font-weight: bold;
    font-size: var(--b-l-font-size);
    line-height: var(--b-l-line-height);
    text-transform: none;
    color: var(--text-green);
}

.six-options > .columns > .column.plain > .column-heading {
    color: var(--text-primary);
}

.six-options > .columns > .column > .column-text {
    
    font-family: var(--b-s-font);
	 font-weight: var(--b-s-weight);
	 font-size: var(--b-s-font-size);
	 line-height: var(--b-s-line-height);
	 text-transform: none;
	 color: var(--text-primary);
}

@media (max-width: 1366px) {
 .widget.six-options {
     padding: 48px 20px;
    margin-top: 120px;
 }   
 .six-options .columns {
     padding-top: 24px;
     flex-wrap: wrap;
     
 }
 .six-options .columns .column {
     
 }
   
}

@media (max-width: 1024px) {
    
 .six-options .columns .column {
     width: calc(50% - 12px);
 }
}

@media (max-width: 768px) {
    
 .six-options .columns .column {
     width: 100%;
 }
}

/* Tabbed Content */
.widget.tabbed-content {
    max-width: var(--widget-max-width);
    margin: 48px auto;
    background: var(--surface-onprimary);
}

.tabbed-content > h3 {
    text-align: center;
}

.tabbed-content > .short-line {
    margin: auto;
    margin-bottom: 52px;
}

.tabbed-content-headings {
	/* body/large */
	 font-family: var(--b-l-font);
	 font-weight: var(--b-l-weight);
	 font-size: var(--b-l-font-size);
	 line-height: var(--b-l-line-height);
	 text-transform: none;
	 color: var(--text-primary);
	 display: flex;
	 cursor: pointer;
    overflow-x: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.tabbed-content-tab-heading {
	 opacity: 0.5;
	 padding: 4px 32px;
	 border-bottom: 1px solid var(--border-green);
}

.tabbed-content-tab-heading.active {
	 opacity: 1;
}

.tabbed-content-texts > div {
    display: none;
}
.tabbed-content-texts > div:first-child {
    display: block;
}

/* Table */
 .table {
	 width: 100%;
	 padding-right: 0;
}
 .table > .short-line {
	 margin: 1.5rem auto;
}
 .table > h3 {
	 padding: 0 var(--body-padding);
	 text-align: center;
}
.table > .short-line {
    margin: auto;
}
.table-wrap {
	 overflow-x: scroll;
	 -ms-overflow-style: none;
	 scrollbar-width: none;
	 padding: 0 var(--body-padding);
	 padding-top: 32px;
}
@media (max-width: 768px) {
    .table-wrap {
        padding-left: 0;
        padding-right: 20px;
    }
    
}
.table-wrap::-webkit-scrollbar {
	 display: none;
}
 table {
	 text-align: center;
	 margin: auto;
	 border-spacing: 0px;
}
 th, td {
	 border: 0px solid black;
	 border-bottom: var(--table-row-border);
	 min-width: var(--table-cell-min-width);
}
 th:first-child, td:first-child {
	 	 min-width: var(--table-first-column-width);
}
 th, td {
	 padding: var(--table-cell-padding-top) var(--table-cell-padding-sides);
	 text-align: left;
}
th { 
    font-weight: bold;
}

/* Three Column */

.widget.three-columns {
    width: 100%;
    background: var(--surface-onprimary);
    position: relative;
    padding: 64px;
    margin-top: 64px;
}

.widget.three-columns.dark {
    background: var(--surface-invert);
}

.three-columns > .corner-box {
    position: absolute;
    top: -48px;
    right: 0;
    width: calc(50% - 64px + 16px);
    max-width: 540px;
    padding-right: 0;
}

.three-columns > .corner-box img {
    width: 100%;
}

.three-columns.dark > .corner-box {
    position: absolute;
    top: -48px;
    right: auto;
    left: 0;
    width: calc(50% - 64px + 16px);
    padding-right: 16px;
    padding-left: 0;
}

.three-columns > h3 {
    width: calc(50% - 64px);
}

.three-columns.dark > h3 {
    margin-left: 50%;
    color: var(--text-invert);
}

.three-columns.dark > .short-line {
    margin-left: 50%;
}

.three-columns > .columns {
    padding-top: 64px;
    display: flex;
    gap: 24px;
    flex-wrap: nowrap;
    align-items: flex-start;
}

.three-columns > .columns > .column {
    flex: 1;
    background: white;
    padding: 24px;
    border-left: 2px solid var(--surface-gold);
}

.three-columns.dark > .columns > .column {
    background: var(--surface-invert-hover);
    border-left: 2px solid var(--border-primary);
}

.three-columns > .columns > .column > .column-heading {
    /* body/large */
	 font-family: var(--b-l-font);
	 font-weight: var(--b-l-weight);
	 font-size: var(--b-l-font-size);
	 line-height: var(--b-l-line-height);
	 text-transform: none;
	 color: var(--text-primary);
}

.three-columns > .columns > .column > .column-text {
    /* body/small */
	 font-family: var(--b-s-font);
	 font-weight: var(--b-s-weight);
	 font-size: var(--b-s-font-size);
	 line-height: var(--b-s-line-height);
	 text-transform: none;
	 color: var(--text-primary);
}

.three-columns.dark > .columns > .column > .column-heading {
	 color: var(--text-invert);
}

.three-columns.dark > .columns > .column > .column-text {
	 color: var(--text-invert);
}


@media (max-width: 1366px) {
 .widget.three-columns {
     padding: 48px 20px;
    margin-top: 120px;
 }   
 .three-columns > .corner-box {
    top: -90px;
    width: 300px;
 }
 .three-columns h3 {
     width: 100%;
 }
 .three-columns .columns {
     padding-top: 48px;
     flex-wrap: wrap;
     
 }
 .three-columns .columns .column {
     width: 100%;
     flex: auto;
 }
 
 .three-columns.dark > .corner-box {
    
    top: -90px;
    width: 300px;
    right: auto;
    left: 0;
}

.three-columns > h3 {
    width: 100%;
}

.three-columns.dark > h3 {
    margin-left: 0;
}



.three-columns.dark > .short-line {
    margin-left: 0;
}
   
}

/* Two Images */

.widget.two-images {
    position: relative;
    display: flex;
    max-width: var(--wide-widget-max-width);
    margin: auto;
}

.two-images img {
    width: 100%;
}

.two-images > .two-images-background-box {
    z-index: 1;
    position: absolute;
    width: 40%;
    height: 40%;
    top: 96px;
    left: 25%;
    background: var(--surface-gold);
    
    display: none;
}

.two-images > .corner-box {
    width: 50%;
    z-index: 2;
}

.two-images > .corner-box > .image-text {
         font-family: var(--b-n-font);
    font-weight: var(--b-n-weight);
    font-size: var(--b-n-font-size);
    line-height: var(--b-n-line-height);
    text-transform: none;
    color: var(--text-invert);
    background: var(--surface-gold-aa);
    padding: 8px 12px;
    transform: translateY(-24px);
    position: relative;
    z-index: 3;
    width: fit-content;
    max-width: 85%;
    text-wrap: wrap;
}

.two-images > .corner-box.second > .image-text {
    position: absolute;
    top: var(--corner-box-padding);
    right: var(--corner-box-padding);
    text-align: right;
}

.two-images > .corner-box.first {
    padding-right: 12px;
}

.two-images > .corner-box.second {
    margin-top: 96px;
    padding-left: 12px;
}


@media (max-width: 768px) {
    .widget.two-images {
        flex-wrap: wrap;
    }
    .two-images-background-box {
        display: none;
    }
    .two-images > .corner-box {
        width: 100%;
    }
    .two-images > .corner-box.first, .two-images > .corner-box.second {
        padding: var(--corner-box-padding);
    }
    .two-images > .corner-box.second {
        margin-top: 24px;
    }
}

/* Vertical Video Carousel */
 .video-carousel > .carousel > .carousel-item {
	 width: var(--carousel-card-width);
	 flex: 0 0 auto;
	 display: flex;
	 padding: 0;
	 gap: var(--carousel-image-wrap-margin);
	 -webkit-touch-callout: none;
	/* iOS Safari */
	 -webkit-user-select: none;
	/* Safari */
	 -khtml-user-select: none;
	/* Konqueror HTML */
	 -moz-user-select: none;
	/* Old versions of Firefox */
	 -ms-user-select: none;
	/* Internet Explorer/Edge */
	 user-select: none;
	/* Non-prefixed version, currently supported by Chrome, Edge, Opera and Firefox */
}
.video-carousel > .carousel > .carousel-item > .video {
    max-height: 80vh;
}

/* Pages */

/* Directory */

#directory-body {
    padding-bottom: calc(var(--transition-height) + 64px);
}

#directory-filter {
    padding: var(--body-padding-sides);
    padding-top: 24px;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    max-width: 1086px;
}

#directory-filter .vertical-line {
    margin: 0 24px;
    background: var(--border-primary-50);
    width: 2px;
    height: 40px;
}

#directory-filter input, #directory-filter select {
    font-family: var(--b-s-font);
	 font-weight: var(--b-s-weight);
	 font-size: var(--b-s-font-size);
	 line-height: var(--b-s-line-height);
	 padding: 10px 12px;
}

.keyword-entry-wrap {
    width: -webkit-fill-available;
    position: relative;
}

.keyword-entry-wrap img {
    position: absolute;
    width: 20px;
    right: 12px;
    top: 10px;
    margin-left: 12px;
    color: var(--surface-green-aa);
}

#keyword-entry {
    
}

#program-college-entry {
    margin-left: 12px;
}

#directory-navigation {
    padding: var(--body-padding-sides);
    padding-right: 0;
	 overflow-x: scroll;
	 -ms-overflow-style: none;
	 scrollbar-width: none;
}

.dir-nav-inner {
    background: var(--surface-onprimary);
    font-family: var(--gotham);
    font-weight: 500;
    font-size: 16px;
    line-height: 32px;
    padding: 8px 24px;
    width: max-content;
    display: flex;
    flex-wrap: nowrap;
    gap: 24px;
    justify-content: left;
    align-items: center;
}

#directory-navigation a {
    color: var(--text-link);
}

#directory-navigation a.disabled {
    color: var(--text-link-disabled);
    cursor: not-allowed;
}

#directory-container {
    padding: var(--body-padding-sides);
    padding-top: 20px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.directory-item {
    width: 100%;
    background: white;
    padding: 24px;
    font-family: var(--gotham);
    display: flex;
    justify-content: space-between;
    align-items: center;
}
    
.directory-item a {
    font-family: var(--b-l-font);
	 font-weight: var(--b-l-weight);
	 font-size: var(--b-l-font-size);
	 line-height: var(--b-l-line-height);
}

.directory-item .program-college {
    font-family: var(--b-n-font);
	 font-weight: var(--b-n-weight);
	 font-size: var(--b-n-font-size);
	 line-height: var(--b-n-line-height);
}

.directory-item .program-degree {
    font-family: var(--s-la-font);
	 font-weight: var(--s-la-weight);
	 font-size: var(--s-la-font-size);
	 line-height: var(--s-la-line-height);
	 
	 padding: 4px 12px;
	 border: 2px solid var(--border-primary);
	 
	 
    display: block;
    width: max-content;
}

.directory-item .contact-info-email a {
	 font-size: var(--b-n-font-size);
}

#directory-pagination {
    padding: var(--body-padding-sides);
    padding-top: 36px;
    padding-bottom: 36px;
}

#directory-pagination a {
    font-family: var(--s-b-font);
	 font-weight: var(--s-b-weight);
	 font-size: var(--s-b-font-size);
	 line-height: var(--s-b-line-height);
	 display: inline-block;
	 width: 40px;
	 height: 40px;
	 padding: 10px 16px;
	 color: var(--text-primary);
}

#directory-pagination a.disabled {
	 color: var(--text-link-disabled);
	 cursor: not-allowed;
}

#directory-pagination a.active {
	 color: var(--text-invert);
	 background: var(--surface-green-aa);
}

@media (max-width: 768px) {
    .directory-item {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        justify-content: flex-start;
        align-items: center;
    }
    
    .directory-item > * {
        width: 100%;
    }
}

@media (max-width: 1366px) {
    #directory-filter {
        padding-top: var(--body-padding-sides);
        padding-bottom: var(--body-padding-sides);
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: flex-start;
        padding-top: 20px;
    }
    
    #directory-filter input, #directory-filter select {
        width: 100%;
    }
    
    #directory-filter .vertical-line {
        margin: 20px 0;
        background: var(--border-primary-50);
        width: 48px;
        height: 1px;
    }

    #keyword-entry {
        margin-bottom: 0;
    }

    #program-college-entry {
        margin-left: 0;
    }
    
    #directory-container {
        
    }
    
    .directory-item {
        padding: 16px 20px;
    }
    
    .directory-item a {
        font-family: var(--m-b-l-font);
    	 font-weight: var(--m-b-l-weight);
    	 font-size: var(--m-b-l-font-size);
    	 line-height: var(--m-b-l-line-height);
    }
    
    .directory-item .program-college {
        font-family: var(--m-b-n-font);
    	 font-weight: var(--m-b-n-weight);
    	 font-size: var(--m-b-n-font-size);
    	 line-height: var(--m-b-n-line-height);
    }
    
    .directory-item .program-degree {
        font-family: var(--m-s-la-font);
    	 font-weight: var(--m-s-la-weight);
    	 font-size: var(--m-s-la-font-size);
    	 line-height: var(--m-s-la-line-height);
    	 
    	 padding: 4px 8px;
    	 border: 2px solid var(--border-primary);
    }
}

/* Faculty */

.persons {
	 padding: var(--widget-top-padding) var(--body-padding);
	 padding-bottom: calc(var(--transition-height) + 64px);
}

.persons > h3 {
    max-width: var(--widget-max-width);
    margin-left: auto;
    margin-right: auto;
}

 .person {
	 background: var(--surface-onprimary);
	 width: 100%;
	 max-width: var(--widget-max-width);
	 margin: auto;
	 margin-bottom: 48px;
	 display: flex;
	 flex-wrap: wrap;
	 padding: var(--carousel-image-wrap-margin);
	 gap: var(--carousel-image-wrap-margin);
	 
	 font-family: var(--b-n-font);
	 font-weight: var(--b-n-weight);
	 font-size: var(--b-n-font-size);
	 line-height: var(--b-n-line-height);
	 
	 color: var(--text-primary);
}
 .person-image-wrap {   
     width: 172px;
    height: 172px;
	 background: var(--faculty-carousel-image-border-color);
	 border-radius: 100%;
}

.person-image-wrap > img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    object-position: 5% 5%;
    border-radius: 100%;
    padding: 2px;
}

.person-main-info {
    align-self: center;
}

.person-name, .category-heading {
    font-family: var(--b-nb-font);
    font-weight: var(--b-nb-weight);
    font-size: var(--b-nb-font-size);
    line-height: var(--b-nb-line-height);
}

h2.person-name, h2.category-heading {
    text-transform: unset;
}

.category-line {
    padding-bottom: 12px;
}

.person-contact, .person-field {
    width: 100%;
}

.person-contact {
    display: flex;
    gap: 32px;
    align-items: center;
}

@media (max-width: 768px) {
    .person-contact {
        gap: 4px;
        align-items: flex-start;
        flex-direction: column;
    }
}

.person-contact-link {
    display: flex;
    gap: 12px;
    align-items: center;
}

.person-contact-link-text > a {
    color: var(--text-link);
    font-weight: bold;
}

.person i {
    color: var(--surface-gold);
}

/* Personnel */

.personnel {
    max-width: var(--widget-max-width);
    margin: auto;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
        padding: 0px 20px 64px 20px;
}

.someone-wrap {
    width: 100%;
    display: flex;
    margin: auto;
    justify-content: center;
    gap: 32px;
    flex-wrap: wrap;
    padding: 64px 0 24px 0;
}

.someone {    
    flex: 0 1;
    width: fit-content;
    position: relative;
}

.personnel * {
    
    font-family: var(--b-n-font);
}

.someone > .accordion > .accordion-heading, .someone > .accordion > .accordion-content {
    padding-left: 8px;
    padding-right: 8px;
    background: var(--surface-onprimary);
}

.someone > .accordion {
    border-bottom: 2px solid var(--border-primary);
}

.someone-image-wrap {
    width: 300px;
    height: 448px;
    overflow-y: hidden;
    position: relative;
}

.someone-image-wrap::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background :linear-gradient(to bottom, transparent 0%, transparent 50%, black 100%);
}

.someone-main-info {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 8px;
    z-index: 3;
}
.someone-contact {
    width: 100%;
    padding: 8px;
    background: var(--surface-gold-aa);
    border-top: 2px solid var(--surface-gold);
}

.someone-main-info > .someone-name {
    
	 text-transform: var(--h-g-h4-case);
	 font-size: var(--h-g-h4-font-size);
	 line-height: var(--h-g-h4-line-height);
	 font-weight: var(--h-g-h4-weight);
	 
	 padding-bottom: 12px;
}

.someone-main-info > .someone-name, .someone-main-info > .someone-line {
    color: var(--text-invert);
}

.someone-main-info > * {
    text-wrap: wrap;
}

.someone-contact-link-text i {
    margin-right: 4px;
}

.someone-contact-link-text * {
    font-size: var(--b-s-font-size);
    color: var(--text-invert);
}

 .someone-contact-link-text > a {
	 color: var(--text-invert);
    border-bottom: 1px solid var(--border-primary-50);
}
.someone-contact-link-text > a:hover {
    border-bottom: 1px solid white;
}



.territory {
    width: 100%;
    padding: 24px;
    background: var(--surface-onprimary);
    border-bottom: 2px solid var(--border-primary);
    margin-bottom: 64px;
}

.territory-label {
	 width: 100%;
	 text-transform: var(--b-l-case);
	 font-size: var(--b-l-font-size);
	 line-height: var(--b-l-line-height);
	 font-weight: var(--b-l-weight);
	 margin: var(--h3-margin);
    max-width: var(--widget-max-width);
    margin: auto;
    display: block;
    padding-bottom: 12px;
}

.territory-text {
    width: 100%;    
    display: block;
    max-width: var(--widget-max-width);
    margin: auto;
     font-family: var(--b-n-font);
	 font-weight: var(--b-n-weight);
	 font-size: var(--b-n-font-size);
	 line-height: var(--b-n-line-height);
}

.personnel img {
    width: 100%;
}

@media (max-width: 768px) {
    .personnel {
    }
}

/* Footer */

#footer {
    width: 100%;
    background: var(--surface-invert);
    position: relative;
    
}

#footer.add-join {
    
}

#footer .transition {
    position: absolute;
}

#footer .transition.dark .angled {
    backgound: black !important;
}

.footer-content {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: 3;
    padding: 64px 48px;
    padding-bottom: 12px;
    background: var(--surface-invert);
    background-image: url(/_files/img/footer.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom;
    
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    height: fit-content;
}

.footer-content > * {
    z-index: 2;
    position: relative;
    flex: 1 1 auto;
}

.footer-content .gradient {
    background: linear-gradient(to bottom, 
                                        rgba(8, 8, 11, 1) 0px,  
                                        rgba(0, 0, 0, 0.25) 100%);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    
    z-index: 1;
}

.footer-contact > a {
    display: block;
    margin-bottom: 24px;
}

.footer-contact > a > img {
    width: 205px;
    filter: invert(1);
}

.footer-address {
    color: var(--surface-primary);
     font-family: var(--b-n-font);
	 font-weight: var(--b-n-weight);
	 font-size: var(--b-n-font-size);
	 line-height: var(--b-n-line-height);
}

.footer-contact > .button-row > a {
    color: var(--text-invert);
}

.social-icons {
    display: flex;
    flex-wrap: nowrap;
    gap: 24px;
}

.contact-info-box .social-icons {
    margin-top: 12px;
}

.contact-info-box a.social-icon {
    color: var(--surface-primary);
}

.contact-info-box a.social-icon:hover {
    color: white;
}

.social-icon {
    display: block;
}

a.social-icon {
    color: white;
}

a.social-icon:hover {
    color: var(--text-link);
}

.social-icon i {
    font-size: 20px;
}

.footer-content .links {
    display: flex;
    flex-wrap: nowrap;
    gap: 12px;
    flex-direction: column;
}

.footer-content .links a {
    width: fit-content;
    font-family: var(--s-li-font);
	 font-weight: var(--s-li-weight);
	 font-size: var(--s-li-font-size);
	 line-height: var(--s-li-line-height);
	 display: block;
	 color: var(--text-invert);
	 border-bottom: 1px solid var(--border-primary-50);
}

.footer-content .links a:hover {
    border-bottom: 1px solid white;
}

#footer .bottom-bar {
    width: 100%;
    padding: 12px 0;
    display: flex;
    flex-wrap: nowrap;
    gap: 24px;
    margin-top: 48px;
    border-top: 1px solid var(--border-invert);
}

#footer .bottom-bar a {
    color: rgba(255, 255, 255, .7);
    border-bottom: 1px solid rgba(255, 255, 255, .1);
     font-family: var(--b-s-font);
	 font-weight: var(--b-s-weight);
	 font-size: var(--b-s-font-size);
	 line-height: var(--b-s-line-height);
    
}

#footer .bottom-bar a:hover {
    border-bottom: 1px solid rgba(255, 255, 255, .5);
    
}

 @media (max-width: 768px) {
     .footer-content {
    padding: 64px 20px;
         flex-direction: column;
         align-items: center;
             background-size: auto;
     }
     .footer-content .links {
         align-items: center;
     }
     .footer-contact {
        text-align: center;
     }
     .footer-contact > .button-row, .footer-contact > .social-icons {
         justify-content: center;
     }
     #footer .bottom-bar {
         flex-wrap: wrap;
         justify-content: center;
     }
 }

.widget:last-child {
    padding-bottom: 100px;
}

/* Custom Scripts */

.normal-width-embed {
    width: var(--widget-max-width);
}

.wide-width-embed {
    width: var(--wide-widget-max-width);
}

.ultra-wide-width-embed {
    width: var(--ultra-wide-widget-max-width);
}

.normal-width-embed,
.wide-width-embed,
.ultra-wide-width-embed {
    margin: auto;
    padding: 12px;
}

/* Other */
 .centered {
	 text-align: center;
}
 .noSelect {
	 -webkit-tap-highlight-color: transparent;
	 -webkit-touch-callout: none;
	 -webkit-user-select: none;
	 -khtml-user-select: none;
	 -moz-user-select: none;
	 -ms-user-select: none;
	 user-select: none;
}
 .noSelect:focus {
	 outline: none !important;
}
.widget.last {
    padding-bottom: calc(var(--transition-height) + 64px);
}
.widget.last.full-image-overlay, .widget.last.cta-box {
    padding-bottom: 0;
    margin-bottom: calc(var(--transition-height) + 64px);
}
.widget.contact-info.last {
    height: calc(var(--transition-height) + 64px + 592px);
}

.userway_buttons_wrapper {
        left: calc(-18px + 100%) !important;
    bottom: 21px !important;
}

/* Print */
@media print {
    .header-top,
    .navigation,
    .transition,
    .uai {
        display: none;
    }
    #mobile-header {
        position: sticky;
    }
}

.accordion-heading h3 {
        text-transform: unset;
        font-size: unset;
        line-height: unset;
        font-weight: unset;
        margin: 0;
        text-align: left;
}

    /* Events */
    
    .content-detail figure img {
            max-width: 100%;
    max-height: 212px;
    }
    
    .sidebar button, .hh-module .btn-primary {
         background: var(--surface-green-aa) !important;
    	 color: var(--text-color-on-accent) !important;
    	 border: 2px solid var(--surface-primary) !important;
    	 padding: var(--button-padding) !important;
    	 line-height: 1 !important;
    	 display: block;
    	 font-weight: bold !important;
    	 font-size: var(--button-font-size) !important;
    	 cursor: pointer !important;
    	 width: auto !important;
    	 color: var(--text-invert) !important;
    	 border-radius: 0 !important;
    	 
    }
    
    .sidebar button:hover, .hh-module .btn-primary:hover {
        background: var(--accent-hover) !important;
    	 border: 2px solid var(--surface-primary) !important;
    }
    .event-image {
        width: 100%;
    height: 150px;
    margin-top: 18px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-position-y: 15%;
    }
    
    .date-img {
            display: flex
;
    align-content: center;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    border: 4px solid;
    }
    
    .date-img div {
        width: 100%;
        text-align: center;
        font-size: 24px;
    }
    }
    
    .clearAll {
        margin-bottom: 12px;
    }
    
    .event-details h3 {
        font-size: 28px !important;
        font-weight: bold !important;
            line-height: 1.2;
    }
    
    .event-details .summary {
            white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    
    }
    
    .checkboxes label {
        padding-right: 12px;
    }
    
    .checkboxes label span {
        
        font-weight: normal !important;
    }
}

