/*
Theme Name: CDS - Child of OnePress
Description: CDS OnePress Theme
Author: Kerri A. Hicks
Template: onepress
Version: .2 beta
*/

body, a {
    color : #000 ;
}

.page-header {
    padding: 7px 0px;
    background: #4E3629 ;
    border : 0px solid ;
    margin : 0px ; 
    height : 58px ;
}

.site-header { 
	line-height: 25px ;
}

.site-footer {
    background: #ffedd6 ;
    color: #4E3629 ;
    font-size: 14px;
}

#colophon {
  background: white;
}


/* ------------- NAV MENU ------------ */

@media screen and (min-width: 1140px) {
	.header-transparent .no-scroll .site-header .onepress-menu > li > a {
		color: rgba(255, 255, 255, 0.9);
	}
}

/* Site Navigation */
.onepress-menu, .onepress-menu * {
	margin: 0;
	padding: 0;
	list-style: none;
}

.onepress-menu {
/* 
	float: right;
 */
    float : none ;
}

.onepress-menu ul {
	position: absolute;
	display: none;
	top: 100%;
	left: 0;
	z-index: 99;
}

.onepress-menu ul ul {
	top: 0;
	left: 100%;
}

.onepress-menu li {
	position: relative;
}


/* ------- make the top nav inline on desktop --------- */

.onepress-menu > li {
    float : none ;
    display : inline ; 
}

.onepress-menu li:hover > ul, .onepress-menu li.sfHover > ul {
    display : inline ; 
}

.onepress-menu a {
    display : inline ;
    position: relative;
}
/* ------- END make the top nav inline on desktop --------- */

/* ------- make the top nav block on mobile --------- */
@media screen and (max-width: 1140px) {
    .onepress-menu > li {
        float: left;
    }

    .onepress-menu li:hover > ul, .onepress-menu li.sfHover > ul {
        display: block;
    }

    .onepress-menu a {
        display: block;
        position: relative;
    }
}
/* ------- END make the top nav block on mobile --------- */


.onepress-menu ul {
	min-width: 12em;
	*width: 12em;
	border: 1px solid #e9e9e9;
	border-top: none;
}

.onepress-menu li {
	white-space: nowrap;
	*white-space: normal;
	-webkit-transition: background .2s;
	transition: background .2s;
}

.onepress-menu li:hover,
.onepress-menu li.sfHover {
	-webkit-transition: none;
	transition: none;
}

.onepress-menu a {
/* 
	font-family: "Raleway", Helvetica, Arial, sans-serif;
 */
	text-decoration: none;
	zoom: 0 ;
	letter-spacing: 0px ;
	padding-left: 0px;
	padding-right: 0px;
	margin-left: 12px;
	margin-right: 12px;
	text-transform: capitalize;
	color: #666 ;
	font-size: .8em ;
	font-weight: normal ;	
}

.onepress-menu a:hover {
	color: #666 ;
	border-bottom : 1px dotted #666 ; 
}

.onepress-menu ul li {
	line-height: 26px;
}

.onepress-menu ul li a {
	border-top: 1px solid #e9e9e9;
	padding: 8px 18px;
	color: #999999;
	font-size: 13px;
	text-transform: none;
	background: #ffffff;
	letter-spacing: 0;
}

.onepress-menu ul li a:hover {
	color: #03c4eb;
}

.onepress-menu li.onepress-current-item > a {
	color: #03c4eb;
}

.onepress-menu ul li.current-menu-item > a {
	color: #03c4eb;
}

.onepress-menu > li:last-child > a {
	padding-right: 0px;
}

.onepress-menu > li a.menu-actived {
	color: #03c4eb;
}

.onepress-menu .nav-toggle-subarrow {
	display: none;
}

#nav-toggle {
	display: none;
	margin-left: 15px;
}

@media screen and (max-width: 1140px) {
	.main-navigation {
		position: static;
	}
	.main-navigation .onepress-menu {
		width: 100% !important;
		display: none;
	}
	.onepress-menu.onepress-menu-mobile {
		display: block !important;
		position: absolute;
		top: 75px;
		right: 0;
		width: 100%;
		background: transparent;
		z-index: 100;
		border-bottom: 1px solid #e9e9e9;
	}
	.onepress-menu.onepress-menu-mobile > li > a {
		padding: 12px 20px;
	}
	.onepress-menu.onepress-menu-mobile li:hover ul {
		display: none;
	}
	.onepress-menu.onepress-menu-mobile ul {
		box-shadow: none;
		padding-bottom: 0;
		border: none;
		position: relative;
	}
	.onepress-menu.onepress-menu-mobile ul li:last-child {
		border-bottom: none;
	}
	.onepress-menu.onepress-menu-mobile ul li a {
		padding: 12px 35px;
		border-top: none;
	}
	.onepress-menu.onepress-menu-mobile ul li a:hover {
		background: transparent;
	}
	.onepress-menu.onepress-menu-mobile ul li li a {
		padding: 12px 70px;
		border-top: none;
	}
	.onepress-menu.onepress-menu-mobile ul li li li a {
		padding: 12px 105px;
	}
	.onepress-menu.onepress-menu-mobile ul ul {
		left: 0px;
	}
	.onepress-menu.onepress-menu-mobile li {
		line-height: 20px;
		background: #FFFFFF;
		border-top: 1px solid #e9e9e9;
		width: 100% !important;
	}
	.onepress-menu.onepress-menu-mobile li.onepress-current-item > a {
		color: #03c4eb;
	}
	.onepress-menu.onepress-menu-mobile a {
		color: #777777;
	}
	.onepress-menu.onepress-menu-mobile a:hover {
		color: #000000;
	}
	.onepress-menu.onepress-menu-mobile .nav-toggle-subarrow {
		display: block;
		color: #999999;
		border-left: 1px solid #e9e9e9;
		font-weight: normal;
		position: absolute;
		top: 0;
		right: 0;
		cursor: pointer;
		text-align: center;
		padding: 11px 20px;
		z-index: 10;
		font-size: 22px;
	}
	.onepress-menu.onepress-menu-mobile .nav-toggle-dropdown > .nav-toggle-subarrow .fa-angle-down:before {
		content: "\f106" !important;
	}
	.onepress-menu.onepress-menu-mobile .nav-toggle-dropdown > ul {
		display: block !important;
	}
	#nav-toggle {
		display: block;
	}
}

#nav-toggle {
	float: right;
	position: relative;
	width: 35px;
	overflow: hidden;
	white-space: nowrap;
	color: transparent;
}

#nav-toggle span {
	position: absolute;
	top: 50%;
	right: 5px;
	margin-top: -2px;
	-webkit-transition: all 0.2s;
	-moz-transition: all 0.2s;
	transition: all 0.2s;
	display: inline-block;
	height: 3px;
	width: 24px;
	background: #000000;
}

#nav-toggle span:before {
	top: -8px;
}

#nav-toggle span:after {
	top: 8px;
}

#nav-toggle span:before, #nav-toggle span:after {
	position: absolute;
	display: inline-block;
	height: 3px;
	width: 24px;
	background: #000000;
	content: '';
	right: 0;
	-webkit-transform: translateZ(0);
	-moz-transform: translateZ(0);
	-ms-transform: translateZ(0);
	-o-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transform-origin: 0% 50%;
	-moz-transform-origin: 0% 50%;
	-ms-transform-origin: 0% 50%;
	-o-transform-origin: 0% 50%;
	transform-origin: 0% 50%;
	-webkit-transition: -webkit-transform 0.2s;
	-moz-transition: -moz-transform 0.2s;
	transition: transform 0.2s;
}

#nav-toggle.nav-is-visible span {
	background: transparent;
}

#nav-toggle.nav-is-visible span:before {
	-webkit-transform: translateX(4px) translateY(-1px) rotate(45deg);
	-moz-transform: translateX(4px) translateY(-1px) rotate(45deg);
	-ms-transform: translateX(4px) translateY(-1px) rotate(45deg);
	-o-transform: translateX(4px) translateY(-1px) rotate(45deg);
	transform: translateX(4px) translateY(-1px) rotate(45deg);
}

#nav-toggle.nav-is-visible span:after {
	-webkit-transform: translateX(4px) translateY(0px) rotate(-45deg);
	-moz-transform: translateX(4px) translateY(0px) rotate(-45deg);
	-ms-transform: translateX(4px) translateY(0px) rotate(-45deg);
	-o-transform: translateX(4px) translateY(0px) rotate(-45deg);
	transform: translateX(4px) translateY(0px) rotate(-45deg);
}

#nav-toggle.nav-is-visible span:before, #nav-toggle.nav-is-visible span:after {
	background: #000000;
}
/* ------------- END NAV MENU ------------ */


/* ------- CUSTOMIZABLE SITE MENU ---------- */
#primary { 
    padding-bottom: 0px;
    padding-top: 0px;
}

#primary #site_content_menu {
    border : 0px solid yellow ;
    text-align: center ;
    /*margin-top : 150px ; */
}

#primary #site_content_menu ul {
    list-style-type : none ;
    padding-left : 0px ; 
    display : inline ;
}


#primary #site_content_menu ul li {
    display : inline ;
    font-family: 'IBM Plex Sans Condensed', Helvetica, Arial, sans-serif;
    font-size: 1rem;
    font-weight: 400;
    text-transform: capitalize;
}

#primary #site_content_menu ul li a {
    display : inline-block ; 
}
/* ------- END CUSTOMIZABLE SITE MENU ---------- */

/* ------ STYLE THE HERO IMAGE -------- */

#hero_widget {
    width : 100% ; 
    margin : 50px 0 0 0 ; 
    background-size: cover ; 
    background-repeat: no-repeat ;
}

#hero_text {
    height : auto;
    color: #000;
}

#hero_text h3 {
    padding : 40px ;
    padding-bottom: 0 ;
    font-family: 'IBM Plex Sans', Helvetica, Arial, sans-serif;
    font-size: 3rem ;
    font-weight: 600;
    width: 100% ;
    text-align: center ;
}

/* ------ END STYLE THE HERO IMAGE -------- */

/*------- DROPDOWN MENUS ------------------ */

li.menu-item-has-children {
    position: relative;
    display: inline-block;
    border : 0px solid green ;
}

li.menu-item-has-children ul.submenu {
    display: none !important ;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    padding: 12px 16px;
    z-index: 1;
}

li.menu-item-has-children:hover {
    display : block ; 
}

#site_content_menu {
  border: 0;
  margin-bottom: 30px;
}

#site_content_menu li {
  text-transform: uppercase;
  margin-right: 2em;
  letter-spacing: 1px;
}

/* ------ GLOBAL ------- */
body {
	font-family: 'Freight Sans Pro', Helvetica, Arial, sans-serif;
    font-size: 1.125rem ;
    font-weight: 300;
    line-height: 2rem;
}
h1 {
	font-family: 'IBM Plex Sans Condensed', Helvetica, Arial, sans-serif;
    font-size: 2.5rem;
    font-weight: 600;
    padding-top: 1.5rem;
}
h2 {
	font-family: 'IBM Plex Sans', Helvetica, Arial, sans-serif;
    font-size: 2rem;
    font-weight: 600;
    line-height: 2.25rem;
    padding-top: 1rem;
}
h3 {
	font-family: 'IBM Plex Sans', Helvetica, Arial, sans-serif;
    font-size: 1.25rem;
    font-weight: 500;
}
p {
	font-family: 'Freight Sans Pro', Helvetica, Arial, sans-serif;
    font-size: 1.125rem ;
    font-weight: 300;
    line-height: 2rem;	
}
li {
	font-family: 'Freight Sans Pro', Helvetica, Arial, sans-serif;
    font-size: 1rem ;
    font-weight: 300;
    line-height: 1.5rem;	
}
.entry-content a:visited, .entry-content a:focus {
	text-decoration: none;
	color: #000;
}
.entry-content a.btn {
	color: #fff;
}
.entry-content h2 a {
	color: #000;
}
cite {
	font-style: oblique;
}

/* ------ GLOBAL MOBILE - SMALL ------ */

@media screen and (max-width: 575px) {
	h1 {
		font-size: 1.825rem;
		padding-top: .5rem;
	}
	h2 {
		font-size: 1.625rem;
	}
}


/* ------ BOOTSTRAP OVERRIDES ------ */

#page #content-inside .card {
	border: 0;
	margin-bottom: 1em;
	margin-top: 1em;
}

/* removes the empty footer from all pages except project and people posts, which have tags in the footer */
/* 
body.page-template-default footer {
	display: block;
}
 */


/* ------ FRONT PAGE ------ */
/* overwrites bootstrap styles */
.home #page #content-inside {
	margin: 0;
	width: 100%;
}
/* front page grid */
.home .entry-content {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	grid-template-rows: repeat(9, auto);
}
/* front page section headings */
.home .entry-content h2 {
	/*border-bottom: 1px solid black;*/
	font-family: 'IBM Plex Sans', Helvetica, Arial, sans-serif;
    font-size: 2.25rem ;
    font-weight: 600;
    line-height: 3rem;
	margin: 4rem 0 0 0;
}
.expertise {
	display: grid;
	grid-area: 1 / 1 / 3 / 13;
	grid-template-columns: repeat(12, 1fr);
	grid-template-rows: auto;
}
.entry-content .expertise a {
	color: #555;
	font-weight: 600;
}
.entry-content p.lcp_post a {
	color: #000;
}
.entry-content .cds-events-table a {
	color: #000;
}
/* intro paragraph */
.expertise > p {
	font-family: 'IBM Plex Sans', Helvetica, Arial, sans-serif;
    font-size: 1.25rem ;
    font-weight: 400;
	grid-area: 1 / 4 / 2 / 10;
	line-height: 2rem;
}
/* specialties row */
.home .entry-content .row:nth-of-type(1) {
	padding: 0 5%;
	grid-area: 2 / 1 / 3 / 13;
}
/* specialties item */
.home .entry-content .row:nth-of-type(1) .card {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 0 3rem;
	text-align: center;
}
/* specialties item text */
.home .entry-content .row:nth-of-type(1) p.card-text { 
    line-height: 1.5rem;
}
.home .entry-content .row:nth-of-type(1) .card a {
	color: #333;
	font-family: 'IBM Plex Sans', Helvetica, Arial, sans-serif;
    font-size: 1.125rem;
    font-weight: 500;
    text-decoration: underline solid hsla(0, 0%, 0%, 0.3);
}
.home .entry-content .row:nth-of-type(1) .card a:hover, .home .entry-content .row:nth-of-type(1) .card a:focus {
	border-bottom: 3px solid hsla(0, 0%, 20%, 1);
	text-decoration: none;
	transition: .1s;
}
/* workshops row */
.cds-events-table {
	/*outline: 5px solid orange;*/
	grid-area: 3 / 2 / 4 / 12;
}
.cds-events-table h2 {
	margin-bottom: 2rem;
	/*outline: 5px solid red;*/
}
.cds-events-table > table > tbody > tr > td > ul > li {
	list-style-type: none;
}
.cds-event-badge {
	text-transform: uppercase; 
	font-size: 70%; 
	color: white; 
	background-color: #900;
}


.lw_events_title a {
	font-weight : bold ; 
	text-decoration : underline ; 
}


/* Come Find Us section heading */
.come-find-us {
	display: grid;
	grid-gap: 2rem;
	grid-template-columns: repeat(12, 1fr);
	grid-template-rows: repeat(5, auto);
	grid-area: 4 / 2 / 5 / 12;
}
.come-find-us h2 {
	grid-area: 1 / 1 / 2 / 13;
}
.come-find-us a {
	border-bottom: 4px solid hsla(0, 0%, 0%, 0.2);
	white-space: nowrap;
}
.come-find-us a:hover, .come-find-us a:focus {
	border-bottom: 4px solid hsla(0, 0%, 0%, 0.3);
	color: hsla(0, 0%, 0%, 0.7);
	text-decoration: none;
}
/* come find us content */
.come-find-us div:nth-of-type(1) {
	grid-area: 2 / 1 / 3 / 7;
}
.come-find-us div:nth-of-type(2) {
	grid-area: 3 / 1 / 4 / 7;
}
.come-find-us div:nth-of-type(3) {
	grid-area: 2 / 7 / 3 / 13;
}
.come-find-us div:nth-of-type(4) {
	grid-area: 3 / 7 / 4 / 13;
}
/* come find us card title */
.come-find-us div h3 {
	font-family: 'IBM Plex Sans', Helvetica, Arial, sans-serif;
    font-size: 1.25rem ;
    font-weight: 500;
    line-height: 1.5rem;
    margin-bottom: 0.625rem;
}
/* come find us card text */
.come-find-us div p {
	font-family: 'Freight Sans Pro', Helvetica, Arial, sans-serif;
    font-size: 1rem;
    font-weight: 300;
    line-height: 1.5rem;
}
/* Projects section heading */
.projects {	
	display: grid;
	grid-area: 5 / 2 / 6 / 12;
	grid-gap: 1rem;
	grid-template-columns: repeat(9, 1fr);
	grid-template-rows: auto;
}
.home .entry-content .projects h2 {
	grid-area: 1 / 1 / 2 / 10;
	margin: 2rem 0 0 0;
}
.home .entry-content .projects h2 a {
	text-decoration: underline solid hsla(0, 0%, 0%, 0.1);
}
.home .entry-content .projects h2 a:hover, .home .entry-content .projects h2 a:focus {
	border-bottom: 4px solid hsla(0, 0%, 20%, 1);
	text-decoration: none;
	transition: .1s;
}
.projects-note {
	font-size: 1rem;
	grid-area: 2 / 1 / 3 / 10;
	line-height: 1.5rem;
	margin-top: -1rem;
}
.projects-note a {
	border-bottom: 4px solid hsla(0, 0%, 0%, 0.2);
	white-space: nowrap;
}
.projects-note a:hover, .projects-note a:focus {
	border-bottom: 4px solid hsla(0, 0%, 0%, 0.3);
	color: hsla(0, 0%, 0%, 0.7);
	text-decoration: none;
}
/* project item content */
.projects div {
	display: flex;
	flex-direction: column;
}
/* project item image */
.projects div.project-icon-list div>a {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: .5rem;
}
/* project item title */
.projects div.project-icon-list div p {
	margin: 0 1rem;
	text-align: center;
}
/* project item title link */
.projects div.project-icon-list div p a {
	font-family: 'IBM Plex Sans', Helvetica, Arial, sans-serif;
    font-size: 1.25rem ;
    font-weight: 500;
    line-height: 1rem; /* needs to be fixed */
    text-decoration: underline solid hsla(0, 0%, 0%, 0.2);
}
.projects div.project-icon-list div p a:hover, .projects div.project-icon-list div p a:focus {
	border-bottom: 4px solid hsla(0, 0%, 20%, 1);
	text-decoration: none;
	transition: .1s;
}
/* project 1 */
.projects div.project-icon-list { /* I don't know why these don't respond to nth selectors; */
	grid-area:  3 / 1 / 4 / 4;
}
/* project 2 */
.projects div.project-icon-list + div.project-icon-list {
	grid-area: 3 / 4 / 4 / 7;
}
/* project 3 */
.projects div.project-icon-list + div.project-icon-list + div.project-icon-list {
	grid-area: 3 / 7 / 4 / 10;
}

/* ------ FRONT PAGE MOBILE - MEDIUM ------ */
@media screen and (max-width: 1140px) {
	.home .entry-content h2 {
		margin: 4rem 0 0 0;
	}
	.expertise > p { /* intro paragraph */
		grid-area: 1 / 2 / 2 / 12;
	}
	.home .entry-content .row:nth-of-type(1) .card { /* specialties item */
		padding: 0 1rem;
	}	
}

/* ------ FRONT PAGE MOBILE - SMALL ------ */
@media screen and (max-width: 575px) {
	#hero_widget {
		margin: 0;
		padding-top: 2rem;
	}
	#hero_text h3 {
		font-size: 2rem;
		padding: 0 3rem;
	}
	.home #content-inside {
		padding: 0;
	}
	.expertise, .expertise > p {
		font-size: 1.125rem;
		grid-area: 1 / 1 / 2 / 13;
		padding: 0 1.5rem;
	}
	.home .entry-content .card-text + p {
		margin-bottom: 0;
	}
	.come-find-us div:nth-of-type(1) {
		grid-area: 2 / 1 / 3 / 13;
	}
	.come-find-us div:nth-of-type(2) {
		grid-area: 3 / 1 / 4 / 13;
	}
	.come-find-us div:nth-of-type(3) {
		grid-area: 4 / 1 / 5 / 13;
	}
	.come-find-us div:nth-of-type(4) {
		grid-area: 5 / 1 / 6 / 13;
	}
	.projects div.project-icon-list {
		grid-area: 2 / 1 / 3 / 10;
		margin-top: 2rem;
		margin-bottom: 1rem;
	}
	.projects div.project-icon-list + div.project-icon-list {
		grid-area: 3 / 1 / 4 / 10;
	}
	.projects div.project-icon-list + div.project-icon-list + div.project-icon-list {
		grid-area: 4 / 1 / 5 / 10;
	}	
}

/* ------ FRONT PAGE TABLE OF EVENTS ------ */

#cds-events-table td {
  text-align: left;
}

#cds-events-table bg-primary {
  padding-left: .3em ;
  padding-right: .3em ;
}

/* ------ PROJECT LIST USING CATLIST PLUGIN ------ */

.project-icon-list img {
	width: 75px;
	height: 75px;
	float: left;
}

.project-icon-list div p {
	margin-left: 80px;
}

/* ------ SITE TITLE ------ */

#site_title {
    text-align : center ; 
    font-size : 3em ;
    font-weight : light ; 
    margin-top : 30px ; 
}


/* ------ ACTIVITIES PAGE ------ */

.activities {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	grid-template-rows: auto;
}
.activities h1 {
	grid-area: 1 / 2 / 2 / 12;
}
.activities p:nth-of-type(1) {
	grid-area: 2 / 2 / 3 / 12;
}
.activities p:nth-of-type(2) {
	grid-area: 3 / 2 / 4 / 12;
}
.activities ul {
	grid-area: 4 / 2 / 5 / 12;
	list-style: none;
	padding: 0;
}
.activities li {
	font-size: 1.125rem;
	line-height: 1.75rem;
}
.activities ul a {
	color: #444;
	font-size : 1.25rem;
	line-height: 1.5rem;
	text-decoration: underline solid hsla(0, 0%, 20%, 1);
}
.activities ul a:hover, .activities ul a:focus {
	border-bottom: 3px solid hsla(0, 0%, 20%, 1);
	text-decoration: none;
	transition: .1s;
}
/* ------ PROJECTS PAGE ------ */
.project-page__intro p:nth-of-type(1) {
	padding-right: 16rem;
}
section.featured-projects {
	display: grid;
	grid-gap: 2rem;
	grid-template-columns: repeat(12, 1fr);
	grid-template-rows: 3;
	margin-bottom: 2rem;
	width: 100%;
}
section.featured-projects h2 {
	margin-bottom: -1.5rem;
}
.featured-project:nth-of-type(1) {
	grid-area: 1 / 1 / 2 / 5;
}
.featured-project:nth-of-type(2) {
	grid-area: 1 / 5 / 2 / 9;
}
.featured-project:nth-of-type(3) {
	grid-area: 1 / 9 / 2 / 13;
}
.featured-project a, .mellon-project a {
	border-bottom: 3px solid #ccc;
}
.featured-project a:hover, .mellon-project a:hover {
	text-decoration: none;
}
.featured-project img, .mellon-project img {
	height: 35vh;
	object-fit: cover;
	object-position: 50% 0;
	width: 100%;
}
.mellon-project img {
	height: 40vh;
	object-position: 50% 40%;
}
.featured-project p, .mellon-project p {
	font-size: 1rem;
	line-height: 1.75rem;
}
section.mellon-projects {
	display: grid;
	grid-gap: 2rem;
	grid-template-columns: repeat(12, 1fr);
	grid-template-rows: auto;
	margin-bottom: 2rem;
	width: 100%;
}
section.mellon-projects h2 {
	grid-area: 1 / 1 / 2 / 13;
	margin-bottom: -1.5rem;
}
section.mellon-projects p {
	grid-row: 2 / 3;
	grid-column: 1 / 10;
}
.mellon-project:nth-of-type(1) {
	grid-row: 3 / 4;
	grid-column: 1 / 7;
}
.mellon-project:nth-of-type(2) {
	grid-row: 3 / 4;
	grid-column: 7 / 13;
}
.mellon-project:nth-of-type(3) {
	grid-row: 4 / 5;
	grid-column: 1 / 7;
}
.mellon-project:nth-of-type(4) {
	grid-row: 4 / 5;
	grid-column: 7 / 13;
}
.mellon-project p {
	font-size: 1rem;
	line-height: 1.75rem;
}
/* ------ PROJECTS PAGE MOBILE - SMALL ------ */
@media screen and (max-width: 575px) {
	.featured-project img, .mellon-project img { 
		padding-right: 1.325rem; /* check to see if there's a bootstrap conflict here ??? */
	}
	.featured-project:nth-of-type(1) {
		grid-area: 1 / 1 / 2 / 13;
	}
	.featured-project:nth-of-type(2) {
		grid-area: 2 / 1 / 3 / 13;
	}
	.featured-project:nth-of-type(3) {
		grid-area: 3 / 1 / 4 / 13;
	}
	.featured-project img {
		padding-right: .25rem;
	}
	.featured-project p {
		margin: 1rem 1rem 0 0;
	}
	section.mellon-projects {
		margin-bottom: 1.5rem;
	}
	section.mellon-projects h2 {
		margin: 1.5rem 1rem -1.5rem 0;
	}
	section.mellon-projects p {
		grid-area: 2 / 1 / 3 / 13;
		margin: 1rem 1rem 0 0;
	}
	.mellon-project:nth-of-type(1) {
		grid-row: 3 / 4;
		grid-column: 1 / 13
	}
	.mellon-project:nth-of-type(2) {
		grid-row: 4 / 5;
		grid-column: 1 / 13
	}
	.mellon-project:nth-of-type(3) {
		grid-row: 5 / 6;
		grid-column: 1 / 13
	}
	.mellon-project:nth-of-type(4) {
		grid-row: 6 / 7;
		grid-column: 1 / 13
	}	
	.project-page__intro p:nth-of-type(1) {
		padding-right: 1rem;
	}
}
/* ------ PROJECTS PAGE TABLET ------ */
@media screen and (min-width: 576px) and (max-width: 768px) {
	.container {
		margin: 0;
		padding: 0 2rem;
		width: 100%;
	}
	.project-page__intro p:nth-of-type(1) {
		padding-right: 1rem;
	}
	.featured-project p {
		line-height: 1.625rem;
		margin: .75rem 0 0 0;
	}
	section.mellon-projects p {
		grid-area: 2 / 1 / 3 / 13;
		margin: 1rem 0 0 0;
	}
}


/* ------ INDIVIDUAL PROJECT PAGES ----- */
.entry-header .entry-title {
	font-family: 'IBM Plex Sans', Helvetica, Arial, sans-serif;
    font-size: 2rem;
    font-weight: 600;
    padding-top: 1.5rem;
}
.project-summary {
	margin-right: 1rem;
}
.lead {
	font-family: 'Freight Sans Pro', Helvetica, Arial, sans-serif;
    font-size: 1.25rem;
    font-weight: 400;
    line-height: 2.125rem;
    margin-bottom: 1.25rem;
}
.project-description p {
	font-family: 'Freight Sans Pro', Helvetica, Arial, sans-serif;
    font-size: 1.125rem ;
    font-weight: 300;
    line-height: 2rem;	
}
.project-description ul li {
	color: #444;
	font-size: 1.125rem;
	font-weight: 300;
	line-height: 2rem;
}
.project-data {
	margin-left: 1rem;
}
.project-data p {
	font-family: 'IBM Plex Sans', Helvetica, Arial, sans-serif;
	font-size: 1rem;
	line-height: 1.75rem;
}
.project-data a, .project-description a, .project-summary a {
	border-bottom: 3px solid #ccc;
}
.project-data a:hover, .project-description a:hover , .project-summary a:hover {
	text-decoration: none;
}
.project-data p.btn, .project-data p a.btn {
	border-bottom: none;
	font-family: 'IBM Plex Sans', Helvetica, Arial, sans-serif;
	font-size: .75rem;
	font-weight: 800;	
}
.entry-footer .cat-links, .entry-footer .tags-links {
	font-family: 'IBM Plex Sans Condensed', Helvetica, Arial, sans-serif;
}
.entry-footer .cat-links a , .entry-footer .tags-links a {
		color: hsla(120, 39%, 33%, 1);
}

/* ------ INDIVIDUAL PROJECT PAGES MOBILE - SMALL ------ */

@media screen and (max-width: 575px) {
	.lead {
		font-size: 1.125rem;
		line-height: 1.825rem;
	}
	.project-data {
		margin-left: 0;
	}	
}
/* ------ INDIVIDUAL PROJECT PAGES TABLET ------ */
@media screen and (min-width: 576px) and (max-width: 768px) {
	.project-data {
		margin-left: 0;
	}
}


/* ------ WORKSHOPS PAGE ------ */
.workshops-page {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	grid-template-rows: auto;
}
.workshops-page h1 {
	grid-area: 1 / 1 / 2 / 13;
}
.workshops-page .alert {
	grid-area: 2 / 1 / 3 / 13;
	margin-bottom: -.5rem;
}
.workshops-list {
	background-color: #745d54;
	grid-area: 3 / 1 / 4 / 13;
	margin-bottom: 3rem;
	padding: 1rem 0;
	text-align: center;	
}
.workshops-list li {
	font-size: 1.25rem;
	font-weight: 500;
	list-style: none;
}
.workshops-list a, .workshops-list a:visited, .workshops-list a:focus {
	color: #fff;
}
.workshop-group {
	background-clip: padding-box;
	border-top: 48px solid transparent;
	grid-column-start: 3;
	grid-column-end: 11;
	padding: 1rem 0;
	position: relative;
	margin: -40px 0 1.25rem 0;
}
.workshop-group a {
	border-bottom: 3px solid #ccc;
}
.workshop-group a:hover {
	text-decoration: none;
}
a.course-material {
	border-bottom: none;
	color: #777;
	font-weight: 600;
}
a.course-material:hover {
	color: hsla(120, 39%, 40%, 1);
}
a.course-material:visited, a.course-material:focus {
	color: #777;
}
.entry-content .alert a {
	color: #333;
	font-weight: 600;
}
.workshop-group:nth-of-type(1) {
	padding-top: 0;
}
.workshop-group:nth-last-of-type(1) {
	margin-bottom: 0;
}
.workshop-group > h3 {
	margin-top: 2rem;
}
.workshop-group > h3:nth-of-type(1) {
	margin-top: .5rem;
}
/* ------ INDIVIDUAL EXPERTISE TABLET - MEDIUM ------ */
@media screen and (min-width: 576px) and (max-width: 768px) {
	.workshop-group {
		grid-column-start: 2;
		grid-column-end: 12;
	}
}
/* ------ WORKSHOPS PAGE MOBILE - SMALL ------ */
@media screen and (max-width: 575px) {
	.workshops-list {
		padding: 1rem;
		margin-bottom: 2rem;
	}
	.workshops-list li {
		font-size: 1.125rem;
	}
	.workshop-group {
		grid-column-start: 1;
		grid-column-end: 13;
		padding: 1rem;
	}
}

/* ------ ACTIVITIES/EXPERTISE PAGE ------ */
.entry-content ul {
	margin-top: 1.325rem;
}
.entry-content li {
	margin-bottom: 1.25rem;
}
.activities a:visited, .activities a:focus {
	color: #444;
}

/* ------ INDIVIDUAL ACTIVITIES/EXPERTISE PAGES ------ */
.expertise-page h3 {
	color: hsla(0, 0%, 0%, 1);
	font-weight: 600;
}
.expertise-page b, .expertise-page strong {
	color: hsla(0, 0%, 0%, 0.6);;
	font-weight: 600;
}
.expertise-page ul {
	margin-left: 2rem;
}
.expertise-page li {
	font-size: 1.125rem;
	line-height: 1.5rem;
	margin-bottom: 1rem;
}
.expertise-paragraph p {
	font-size: 1.25rem;
	font-weight: 500;
	line-height: 2.125rem;
	margin-bottom: 4rem;
	padding-right: 10rem;
}
.expertise-subject {
	margin-bottom: 4rem;
	padding-right: 10rem;
}
.expertise-subject a {
	border-bottom: 4px solid hsla(0, 0%, 0%, 0.2);
}
.expertise-subject a:hover {
	border-bottom: 4px solid hsla(0, 0%, 0%, 0.3);
	color: hsla(0, 0%, 0%, 0.7);
	text-decoration: none;
}
.expertise-subject h3 {
	color: hsla(0, 0%, 0%, 0.65);
	margin-top: 2rem;
}
.expertise-subject h3:nth-child(1) {
	color: hsla(0, 0%, 0%, 1);
	margin-top: 0;
}
p.expertise-intro {
	font-size: 1.25rem;
	font-weight: 500;
	line-height: 2.125rem;
	margin-bottom: 2rem;
}
.expertise-contact .su-column img {
	margin-bottom: .5rem;
	max-width: 15rem;
}
.su-column .expertise-contact p img {
	margin-bottom: .5rem;
	max-width: 15rem;
}
.expertise-contact p {
	line-height: 1.375rem;
	margin-bottom: 3rem;
}
.expertise-contact p:nth-child(1) {
	margin-bottom: 3rem;
}
.expertise-contact a {
	text-decoration: underline solid hsla(0, 0%, 0%, .2);
}
.expertise-contact a:hover, .expertise-contact a:focus {
	color: hsla(0, 0%, 47%, 1);
}
.expertise-contact a strong, .expertise-contact strong a, .expertise-contact a b, .expertise-contact b a {
	color: hsla(0, 0%, 0%, 1);
	text-decoration: underline;
}
.expertise-contact a:hover strong, .expertise-contact a:focus strong, .expertise-contact strong a:hover, .expertise-contact strong a:focus, .expertise-contact a:hover b, .expertise-contact a:focus b, .expertise-contact b a:hover, .expertise-contact b a:focus {
	color: hsla(0, 0%, 47%, 1);
}

/* ------ INDIVIDUAL EXPERTISE TABLET - MEDIUM ------ */
@media screen and (min-width: 576px) and (max-width: 768px) {
	.expertise-paragraph p, .expertise-subject {
		padding-right: 2rem;
	}
}
/* ------ INDIVIDUAL EXPERTISE MOBILE - SMALL ------ */
@media screen and (max-width: 575px) {
	.expertise-page ul {
		margin-left: .5rem;
	}
	.expertise-paragraph p, .expertise-subject {
		padding-right: 0;
	}
	p.expertise-intro {
		margin-bottom: 1rem;
	}
	.expertise-subject h3 {
		line-height: 1.5rem;
	}
	.expertise-contact {
		margin-top: 3rem;
	}
	.expertise-contact .su-column img {
		margin-bottom: 1rem;
		max-width: 100%;
	}
	.su-column .expertise-contact p img {
		margin-bottom: 1rem;
		max-width: 100%;
	}
}


/* ------ PEOPLE PAGE ------ */
.people-page {
	font-family: 'Freight Sans Pro', Helvetica, Arial, sans-serif;
    font-size: 1rem;
    font-weight: 300;
    line-height: 1.5rem;
    margin: 0 !important;	
}
.people-page span.title {
	display: block;
	line-height: 1.25rem;
	margin: .5rem 0 1rem 0;
}
.people-page > p {
	font-size: 1.25rem;
	line-height: 2.25rem;
	padding-right: 16rem;
}
.people-page > p a {
	border-bottom: 4px solid #ccc;
}
.people-page > p a:hover {
	text-decoration: none;
}
a.people__name {
	color: #333;
	font-weight: 600;
}


/* ------ PEOPLE PAGE TABLET - MEDIUM ------ */
@media screen and (min-width: 576px) and (max-width: 768px) {
	.people-page > p {
		padding-right: 0;
	}
/*	.people-page .su-column-inner {
		display: grid;
		grid-gap: 1rem;
		grid-template-columns: repeat(2, auto);
		grid-template-rows: 1;
	}
	.people-page .su-column img {
		max-width: 40%;
		grid-area: 1 / 1 / 2 / 2;
	}
	.people-page .su-column-inner a.people__name {
		grid-area: 1 / 2 / 2 / 3;
	}
	.people-page .su-column-inner span.title {
		grid-area: 1 / 2 / 2 / 3;
	}*/
}
	/* ------ PEOPLE PAGE MOBILE - SMALL ------ */
@media screen and (max-width: 575px) {
	.people-page > p {
		padding-right: 0;
	}
}

/* ------ INDIVIDUAL BIO PAGE ------ */
.person-page h3 {
	font-size: 2rem;
	line-height: 2rem;
}
.person-page h3 small {
	font-size: 1.25rem;
}
.person-page a {
	border-bottom: 3px solid #ccc;
}
.person-page a:hover {
	text-decoration: none;
}
.person-page .person-page_contact a {
	border-bottom: none;
	color: #555;
	font-weight: 600;
}
.person-page .person-page_contact a:hover {
	color: hsla(120, 39%, 42%, 1);
}

/* ------ ABOUT PAGE ------ */
.about-page {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	grid-template-rows: repeat(2, auto);
}
.about-page h2 {
	grid-area: 1 / 3 / 2 / 11;
}
.about-page a {
	border-bottom: 4px solid #ccc;
}
.about-page a:hover {
	text-decoration: none;
}
.about-text {
	grid-area: 2 / 3 / 3 / 11;
}
/* ------ ABOUT PAGE MOBILE / TABLET ------ */
@media screen and (max-width: 768px) {
	.about-page h2 {
		grid-area: 1 / 2 / 2 / 12;
	}
	.about-text {
		grid-area: 2 / 2 / 3 / 12;
	}	
}


/* ------ fix the flow of the header links ------- */

header#masthead .container {
	width: 100% ;
	max-width: 100%;
	text-align : center ; 
	font-size : .7em ;
}

.onepress-menu a {
	letter-spacing: -.018em;
}

div.page-header input#q {
	width : 300px !important ; 
}

div.page-header button#search {
	width : 70px !important ; 
}

/* ------ fix how the search box and button look and break ------- */

.submit-search-text {
	padding : 0px 5px ; 
}

button.btn {
	width : 60px !important ; 
}

@media (max-width: 991px) {
	
	div.page-header input#q {
		width : 100px !important ; 
		border-radius: 4px 4px 4px 4px !important;
	}
	
	div.page-header button#search {
		width : 50px !important ; 
		margin : 1px 0px 0px 0px !important ; 
		border-radius: 4px 4px 4px 4px !important;
	}		

	.submit-search-text {
		font-size : .8em ; 
	}
}


/* ------ make Project page list and People page lists into a single div that wraps across three columns automatically on a wide screen ------- */

/* 
ul.su-posts-list-loop a {
	border-bottom: 3px solid #ccc;
	line-height : 1.8 ; 
}
 */

@media (min-width: 991px) {
	ul.su-posts-list-loop, .people-page .students, .people-page .alumni ul {
		column-count: 3;
		column-width : auto ; 
		column-gap : auto ; 
		margin-left : 0px ; 
		padding-left : 0px ;
	}

	ul.su-posts-list-loop li {
		display : inline-block ;
		list-style-type : disc ; 
		margin-left : 0px ; 
	}

	ul.su-posts-list-loop li:before {
	  content: '\2022';
	  margin-right: 0.5em;
	}

	ul.su-posts-list-loop li:after {
		white-space : pre-wrap ; 
		content: '\0009\0009\0009\0009';
	}

	.people-page .alumni ul li {
		margin-top : 0px ; 
	}

}


/* ------ Footer styles ------- */

/* embed icomoon support -- files in common/css/ */

@font-face {	font-family: 'icomoon';	src:url('/common/fonts/icomoon.eot');	src:url('/common/fonts/icomoon.eot#iefix') format('embedded-opentype'),		url('/common/fonts/icomoon.ttf') format('truetype'),		url('/common/fonts/icomoon.woff') format('woff'),		url('/common/fonts/icomoon.svg#icomoon') format('svg');/* 	font-weight: normal;	font-style: normal; */}

[class^="icon-"], [class*=" icon-"] {	font-family: 'icomoon';	/* 	font-style: normal;	font-weight: normal;	font-variant: normal;	text-transform: none;	line-height: 1; */	/* Better Font Rendering =========== */	-webkit-font-smoothing: antialiased;	-moz-osx-font-smoothing: grayscale;}

/* 
This is an abbreviated set of rules -- the full set can be found in the icomoon.css file in this directory
 */

.icon-office:before {	content: "\e900";}
.icon-books:before {	content: "\e92d";}
.icon-library:before {	content: "\e92e";}
.icon-clock:before {	content: "\e95b";}
.icon-calendar:before {	content: "\e902";}
.icon-display:before {	content: "\e904";}
.icon-bubble:before {	content: "\e974";}
.icon-bubbles4:before {	content: "\e979";}
.icon-users:before {	content: "\e906";}
.icon-quotes-left:before {	content: "\e97f";}
.icon-search:before {	content: "\e907";}
.icon-accessibility:before {	content: "\e90a";}
.icon-info:before {	content: "\e90e";}
.icon-sort-alpha-asc:before {	content: "\ea48";}

.icomoon {
    font-size : 2em ;
}

@media (max-width : 990px) {
	footer {
        padding-left : 20% ;
    }
}

footer {
    background-color : #ffedd6 ;
    padding-top : 20px ; 
    color : #4E3629 ;
    font-family: freight-sans-pro, Arial, sans-serif ;
    line-height : 1 ;
}

footer.row {
	margin : 20px 0px 0px 0px ; 
	padding : 0px ; 
}

footer a {
    color : #4E3629 !important ;
    text-decoration : none ; 
    border-bottom : 1px dotted #FFD5A3 ;
}

footer .icon {
    font-size : 1.5em ;
    margin-left : 0px ; 
    display : inline-block ;  
}

footer h2 {
    font-size : 1em ; 
    display : inline-block ; 
    font-weight : bold ; 
    margin-bottom : 2px ;
    margin-top : 2px ;  
    padding : 0px ; 
}

footer ul {
    list-style-type : none ; 
}

footer ul.inline-list li {
    float : left ; 
    padding-right : 5px ; 
}

footer li {
	line-height : 1 ;
}

footer #meta_info .contact li a {
    font-size : 1.2em ; 
}

footer a:hover {
    text-decoration : none ; 
    border-bottom : 1px dotted #000 ;   
}

footer .lib_footer_icons a {
    border : 0px ; 
}

footer .col-md-3 {
	width: 100%;
	padding : 0px ; 
}

@media (min-width : 992px) {
	footer .col-md-3 {
		width : 25%;
		float : left ; 
		position : relative ; 
		min-height : 1px ; 
		padding : 15px ; 
	}
}

footer .screen_reader {
	position: absolute;
	left: -10000px;
	top: auto;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

footer li.physaddress {
	line-height : 1.4 ; 
	font-size : .9rem ; 
}

.entry-footer {
	background-color : #fff !important ; 
}

/* ------ End Footer styles ------- */
