/* 

    Theme Name: Summer School
    Theme URI: http://summerschool.wolfram.com/ 
    Description: Summer School Theme

    developer:   Estevao T
    requires:    /common/framework/css/framework.en.css

*/

/* ==========================================================================
   Theme
   ========================================================================== */

/* Shared 
   ========================================================================== */

html {
	scroll-behavior: smooth;
}
body {
	font-family: 'Source Sans Pro', Arial, Helvetica, sans-serif;
	color: #707070;
}
.inner, .container {
	max-width: 1140px;
	margin: 0 auto;
}
#pages .container {
	padding: 0 2rem 3.75rem 2rem;
}
#pages .container.title {
	padding: 0 0 3.75rem 0;
	max-width: 1200px;
}
.audio, canvas, iframe, img, svg, video {
	vertical-align: middle;
}
code {
	font-family: monospace, monospace;
	line-height: .875rem;
	font-size: 0.75rem;
	margin: -.5rem 0 .5rem 0;
}
/* fonts */

h2 {
	font-weight: 700;
}
a, #ssHeader p.back a:hover, #ssHeader h1 a:hover, main nav.tabs a:hover, #ssHeader .when-where a:hover, main h1, main .faux-h1, main h3, #alumni .alumni-archive h2, #alumni .alumni-archive a.active, .alumni-list a:hover, .alumni-picture h1.name, .alumni-list .faculty-link a, main .alumni-copy h2, .presentations:hover .arrow, .presentations.show .arrow, #alumni .cycle-slide h3.name, #alumni .cycle-slide p.project .arrow, #programs h2, table.lecture-notes thead, table.lecture-notes a:hover, #alumni .alumni-info .alumni-list h3, #alumni .alumni-info .alumni-list a:hover, #alumni .alumni-info .alumni-back a:hover, #alumni .featured-alumni .person-info p a, #alumni .alumni-list .faculty-link a, #alumni .alumni-back a:hover, a.c-gray-70:hover {
	color: #07879e;
	text-decoration: none;
}
#faculty a:hover, #programs a:hover, #faq a:hover  {
	color: #f77000;
}
#alumni .alumni-picture a:hover, #alumni .alumni.landing .cycle-slide .person a:hover h2.name, #alumni .featured-alumni .person-info a:hover, #alumni .alumni-info a:hover, #alumni .alumni-archive a:hover {
	color: #f77000;
}
#ssHeader p.back, #ssHeader h1 {
	margin: 0;
	font-weight: 400;
}
#ssHeader h1 {
	font-size: 3rem;
	overflow: visible;
	padding: 0.1rem;
}
#ssHeader h1 a {
	display: inline-block;
}
#ssHeader .founded-year {
	font-size: 14px;
	line-height: 14px;
	width: 60px;
	display: inline-block;
	text-transform: uppercase;
	padding-left: 10px;
	color: #ff8100;
}
/* misc */

.visuallyhidden {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}
.bottom-0 {
	bottom: 0;
}
.close-btn {
	background: url(img/close-icon.png) top;
	height: 13px;
	width: 13px;
	position: absolute;
	top: 10px;
	right: 10px;
	cursor: pointer;
	background-size: 13px;
}
.close-btn:hover {
	background-position: 0 13px;
}
/* Header
  ========================================================================== */

#_header {
	display: none;
}
html, html._header-thick, html._header-thin {
	margin-top: 0 !important;
}
html {
	scroll-behavior: smooth;
	border-top: 120px solid #066d7f;
}
header {
	position: fixed;
	top: 0;
	width: 100%;
	background: #066d7f;
	padding: .5rem 0;
	transition: height 0.3s ease;
	z-index: 999;
}
header, header a, header img {
	transition: all 0.3s ease;
}
header .wrapper {
	max-width: 1200px;
	display: grid;
	margin: 0 auto;
	position: relative;
	grid-template-columns: minmax(200px, 300px) minmax(360px, 700px);
	/* grid-template-rows: auto minmax(50px, 70px); */
	justify-content: space-between;
	align-content: center;
	align-items: center;
	z-index: 9;
}
header .inline-links {
	grid-column: 1 / -1;
	justify-content: flex-end;
	grid-row: 1;
	width: 100%;
	display: flex;
	text-transform: uppercase;
}
header .inline-links li:not(:first-of-type) {
	margin-left: .5rem;
}
header .inline-links li, header .inline-links a {
	font-size: 0.75rem;
	font-weight: 400;
	color: #89e2f2;
}
header .inline-links .apply-now-btn {
	font-size: 1rem;
	font-weight: 600;
	color: #07879e;
	background: #fff;
	padding: 7px 10px;
	letter-spacing: 1px;
}
header .inline-links .apply-now-btn:hover {
	background: #f77000;
	color: #fff;
}
.inline-links {
	list-style-type: none;
}
.inline-links li {
	display: inline-block;
	align-self: center;
}
.inline-links li:not(:nth-last-of-type(2)):not(:last-of-type)::after {
	content: "|";
	color: #89e2f2;
	margin: 0 5px;
}
header .mobile-links {
	display: none;
}
header img {
	justify-self: flex-start;
	width: 294px;
	transition: width 0.5s ease;
}
header a.school-header {
    color: #ffffff;
    font-size: 1.75rem;
    font-weight: 600;
    margin-top: 17px;
    min-width: max-content;	
}

header nav {
	justify-self: flex-end;
	font-size: 1rem;
	font-weight: 400;
	color: #fff;
}
header nav a {
	font-size: 1rem;
	font-weight: 400;
	color: #fff;
}
header nav .current-menu-item a {
	color: #89e2f2;
}
header nav a:hover {
	color: #ffffff;
}
header nav ul {
	display: flex;
	justify-content: space-between;
	padding-left: 1.25rem;
}
header #menu-header>li {
	position: relative;
	padding: 20px 15px;
	margin-top: 25px;
}
header.sticky #menu-header>li {
	padding: 10px 15px;
	margin-top: 5px;
}
header #menu-header>li.menu-item-has-children>a::after {
	content: "";
	display: inline-block;
	width: 10px;
	height: 7px;
	margin-left: 5px;
	background: url(img/Arrow.png) no-repeat;
	background-size: 10px 7px;
}
header #menu-header>li.menu-item-has-children>a:hover::after, header #menu-header.active>li.menu-item-has-children a::after {
	background: url(img/Arrow-hover.png);
	background-size: 10px 7px;
}
header #menu-header>li:hover, header #menu-header>li.menu-item-has-children:hover, header #menu-header.active>li.menu-item-has-children {
	background: #f7811f;
}
header .sub-menu {
	display: none;
	position: absolute;
	padding: 10px 0;
	left: 0;
	min-width: 200px;
}
header .sub-menu li {
	background: #f7811f;
	padding: 10px 20px;
}
header .sub-menu li:hover {
	background: #f77000;
}
header .sub-menu li a {
	font-size: 15px;
	font-weight: 400;
	color: #fff;
}
header nav ul li:hover .sub-menu {
	display: block;
}
/* header overlay
  ================================== */

header .overlay {
	display: none;
	background: rgba(0, 0, 0, .3);
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 1;
}
header.menu-open .overlay {
	display: block;
}
/* header when sticky (docked)
  ================================== */

header.sticky .wrapper {
	grid-template-columns: 300px minmax(50px, 700px);
	grid-column-gap: 5px;
	grid-template-rows: 30px auto;
}
header.sticky .inline-links {
	display: none;
}
header.sticky img {
	width: 150px;
}

header.sticky a.school-header {
    font-size: 1.2rem;
    margin-top: 4px;	
}

header.sticky nav ul {
	flex-wrap: nowrap;
}
header .mobile-links .menu-button {
	display: flex;
	height: 30px;
	width: 30px;
	cursor: pointer;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
header .mobile-links .menu-button div, header .mobile-links .menu-button div::before, header .mobile-links .menu-button div::after {
	display: block;
	background-color: #fff;
	position: absolute;
	height: 4px;
	width: 30px;
	transition: transform 400ms cubic-bezier(0.23, 1, 0.32, 1);
	border-radius: 2px;
}
header .mobile-links .menu-button div::before {
	content: '';
	margin-top: -8px;
}
header .mobile-links .menu-button div::after {
	content: '';
	margin-top: 8px;
}
header.menu-open .menu-button div::before {
	margin-top: 0px;
	transform: rotate(405deg);
}
header.menu-open .menu-button div {
	background: rgba(255, 255, 255, 0);
}
header.menu-open .menu-button div::after {
	margin-top: 0px;
	transform: rotate(-405deg);
}
header.menu-open nav {
	display: block;
	grid-row: 2;
	grid-column: 1 / -1;
	margin-top: 10px;
}
#ssSubmenu {
	display: none;
}
#ssSubmenu ul .page_item a {
	color: #fff;
	display: block;
	padding: 0.2rem 1rem 0.472rem 1rem;
	font-weight: 600;
	font-size: 1.125rem;
	cursor: pointer;
}
#ssSubmenu ul .current_page_item a, #ssSubmenu ul .page_item:hover a {
	color: #707070;
	background: white;
}
#ssSubmenu ul {
	background: #db6600;
}
#ssSubmenu ul .page_item a {
	padding-top: 0.472rem;
	font-weight: 400;
}
/* Colors 
   ================================== */

.c-gray-70 {
	color: #707070;
}
.emperor-gray-bg {
	background: #505050 !important;
}
.blue-chill-bg {
	background: #07879e !important;
}
/* ==========================================================================
   Buttons
   ========================================================================== */

.btn-red {
	background: #dd1100;
	color: white;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1rem;
	padding: 0.4rem .625rem;
	border-radius: 3px;
	transition: background 0.2s, border-color 0.2s;
	font-weight: 600;
}
.btn-red:hover {
	background: #fe0000;
	color: white;
}
.list-button {
	font-weight: 700;
	display: block;
	box-sizing: border-box;
	font-family: 'Source Sans Pro', sans-serif;
	font-size: 1.1rem;
	color: white;
	line-height: 11px;
	white-space: nowrap;
	padding: 12px 14px 12px 14px;
	margin: 1rem 0;
	background-color: #07979e;
	border: 0;
	border-radius: 4px;
	cursor: pointer;
}
.list-button::before {
	content: '';
	background: url('https://content.wolfram.com/uploads/sites/34/2020/08/hamburger.svg') no-repeat;
	width: 21.4px;
	height: 12.38px;
	position: relative;
	display: inline-block;
	padding: 0;
	margin-right: .25rem;
}
.list-button:hover {
	background: #f77000;
}
/* Stripe */

.stripe {
	z-index: 999;
	overflow: visible;
	background: #07879e;
	text-align: center;
	padding: 1rem;
}
.stripe p, .stripe a {
	color: #fff;
	margin: 0;
}
.stripe a:hover {
	color: #fff9a0;
}
/* ==========================================================================
   Icons
   ========================================================================== */

.icon-chevron::before {
	border-style: solid;
	border-width: 0.30rem 0.30rem 0 0;
	content: '';
	display: inline-block;
	height: 0.75rem;
	left: 0.45rem;
	position: relative;
	top: 0.15rem;
	transform: rotate(-45deg);
	vertical-align: middle;
	width: 0.75rem;
	align-self: baseline;
	;
}
.icon-chevron-r:before {
	left: 0;
	transform: rotate(45deg);
}
.icon-chevron-b:before {
	top: -0.26rem;
	transform: rotate(135deg);
}
.icon-chevron-l:before {
	left: 0.25em;
	transform: rotate(-135deg);
}
/* ==========================================================================
   Pages
   ========================================================================== */

.title-wrapper {
	background: #07879e;
	max-width: 100%;
}
#pages .wrap {
	margin: 0 auto;
	max-width: 1140px;
}
#pages h1 {
	background: #07879e;
	color: #ffff;
	font-size: 3.125rem;
	font-weight: 300;
	padding: 3.125rem 0;
}
#pages h2 {
	color: #07879e;
	font-weight: 400;
	font-size: 1.875rem;
	padding: 3.125rem 3rem 0.5rem 0;
}
#pages h2.center {
	text-align: center;
}
#pages .faux-h1 {
	font-weight: 300;
	/* text-transform: uppercase; */
	font-size: 1.875rem;
	letter-spacing: 0.09rem;
	line-height: 2.31rem;
	margin: 2.25rem 0 1.75rem;
}
#pages nav.tabs {
	background: #ebebeb;
	border-bottom: 1px solid #c2c2c2;
	text-transform: uppercase;
}
#pages nav.tabs ul.wrap {
	margin: 0 auto;
	padding: 1.875rem 3.3125rem 0.3rem 3.3125rem;
}
#pages nav.tabs a.current {
	background-color: #fff;
	border-color: #c2c2c2;
	border-bottom-color: rgb(194, 194, 194);
	border-bottom-color: #fff;
}
#pages nav.tabs li {
	display: inline-block;
	margin: 0;
	padding: 0;
	vertical-align: top;
}
#pages nav.tabs a {
	border: 1px solid #ebebeb;
	border-bottom-color: #c2c2c2;
	color: #707070;
	position: relative;
	top: 1px;
	font-size: 1.125rem;
	padding: 0.31rem 1rem;
}
/* MISC */

#ssHeader .chevron-left {
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 0;
	position: relative;
	top: 3px;
}
/* Slideshow */

#cycle-frame img {
	max-width: 100%;
}
#cycle-frame .wrap {
	max-width: 51.93rem;
	padding: 2rem 1.5rem;
}
.cycle-slide {
	margin-bottom: 2em;
}
.cycle-slide .col {
	display: table-cell;
	vertical-align: top;
	padding-right: 4%;
}
.cycle-slide .col.half {
	width: 54%;
}
.cycle-slide .col+.col {
	padding-right: 0;
}
#cycle-pager {
	text-align: center;
}
#cycle-pager span {
	display: inline-block;
	color: rgba(0, 0, 0, 0);
	margin: 0 .35rem;
	width: 0.8rem;
	height: 0.8rem;
	border: .15rem solid #a5a5a5;
	border-radius: 50%;
	cursor: pointer;
}
#cycle-pager span.cycle-pager-active, #cycle-pager span:hover {
	background: #a5a5a5;
}
/* ==========================================================================
   Tumblr
   ========================================================================== */

.tumblr_wrapper {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}
.tumblr_wrapper .tumblr_post {
	flex-basis: 16%;
	margin-bottom: 0.4rem;
	background: #fff;
	border-radius: 8px;
	padding: 0.5rem .5rem 1rem .5rem;
}
.tumblr_wrapper>div>hr {
	border-top: 5px solid #ff8f2d;
	left: 0;
	position: absolute;
	right: 0;
	top: 136px;
	width: 100%;
}
.tumblr_wrapper .tumblr_post:hover {
	box-shadow: 0 2px 13px #9e0b00;
}
.tumblr_wrapper .tumblr_post .tumblr_photo_post {
	border: 1px solid #fff;
}
.tumblr_wrapper .tumblr_post .tumblr_photo_post:hover {
	border: 1px solid #BB4908;
}
.tumblr_wrapper .tumblr_post img.tumblr_photo {
	width: 100%;
	object-fit: cover;
}
/* text inside tumblr blocks */

.tumblr_wrapper hr {
	border-top: 1px solid #ccc;
	margin: .5px 0 0.625rem;
}
.tumblr_wrapper p.student {
	color: #ff8100;
	text-decoration: none;
	bottom: 3.75rem;
	display: block;
	white-space: pre-wrap;
	border-top: 1px solid #ccc;
	font-size: .81rem;
	padding: .5rem 0 0 0;
}
.tumblr_wrapper h4 {
	color: #767676;
	font-size: 0.937rem;
	font-weight: 300;
	margin: 6px auto 0px auto;
	text-align: center;
	line-height: 1.25rem;
	font-family: 'Source Sans Pro', Arial, sans-serif;
}
.tumblr_wrapper span {
	font-size: .625rem;
	text-transform: uppercase;
	padding: 0;
	margin: 0;
	margin-top: 0.3rem;
	color: #767676;
	line-height: 0.5;
	vertical-align: text-top;
	display: block;
}
.tumblr_wrapper p.project {
	color: #767676;
	font-size: .9375rem;
	font-weight: 400;
	display: block;
	padding: .625rem 0 .625rem;
	line-height: 1.25rem;
}
.tumblr_wrapper p.student {
	display: block;
	white-space: pre-wrap;
	max-width: 180px;
	border-top: 1px solid #ccc;
	font-size: 13px;
	padding: 6px 0 0 0;
}
/*tumblr blocks*/

.tumblr_wrapper .tumblr_post {
	flex-basis: 24.5%;
	/* 4 blocks */
}
/* image inside tumblr block */

.tumblr_wrapper .tumblr_post img.tumblr_photo {
	height: 250px;
}
/* ==========================================================================
   Programs 
   ========================================================================== */

/* Shared */
#programs .other-tracks {
	padding-bottom: 5rem;
	max-width: 62%;
}
#programs .title-wrapper a {
	font-size: 1.15rem;
	font-weight: 400;
	color: #ffffff;
	display: inline-block;
	padding-bottom: 1rem;
}
#programs .title-wrapper a:hover {
	color: #89e2f2;
}
#programs .title-wrapper span.pipe {
	content: "";
	border-right: 1px solid #fff;
	margin: 0 7px 0 5px;
}
#programs p.main {
	font-weight: 300;
	font-size: 1.625rem;
	line-height: 2.75rem;
	color: #535353;
	margin: 0;
	padding: 3.125rem 0 0 0;
	display: inline-block;
}
#programs h1.lower {
	padding-top: 5rem;
	padding-bottom: 1.125rem;
}
#programs img {
	height: fit-content;
}
#programs img.main {
	margin-top: -200px;
	float: right;
}
#programs .blue-header {
	font-size: 1.875rem;
	font-weight: 400;
	color: #07879e;
	margin-top: 3.125rem;
	text-align: center;
	display: block;
}
#programs .lists {
	font-size: 0.9375rem;
}
#programs h2 {
	text-transform: none;
	font-size: 1.25rem;
	line-height: 1.312rem;
	margin: 2rem 0 0.437rem;
	padding-top: 0;
	font-weight: 600;
	border-top-style: none;
}
#programs h2.rule {
	padding-top: 2.81rem;
	margin-top: 2.81rem;
	border-top: 1px solid #c2c2c2;
	max-width: 100%;
}
#programs .lists ul {
	margin: 0;
	padding-left: 1.17rem;
}
#programs .lists ul li {
	display: list-item;
	list-style-type: disc;
}
/* ==========================================================================
   RESOURCES
   ========================================================================== */

#resources .container {
	padding: 3.125rem 2rem 3.75rem 2rem;
}
#resources .tiles li {
	flex-basis: 33%;
	padding: 1.31rem 1.68rem;
}
#resources .tiles div {
	color: #333333;
	font-size: 1.0rem;
	font-weight: 600;
	padding-top: 0.6rem;
	line-height: 1.25rem;
}
#resources .tiles a:hover div {
	color: #ff8100;
}
#resources .tiles img {
	border: 1px solid #ccc;
}
/* ==========================================================================
   FAQ
   ========================================================================== */

#faq .faq-section {
	color: #535353;
	font-size: 1.0rem;
}
#faq h2:not(first-child) {
	padding: 3.125rem 0 0 0;
}
#faq .faq-section h3, #faq .faq-section span.bold {
	color: #333333;
	font-size: 1.0rem;
	font-weight: 600;
	margin-top: 2rem;
}
#faq .faq-section p {
	margin: .3rem auto;
}
/* ==========================================================================
   Faculty
   ========================================================================== */

#faculty {
	scroll-margin-top: 100px;
}
#faculty .container.title {
	padding: 0;
}
#faculty h2 {
	border-top: 1px solid #c2c2c2;
	padding-top: 2rem;
	padding-bottom: 0;
}
#faculty h3 {
	color: #07879e;
	font-size: 1.25rem;
	font-weight: 600;
	margin: 0;
}
#faculty h4 {
	font-style: italic;
	font-weight: bold;
	margin: .25rem 0;
}
#faculty .faculty-description {
	max-width: 800px;
}
#faculty .faculty-description p {
	margin-top: .3rem;
}
#faculty .chevron-after.bread-crumb {
	color: #fff;
	display: block;
	font-size: 1.15rem;
	font-weight: 400;
}
#faculty a:hover span.chevron-after.bread-crumb {
	color: #89e2f2;
}
.years-list li:not(:last-child)::after {
	content: "|";
	font-weight: bold;
	line-height: 22px;
	margin-left: 0.5rem;
}
.years-list li {
	padding-right: .5rem;
}
/* ==========================================================================
   Alumni
   ========================================================================== */

#alumni .alumni-picture {
	background: #f4f4f4;
}
#alumni .wrap {
	max-width: 1140px;
	padding: 3.125rem 2rem;
}
#alumni .wrap.alumni-list-wrapper {
	padding-bottom: 3.75rem;
}
#alumni .alumni-picture h2, #alumni .alumni-picture h3, #alumni .alumni-picture .faux-h2 {
	font-size: 1.25rem;
	font-weight: bold;
	letter-spacing: 0.07rem;
	margin: 0.875rem 0 2rem;
}
#alumni .alumni-picture h2 {
	margin-top: 0;
	padding: 0;
}
#alumni .alumni-picture img {
	border: 1px solid #c2c2c2;
	max-width: 802px;
}
#alumni .cycle-slide {
	display: flex !important;
}
#alumni .cycle-slide>div {
	flex-basis: 50%;
}
#alumni .cycle-slide>div:first-child {
	padding-right: 1rem;
}
#alumni .cycle-slide h3 {
	border: 0;
	line-height: 1;
	margin: 0;
	padding: 0;
	text-transform: none;
}
#alumni .cycle-slide .cycle-slide-cover img {
	width: 100%;
}
#alumni .cycle-slide .person {
	display: flex;
	width: 100%;
}
#alumni .cycle-slide .person a, #alumni .alumni-picture {
	color: #535353;
}
#alumni .alumni-picture {
	/* background:#07879e; */
}
#alumni .cycle-slide .person img {
	margin-right: .5rem;
}
#alumni .cycle-slide p.project {
	font-weight: 300;
	font-size: 1.1875rem;
	line-height: 1.3125rem;
	margin: 0.625rem 0 0;
}
#alumni .cycle-slide .description {
	font-weight: 300;
	line-height: 1.1875rem;
}
#alumni .cycle-slide .description p {
	margin: 0.625rem 0;
}
/* alumni class archive sidebar */

#alumni .alumni-archive {
	color: #07879e;
	font-size: 0.875rem;
	line-height: 1;
	margin: 0;
}
#alumni .alumni-archive h2 {
	font-size: .875rem;
	font-weight: 600;
	padding: 1rem 0 1rem 0;
}
#alumni .alumni-archive a {
	display: inline-block;
	margin: .3215rem 0;
	color: rgb(112, 112, 112);
}
#alumni .alumni-archive a::after {
	content: " »";
}
/* alumni single-alumni page */

#alumni .alumni-picture .alumni-img, #alumni .alumni-picture .nameplate {
	margin: 0;
	vertical-align: middle;
	padding: 0.25rem 0;
	padding-right: 1.125rem;
}
#alumni .alumni-picture .nameplate {
	font-size: 0.875rem;
	line-height: 1.125rem;
}
#alumni .alumni-picture .nameplate p {
	color: #07879e;
	margin: 0;
	font-weight: 300;
}
.alumni-picture .nameplate p a {
	color: #07879e;
}
#alumni .alumni-picture .nameplate {
	font-size: 0.875rem;
	line-height: 1.125rem;
}
#alumni .alumni-picture .nameplate h1.name {
	text-transform: none;
	font-weight: 400;
	letter-spacing: normal;
	margin: 0;
	background: #f4f4f4;
	color: #07879e;
	font-size: 1.375rem;
	line-height: 1.5rem;
	padding: 0;
}
#alumni .alumni-info {
	max-width: 850px;
	flex-basis: 90%;
}
#alumni .alumni-info h2 {
	text-transform: none;
	border: none;
	padding: 0;
	font-weight: 400;
	font-size: 1.125rem;
	margin: 1.875rem 0 0;
	/* color: #ff8100; */
	line-height: 1.375rem;
}
#alumni .alumni-info h3, #alumni .alumni-info h4 {
	color: #404040;
	font-size: 1rem;
	margin: 1rem 0 0;
	font-weight: 600;
}
#alumni .alumni-info img {
	max-width: 100%;
	height: auto;
	box-sizing: border-box;
	border: 1px solid #c2c2c2;
	padding: .5rem;
	margin: .66rem 0;
}
#alumni .alumni-info p {
	margin: 1.6rem 0 .625rem 0;
	font-size: .9375rem;
}
#alumni .alumni-info .gallery-link a.text-link {
	margin-right: 1.75rem;
}
#alumni .alumni-info .gallery-link img {
	border: none;
}
#alumni .alumni-info .alumni-list h3 {
	text-transform: uppercase;
	font-weight: 400;
	font-size: 1.125rem;
	margin: 1.6em 0 0 0;
}
#alumni .alumni-list ul {
	margin: 0.5rem 0;
	padding: 0 1rem 0 0;
	list-style: none;
	line-height: 1;
	font-size: 0.875rem;
	vertical-align: top;
}
#alumni .alumni-list li {
	display: flex;
	flex-basis: 33%;
}
#alumni .alumni-list a {
	color: inherit;
	margin: 0 0 0.25rem -0.43em;
	padding: .5rem;
}
#alumni .alumni-list .faculty-link a {
	font-weight: 600;
	font-size: 1.1875rem;
	text-transform: uppercase;
	letter-spacing: 1px;
	padding: .59375rem;
	margin: -.59375rem;
}
/* featured / advice alumni */

#alumni .featured-alumni .person {
	flex-basis: 40%;
	margin-bottom: 2.81rem;
}
#alumni .featured-alumni .person:nth-of-type(2n) {
	margin-left: 10%;
}
#alumni .featured-alumni .person img {
	border: 0;
	height: 83px;
	margin: 0 1rem 0 0;
	padding: 0;
}
#alumni .alumni-list h2 {
	font-weight: 400;
	letter-spacing: 0.07031rem;
	line-height: 1;
	margin: 0.625rem 0 2.81rem;
	padding-top: 4.56rem;
	/* text-transform: uppercase; */
	border-top: 1px solid #c2c2c2;
	font-size: 1.875rem;
	color: #07879e;
}
#alumni .alumni-list h2:first-child {
	border: none;
	margin: 0.625rem 0 3.5rem 0;
	padding-top: 0;
}
#alumni .featured-alumni .person-info h3 {
	margin: 0;
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 1;
	text-transform: none;
}
#alumni .featured-alumni .person-info p {
	font-size: 0.875rem;
	line-height: 1.35rem;
	margin: 0.714rem 0;
}
#alumni .featured-alumni .person-info p a {
	margin: 0;
	padding: 0;
}
#alumni nav.alumni-back {
	margin: 6.1875rem 0 0;
}
#alumni .alumni-back a {
	color: inherit;
}
#ssHeader p.back a svg.arrow, #alumni .alumni-back a svg.arrow {
	fill: #707070;
	vertical-align: baseline;
}
#ssHeader p.back a:hover svg.arrow, #alumni .alumni-back a:hover svg.arrow {
	fill: #ff8100;
}
/* ==========================================================================
   Bottom stripe
   ========================================================================== */

.stripe li {
	color: #ffffff;
	font-size: 1rem;
	font-weight: 400;
}
.stripe li:after {
	content: "";
	border-right: solid 1px #ffffff;
	margin: 0 6px 0 7px;
}
.stripe li.last:after {
	content: "";
	border-right: none;
	margin: 0 0 0 5px;
}
#stripe-bottom .button-center {
	margin: 1rem auto 0 auto;
}
#button-apply-today {
	background: #fff;
	color: #07979e;
	display: inline-block;
	font-size: 1rem;
	font-weight: 600;
	margin-bottom: 10px;
	padding: 10px 15px;
	text-transform: uppercase;
	letter-spacing: 1px;
}
#button-apply-today:hover {
	background: #f77000;
	color: #fff;
}
/* mailing list */

.stripe:hover {
	background: #07879e !important;
}
main h1 {
	max-width: 18em;
}
#sign-up {
	font-size: 0.9375em;
	line-height: 1.53333333em;
	margin: 0 auto;
	max-width: 45em;
	display: none;
}
#sign-up ul {
	padding: 0em;
}
#sign-up li, #message {
	width: 100%;
	padding-right: 5.996%;
	box-sizing: border-box;
}
#sign-up li {
	display: inline-block;
	vertical-align: top;
}
#sign-up li.short {
	width: 50%;
}
#sign-up li.text {
	padding-bottom: 1.266667em;
}
#sign-up .text label, #sign-up .text input {
	display: block;
	width: 100%;
	box-sizing: border-box;
}
#sign-up .text input {
	padding: 0.233333em;
	border: 1px solid #c2c2c2;
}
#sign-up .text label::after {
	content: "*";
}
#sign-up .fieldset ul {
	font-size: 0.866667em;
	padding: 0 1em;
	width: 300px;
	min-width: 14em;
}
#sign-up .fieldset li {
	width: 50%;
}
#sign-up .fieldset label {
	padding-left: 0.5em;
}
#submit, #submit:disabled.fail {
	background: #07879e;
	color: #fff;
	border: 0.071429em solid #07879e;
	font-size: 1em;
	font-weight: 600;
	line-height: 1.28571429em;
	padding: 0.571429em 2.321429em;
	margin-top: 2.5em;
	transition: background 0.2s, border-color 0.2s;
	text-transform: uppercase;
}
#submit:hover, #submit:disabled {
	background: #f77000;
	border-color: #f77000;
}
#submit:disabled.done {
	background: #092;
	border-color: #206c31;
}
#message, #sign-up .error-msg, #sign-up .text label::after {
	color: #d10;
}
#message {
	margin: 2em 0;
	font-weight: 600;
	line-height: 1.4;
}
#sign-up .text input.error {
	border-color: #d10;
}
#sign-up .error-msg {
	font-size: 0.866667em;
	padding: 0.384615em 1.384615em 0.076923em;
	line-height: 1.15384615em;
	background-repeat: no-repeat;
	background-position: 0 0.538461em;
	background-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2214%22%20height%3D%2214%22%3E%3Cpath%20d%3D%22M7%200a7%207%200%200%200-7%207%207%207%200%200%200%207%207%207%207%200%200%200%207-7%207%207%200%200%200-7-7zM5.95%202.3h2.1l-.3%205.95h-1.5l-.3-5.95zM7%208.95a1.2%201.2%200%200%201%201.2%201.2%201.2%201.2%200%200%201-1.2%201.2%201.2%201.2%200%200%201-1.2-1.2A1.2%201.2%200%200%201%207%208.95z%22%20fill%3D%22%23d10%22%2F%3E%3C%2Fsvg%3E);
}
/* ==========================================================================
   responsive breakpoint styles
   ========================================================================== */

/* styles for large screens (1200px)
   ========================================================================== */

@media all and (max-width: 1200px) {
	header .wrapper {
		padding-left: 30px;
		padding-right: 30px;
	}
	
	#pages .container.title {
        padding-left: 30px;
		padding-right: 30px;
    }
}
/* styles for medium screens (900px)
   ========================================================================== */

@media all and (max-width: 900px) {
	/* Header for < 900px */
	html, html._header-thick, html._header-thin {
		border-top: 44px solid #066d7f;
	}
	header img {
		width: 200px;
	}
	header .wrapper {
		grid-template-columns: 150px 1fr;
		grid-column-gap: 5px;
		grid-template-rows: 30px auto;
		padding-left: 15px;
		padding-right: 15px;
	}
	header .inline-links, header nav {
		display: none;
	}
	header img {
		width: 150px;
	}
	header a.school-header {
        margin-top: 0;
    }
	header nav ul, header.sticky nav ul {
		flex-wrap: wrap;
	}
	header #menu-header>li {
		padding: 10px 15px;
		flex-basis: 100%;
	}
	header nav .sub-menu {
		position: relative;
	}
	header .mobile-links {
		display: flex;
		justify-content: flex-end;
	}
	/* misc */
	.display-f__900 {
		display: flex !important;
	}
	.inner {
		padding: 2rem;
	}
	#ssHeader .inner .wrap {
		padding: 0;
	}
	#ssHeader #menu-header {
		box-shadow: 0 20px 23px 2px #202020;
	}
	
	#pages .container.title {
        padding-left: 15px;
		padding-right: 15px;
    }
	
	
	/*tumblr*/
	.tumblr_wrapper .tumblr_post img.tumblr_photo {
		height: calc(100vw*.14);
	}
	.tumblr_wrapper .tumblr_post {
		flex-basis: 32.5%;
	}
	/* image inside tumblr block */
	.tumblr_wrapper .tumblr_post:nth-child(-n+3) img.tumblr_photo {
		height: 200px;
	}
	.tumblr_wrapper .tumblr_post:nth-child(n+4) img.tumblr_photo {
		height: 160px;
		/* 4 blocks */
	}
	.tumblr_wrapper .tumblr_post:nth-child(n+8) img.tumblr_photo {
		height: 120px;
		/* 6 blocks */
	}
	.tumblr_wrapper .tumblr_post:nth-child(n+14) img.tumblr_photo {
		height: 90px;
		/* 10 blocks */
	}
	.tumblr_wrapper .tumblr_post:nth-child(n+22) img.tumblr_photo {
		height: 70px;
		/* 10 blocks */
	}
	/* Resources */
	#resources .tiles li {
		padding: 1.31rem .5rem;
	}
	/* Stripe */
	.stripe * {
		font-size: .92rem;
	}
	/* Program pages */
	#programs .other-tracks {
	    max-width: 100%;
    }
	#programs img.main {
		margin-top: -40px;
		float: left;
	}
}
/* styles for small screens (600px)
   ========================================================================== */

@media all and (max-width: 600px) {
	#ssHeader .chevron-left {
		font-size: 1.8rem;
		top: 2px;
	}
	/* tumblr */
	.tumblr_wrapper .tumblr_post {
		flex-basis: 100%;
	}
	/* alumni */
	#alumni .cycle-slide>div {
		flex-basis: 100%;
	}
	#alumni .cycle-slide>div:first-child {
		padding-right: 0;
	}
	#alumni .alumni-info {
		flex-basis: 100%;
		order: 2;
	}
	#alumni .alumni-list ul, #alumni .alumni-archive {
		font-size: 1rem;
	}
	#alumni .featured-alumni .person {
		flex-basis: 90%;
	}
	#alumni .featured-alumni .person:nth-of-type(2n) {
		margin-left: 0;
	}
	.categories-list-wrapper {
		position: relative;
	}
	.categories-list-menu {
		background: #fcfcfc;
		border: 1px solid #dedede;
		font-family: 'Source Sans Pro';
		padding: 1rem .5rem 1rem 0;
		position: absolute;
		top: 4.5rem;
		z-index: 10;
		font-weight: 400;
		width: 250px;
	}
	.categories-list-menu:before, .categories-list-menu:after {
		content: '';
		border-width: 10px;
		border-style: solid;
		display: block;
		left: 1rem;
		position: absolute;
		top: -20px;
	}
	.categories-list-menu:before {
		border-color: transparent transparent #fcfcfc transparent;
		content: '';
		top: -19px;
		z-index: 1;
	}
	.categories-list-menu:after {
		border-color: transparent transparent #dedede transparent;
		content: '';
		z-index: 0;
	}
	.categories-list {
		margin: 0 0 0 30px;
		padding: 0;
		list-style: none;
		display: inline-block;
		vertical-align: top;
	}
	.categories-list li {
		padding: 0 0 0 3px;
		position: relative;
		margin: 0.4rem 0;
	}
	.categories-list li:before {
		content: '';
		width: 4px;
		height: 4px;
		top: 10px;
		left: -8px;
		position: absolute;
		display: inline-block;
		background: #ee5050;
	}
	.categories-list a {
		color: #535353;
		line-height: 1.5;
		text-transform: none;
	}
	.categories-list a:hover {
		color: #c42c1f;
	}
	.categories-list-menu .categories-list-scroll {
		max-height: 400px;
		overflow-y: scroll;
		column-count: 1;
	}
	#alumni .list-button {
		font-size: 1.27rem;
		width: 165px;
	}
	/* Resources */
	#resources .tiles li {
		flex-basis: 100%;
	}
}
/* styles for minimum supported screen width (320px)
   ========================================================================== */

@media all and (max-width: 320px) {
	.flex-wrap-w__320 {
		flex-wrap: wrap;
	}
	.flex-direction-c__320 {
		flex-direction: column;
	}
	.margin-t-1__320 {
		margin-top: 1rem;
	}
	.display-n__320 {
		display: none !important;
	}
	.display-ib__320 {
		display: inline-block !important;
	}
	.tumblr_wrapper .tumblr_post {
		padding: 0.5rem;
	}
	.tumblr_wrapper .tumblr_post:nth-child(n+25) {
		display: none;
	}
	.tumblr_wrapper .tumblr_post:nth-child(n) img.tumblr_photo {
		height: 55px;
	}
}

/* styles for the front page projects section
   ========================================================================== */
#example-frame #container div.card {
    position: relative;
    height: 370px !important;
}
#example-frame .studentgroup {
    position: absolute;
    min-width: 218px;
    bottom: 12px;
}
#example-frame #container div.card img {
    height: 175px;
    object-fit: cover;
    object-position: center;
}
#example-frame div.title {
    font-size: 19px !important;
    display: -webkit-box;
    max-width: 200px;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}