 
.article-body {
	position:relative;
}


/* Project > Banner Intro */
section.proj-intro {
	display:flex;
	padding: 1.5rem;
	position:relative;
}
section.proj-intro .img {
	display:table;
	flex: 0 0 40%;
	padding: 100px 50px;
	box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    -moz-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    -webkit-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

section.proj-intro .img img {
	background-color: white;
	    display: block;
    margin: 0 auto;
    width: 60%;
}
section.proj-intro .info {
	flex: 1;
	padding-left:1.5rem;
}
section.proj-intro .info .in {
	display:table;
	width:100%;
	height:100%;
}
section.proj-intro .info .in .c {
	display:table-cell;
	vertical-align:top;
	height:100%;
	width:100%;
}

section.proj-intro .info .in h1 {
padding: 0 2rem;
    background-color: black;
    color: white;
    display: inline-block;
    line-height: 3.2rem;
	margin:0;
}
section.proj-intro .info .in .details {
	clear:both;
}
section.proj-intro .details table {
	width:100%;
	font-size: .9rem;
	margin-top:1.5rem;
	color:#555;
}
section.proj-intro .details table tr td {
	line-height:1.5rem;
}
section.proj-intro .details table tr td:first-of-type {
	width:150px;
	font-weight:bold;
	vertical-align:top;
}
section.proj-intro .details table tr.url {

}
section.proj-intro .details table tr.url td a {
	color: #555;
	border-bottom: 0;
}
section.proj-intro .details table tr.url td a::after {
	font-family: "Font Awesome 5 Pro";
  padding-left: 5px;
  font-style: normal;
	font-size: 12px;
	content: "\f360";
	font-weight:600;
} 
section.proj-intro .details table tr.url td a:hover {
	color:black;
}

section.proj-intro .details table tr.summ td {
	padding-top:1.5rem;
	line-height:1.5rem;
	font-weight:normal;
	font-size:1.0rem;
	color:black;
}
section.proj-intro .details .ctas {

}
section.proj-intro .details .ctas a {
	font-size: 1.2rem;
    padding: 0 25px;
    line-height: 2.5rem;
	margin-top:1.5rem;
}
/* Article text */

section.post-stars::after {
	display:block;
	width:100%;
	text-align:center;
	content:"* * *";
	font-size:1.6rem;
}
section.pre-stars::before {
	display:block;
	width:100%;
	text-align:center;
	content:"* * *";
	font-size:1.6rem;
	margin-bottom:3rem;
}
section.sep-stars {
	display:block;
	width:100%;
	position:relative;
}
section.sep-stars::before {
	display:block;
	width:100%;
	text-align:center;
	content:"* * *";
	font-size:1.6rem;
}
section.txt {
	padding-top: 3rem;
  padding-bottom: 3rem;
}
section.txt h2:first-of-type {
	margin-top:0;
}
section.txt p:last-of-type {
	margin-bottom:0;
}
section.head h1,
section.head h2 {
	margin:2rem 0 2rem 0;
}
section.center {
	text-align:center;
}

section.txt .pub-abstract,
section.txt .pub-keys,
section.txt .pub-title {
	background-color:#f9f9f9;
	padding:15px;
}
section.txt .pub-title {
	font-size: 1.2rem;
	font-weight:bold;
}
section.txt .pub-keys {
	font-style:italic;
}

/* Img captions */

section.strong.img span.easy_img_caption_inner {
	padding: 0 1.5rem;
	display:block;
	margin:0 auto;
}
section.strong.img span.easy_img_caption_inner > span {
	max-width:760px;
	display:block;
	margin: 0 auto !important;
}

/* Video */
.is-video {
	width: 100%;
  max-width: 100%;
  border: 1px solid black;
  border-radius: 5px;
  overflow: hidden;
}

/* WIC */

section {
	padding-left:1.5rem;
	padding-right:1.5rem;
}
section.nopad,
section.nosidepad {
	padding-left:0;
	padding-right:0;
}
section.nocolpad {
	padding-top:0;
	padding-bottom:0;
}
section.nobotpad {
	padding-bottom:0;
}
section.notoppad {
	padding-top:0;
}
.strong {
	width:100%;
}
.weak {
	max-width: calc(760px + 3rem);
	margin:0 auto;
}

.bc-full main#content > .container,
.bc-work main#content > .container,
.bc-home-retro main#content > .container {
	max-width:100%;
	padding:0;
}
.bc-full main#content .col-md-12,
.bc-work main#content .col-md-12,
.bc-home-retro main#content .col-md-12 {
	padding:0;
}


/* Work > Disclaimer */

section.method {
	background-color:black;
	color:white;
	padding: 4rem 0 5rem 0;
	position:relative;
}
section.method::before {
content: "";
    display: block;
    width: 120%;
    height: 140px;
    background-color: black;
    -ms-transform: rotate(-4deg);
    -webkit-transform: rotate(-4deg);
    transform: rotate(-4deg);
    z-index: 3;
    position: absolute;
    top: -48px;
    left: -10%;
}
section.method .txt {
	position:relative;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
	z-index:5;
}
section.method .txt p {
	font-size:1.4rem;
	margin:0;
	text-align:center;
}


/* Cover */
section.cvr img {
	width:100%;
	height: auto;
}
/* Banner */
section.bnr {
	width:100%;
	display:block;
	background-color: white;
	padding: 6rem 0 12rem 0;
	position:relative;
	overflow:hidden;
	border-bottom: 1px solid #ced4da;
}
section.bnr.l-poly::before {
	display: block;
	width:350px;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	content:"";
	background-image:url(../../../images/work/left-poly-sm.jpg);
	background-repeat:no-repeat;
	background-size:contain;
	background-position: top left;
}
section.bnr.l-poly::after {
	display: block;
	width:350px;
	height:100%;
	position:absolute;
	top:0;
	right:0;
	content:"";
	background-image:url(../../../images/work/right-poly-big.jpg);
	background-repeat:no-repeat;
	background-size:contain;
	background-position: top right;
}
section.bnr .bnr-i {
	padding: 2rem;
    width: 100%;
	position:relative;
    max-width: 50%;
    background-color: white;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
	-moz-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
	-webkit-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
	z-index:5;
}

section.bnr .bnr-i .lbl {
	margin-bottom: 1rem;
}

section.bnr img.logo-main {
	width: 60px;
}

/* Banner > CRS Home */
.bc-home-retro section.bnr.bnr-crs {
	padding:0 0 6rem 0;
	height: auto;
	position:relative;
	overflow:visible;
	z-index:1;
	border-bottom:0;
}
.bc-home-retro section.method::before {
	display:none;
}
section.bnr-crs .bnr-crs--inner {
	display:flex;
	flex-direction:column;
	position:relative;
}
.bc-home-retro.bc-white-nav .pre-nav {
	height:100px;
}

section.bnr .bnr-head {
	padding: 3rem .75rem 7rem 1.5rem;
    width: 100%;
	flex-grow:1;
	flex-shrink:1;
    background-color: black;
	color:white;
	text-align:center;
	z-index:5;
	display:table;
}
section.bnr .bnr-head .bnr-head--inner {

}
section.bnr .bnr-head h1 {
	font-size:4rem;
	line-height:4rem;
	margin:0 0 10px 0;
}
section.bnr .bnr-head h2 {
	font-weight:normal;
	font-size:1.5rem;
	margin:0;
}
section.bnr-crs .bnr-feature {
	flex-grow:1;
	flex-shrink:1;
	max-width: calc(760px);
	padding:.75rem;
	margin:-4rem auto 0 auto;
	z-index:6;
	background-color:white;
	box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    -moz-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    -webkit-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}
section.bnr-crs .bnr-feature .bnr-feature--inner {
	height:100%;
	padding: .75rem .75rem 0 .75rem;
}
section.bnr-crs .bnr-feature .bnr-feature--inner h2 {
	margin:0 0 25px 0;
}
section.bnr-crs .bnr-feature .bnr-feature--tldr {
	
}
section.bnr-crs .bnr-feature--tldr h3 {
	margin:0 0 15px 0;
	font-weight:bold;
	font-size:1.2rem;
}
section.bnr-crs .tldr-row {
	border-bottom: 1px solid #ced4da;
	padding:10px 0;
	display:flex;
}
section.bnr-crs .tldr-row:last-of-type {
	border-bottom:0;
	padding-bottom:0;
}
section.bnr-crs .tldr-row--label {
	flex-shrink:0;
	flex-grow:0;
	flex-basis: 100px;
	width:100px;
}
section.bnr-crs .tldr-row--label p {
	color:gray;
}
section.bnr-crs .tldr-row--text {
	flex-shrink:1;
	flex-grow:1;
	padding-left:15px;
}
section.bnr-crs .tldr-row p {
	margin:0;
	font-size:0.8rem;
}
section.bnr-crs .tldr-row--projects a.project-link {
	display:inline-block;
	margin-right:5px;
	margin-bottom: .75rem;
	padding:15px 10px;
	width:100px;
	background-color:#f3f3f3;
	text-decoration:none;
	border:0;
	border-radius: 10px;
	color:black;
}
section.bnr-crs .tldr-row--projects a.project-link:hover,
section.bnr-crs .tldr-row--projects a.project-link:focus {
	color:black;
	background-color:#e5e5e5;
}
section.bnr-crs .tldr-row--projects a.project-link img {
	display:block;
	width:25px;
	margin: 0 auto 7px auto;
}
section.bnr-crs .tldr-row--projects a.project-link.for-crs img {
	width:28px;
	margin: -2px auto 5px auto;
}
section.bnr-crs .tldr-row--projects a.project-link span {
	font-weight:bold;
	display:block;
	position:relative;
	padding:0;
	font-size:0.7rem;
	text-align:center;
}

/* Timeline */

section.tl {
	background-color:#f9f9f9;
}
section.tl ul {
	list-style-type:none;
	margin: 0 auto;
	padding:3rem 0 3rem 30px;
	max-width: 760px;
	border-left: 2px solid gray;
}
section.tl ul li {
	position:relative;
	margin-bottom:3rem;
}
section.tl ul li:last-of-type {
	margin-bottom:0;
}
section.tl ul li.hd {
	
}
section.tl ul li.hd::before {
	display:none;
}
section.tl ul li::before {
	position:absolute;
	top:8px;
	left:-37px;
	display:block;
	width:12px;
	height:12px;
	border-radius:50%;
	content:"";
	background-color: gray;
}

section.tl ul li .t-i {
	position:relative;
}
section.tl ul li .t-i h3,
section.tl ul li .t-i h3 a{
	font-size:1.3rem;
	color:black;
	text-decoration:none;
	margin:0;
}
section.tl li .t-date {
	position: absolute;
    top: 4px;
    left: -167px;
    text-align: right;
    text-transform: uppercase;
    font-size: .8rem;
    color: gray;
    width: 100px;
}
section.tl .lbls {
	display:block;
}
section.tl .lbls .l {
	background-color: rgba(0,0,0,.1);
    color: rgba(0,0,0,.7);
	padding: 0 6px;
    text-transform: uppercase;
    font-size: .8rem;
    display: inline-block;
	position:relative;
	line-height: 25px;
}
section.tl .lbls .l.proj {
	padding: 0 6px 0 28px;
}
section.tl .lbls .l.proj::before {
content: "";
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top left;
    width: 16px;
    height: 16px;
    display: block;
	position:absolute;
	top:4px;
	left:6px;
}
section.tl .lbls .l.proj.crs::before {
	background-image:url(../../../images/static/crs-brain-icon.png);
}
section.tl .lbls .l.proj.omnika::before {
	background-image:url(../../../images/static/omnika/omnika-icon-dark.png);
}
section.tl .lbls .l.proj.allo::before {
	background-image:url(../../../images/static/allo/allo-icon-small-color.jpg);
}
section.tl .lbls .l.proj.mentology::before {
	background-image:url(../../../images/static/mentology/mentology-icon-color.png);
}

section.tl .t-desc {
	font-size: 1.0rem;
	margin-top:25px;
	color:gray;
}
section.tl a.t-link {
	display:inline-block;
}
section.tl a.t-link:hover {
	color: #0056b3;
	text-decoration:none;
}

/* Projects */
section.proj-items {
					display:block;
					margin-bottom:4rem;
				}
				.proj-items .p-i-wrap {
					flex: 0 50%;
					width:100%;
					padding:60px 15px 15px 15px;
					position:relative;
					text-align:center;
					box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    -moz-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    -webkit-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
				}
				.proj-items .p-i-wrap .field {
					position:absolute;
					top:0;
					left:0;
					text-align:left;
					line-height: 2.1rem;
					padding: 2px 15px 0 15px;
					display:block;
					width:100%;
					border-bottom: 1px solid #e3e3e3;
					font-size:.8rem;
					text-transform:uppercase;
				}
				.proj-items .p-i-wrap .field .v {
					display:inline-block;
					position:relative;
					padding:0 3px;
				}
				.proj-items .p-i-wrap .field .v::after {
					content:"";
					width:100%;
					height:2px;
					background-color:black;
					display:block;
					position:absolute;
					bottom:0;
					left:0;
				}
				.proj-items .p-i-wrap .status {
					  position: absolute;
						top: 0;
						right: 15px;
						font-size: .8rem;
					text-transform:uppercase;
					line-height:2.1rem;
					color:#adadad;
					padding-top:2px;
				}
				.proj-items .p-i-wrap p {
					color: gray;
					font-size: 1rem;
					margin: 0 0 25px 0;
				}
				.proj-items .p-i {
					width:49.5%;
					display:inline-block;
					padding-bottom:30px;
				}
				.proj-items .p-i:nth-of-type(even) {
					padding-left:15px;
				}
				.proj-items .p-i:nth-of-type(odd) {
					padding-right:15px;
				}
				.proj-items .p-i-wrap img {
					padding: 5px;
					margin-bottom:15px;
					height:60px;
				}
				.proj-items .p-i-wrap h4 {
						font-size: 1.3rem;
						font-weight: bold;
					position:relative;
					margin: 0 0 .5rem 0;
				}
				.proj-items .p-i-wrap h4 sup {
					color:gray;
				}
				.proj-items .p-i-wrap a.btn {
					width:100%;
				}


/* START OF VIEWPORTS */

/* 761px - 1070px */
@media only screen and (max-device-width: 1070px) and (min-device-width: 761px), screen and (max-width: 1070px) and (min-width: 761px) {
	section.tl ul {
		padding: 3rem 0 3rem 20px;
	}
	section.tl ul {
    margin: 0 0 0 115px;
	}
	section.tl li .t-date {
		font-size:.7rem;
		top: 2px;
    left: -143px;
	}
	section.tl ul li::before {
		left:-27px;
		top:5px;
	}
	section.tl ul li .t-i h3, section.tl ul li .t-i h3 a {
		font-size: 1.1rem;
	}

/* END OF VIEWPORT */
}

/* 1px - 992px */
@media only screen and (max-device-width: 992px) and (min-device-width: 1px), screen and (max-width: 992px) and (min-width: 1px) {
	
	section.bnr .bnr-i {
		max-width:100%;
	}
	
	/* Project > Pubs */
	section.rows.pubs .r-t {
    min-width: auto;
    font-weight: normal;
    position: absolute;
    top: 0;
    left: 0;
    font-size: .8rem;
    color: gray;
    padding: 15px 0 0 1.5rem !important;
	}
	section.rows.pubs .r-c {
    flex: 0 0 100%;
    flex-grow: 1;
    max-width: 660px;
    margin: 0 15px 0 0;
    padding: 35px 0 15px 1.5rem;
}
	section.rows.pubs .r-s {
		padding-top:35px;
	}

/* END OF VIEWPORT */
}

/* 761px - 992px */

@media only screen and (max-device-width: 992px) and (min-device-width: 761px), screen and (max-width: 992px) and (min-width: 761px) {

	/* Project */
	section.proj-intro {
		padding-left: calc(180px + 1.5rem);
	}
	section.proj-intro .img {
		position: absolute;
    top: 1.5rem;
    left: 1.5rem;
    width: 180px;
    padding: 50px 25px;
	}
	section.proj-intro .info .in h1 {
    padding: 0 1.5rem;
    line-height: 2.6rem;
    font-size: 1.8rem;
    margin: 0;
	}
	
/* END OF VIEWPORT */
}


/* 591px - 992px */

@media only screen and (max-device-width: 992px) and (min-device-width: 591px), screen and (max-width: 992px) and (min-width: 591px) {
	section.method .txt p {
		font-size:1.2rem;
	}
	
/* END OF VIEWPORT */
}


@media only screen and (max-device-width: 760px) and (min-device-width: 1px), screen and (max-width: 760px) and (min-width: 1px) {
  
	/* Projects */
	section.proj-items {
		max-width:500px;
		margin:0 auto 3rem auto;
	}
	.proj-items .p-i,
	.proj-items .p-i:nth-of-type(odd),
	.proj-items .p-i:nth-of-type(even) {
		display:block;
		width:100%;
		padding-right:0;
		padding-left:0;
	}
	
	section.rows.pubs .r-s {
		display:none;
	}
	section.rows.pubs .r-c {
    max-width: 100%;
    margin: 0;
    padding: 35px 1.5rem 15px 1.5rem;
}
	
	/* Work > Timeline */
	
	section.tl ul {
    margin: 0;
		padding: 3rem 0 3rem 0;
		border-left:0;
	}
	section.tl ul li {
    margin-bottom: 3.5rem;
	}
	section.tl ul li:last-of-type {
		margin-bottom:.5rem;
	}
	section.tl ul li::before,
	section.tl .t-desc {
		display:none;
	}
	section.tl li .t-date {
    top: -25px;
    left: 0;
		font-size:.7rem;
    text-align: left;
	}
	section.tl ul li .t-i h3, section.tl ul li .t-i h3 a {
		font-size: 1.1rem;
	}
	
		/* Project */
	section.proj-intro {
		display:block;
	}
	section.proj-intro::before {
		display:block;
		width:100%;
		height:85px;
		content:"";
		background-color:#e3e3e3;
		position: absolute;
    top: 0;
    left: 0;
		z-index:2;
	}
	section.proj-intro .img {
		position: relative;
    width: 130px;
    padding: 30px 15px;
		background-color:white;
		z-index:4;
		display:block;
		margin: 0 auto;
	}
section.proj-intro .info .in h1 {
    padding: 0;
    line-height: 2.5rem;
    font-size: 1.5rem;
    margin: 0 auto;
    display: block;
	color:black;
	background-color:transparent;
    text-align: center;
    padding-top: 4px;
}
	section.proj-intro .info {
    flex: none;
    padding-left: 0;
		display:block;
	}

/* END OF VIEWPORT */
}

@media only screen and (max-device-width: 760px) and (min-device-width: 591px), screen and (max-width: 760px) and (min-width: 591px) {

	
/* END OF VIEWPORT */
}

/* 1px - 590px */

@media only screen and (max-device-width: 590px) and (min-device-width: 1px), screen and (max-width: 590px) and (min-width: 1px) {
	section,
	section.strong.img span.easy_img_caption_inner,
	section.rows.is-pub {
		padding:0 15px;
	}
	section.rows.pubs .r-t {
		padding: 15px 0 0 15px !important
	}
	section.rows.pubs .r-c {
    max-width: 100%;
    margin: 0;
    padding: 35px 15px 15px 15px;
	}
	section.method .txt {
		padding-left:0;
		padding-right:0;
	}
	section.bnr.l-poly::before {
		display:none;
	}
	section.bnr {
		padding: 4rem 0 6rem 0;
	}
	section.method {
		padding-left:15px;
		padding-right:15px;
	}
	section.method .txt p {
		font-size:1.1rem;
	}
	section.proj-intro {
		padding: 1.5rem 15px 2rem 15px;
	}
	section.proj-intro .details table tr td:first-of-type {
		width:115px;
	}
	section.proj-intro .details .ctas a {
		font-size:1.0rem;
		line-height:2.3rem;
	}
	section.bnr-crs .bnr-feature .bnr-feature--inner {
		padding:0;
	}
	section.bnr-crs .bnr-feature {
		padding:15px;
	}
	section.bnr-crs .tldr-row--projects a.project-link:first-of-type {
		margin-bottom:10px;
	}
	section.bnr-crs .tldr-row {
		flex-direction:column;
	}
	section.bnr-crs .tldr-row--label {
		flex-basis: auto;
		margin-bottom:10px;
	}
	section.bnr-crs .tldr-row--text {
		padding-left:0;
	}
	
/* END OF VIEWPORT */
}

/* 1px - 430px */
@media only screen and (max-device-width: 430px) and (min-device-width: 1px), screen and (max-width: 430px) and (min-width: 1px) {
	section.proj-intro .details table tr.prp td {
		display:none;
	}
	section.proj-intro .details .ctas a {
		display:block;
	}
	section.proj-intro .details .ctas a:last-of-type {
		margin-top:.5rem;
	}
	
/* END OF VIEWPORT */
}



