/* ---------------------- */
/*	Basic Styling	*/
/* ---------------------- */

body {
	font-family: 'Open Sans', Arial, Helvetica, sans-serif;
	font-size: 13px;
	line-height: 1.35;
	font-weight: 600;
	margin: 0;
	background-color: #fff;
}

img {	border: 0;}


/* ---------------------- */
/*	Header Styling    */
/* ---------------------- */
.head-topper {
	width: 100%;
	margin: 0 0 2em 0;
}

#tri-head {
	display: -ms-grid;
	display: grid;
	grid-gap: 2em;
	width: 98%;
	max-width: 1450px;
	border: 0;
	padding: 0;
	margin: 1em auto 3em auto;
}
.calendarblock {
	text-align: center;
}
#cal-grid{
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 0.5em 1fr 0.5em 1fr 0.5em 1fr;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-gap: 0.5em;
	width: 99%;
	margin: auto;
}
a.calendar {
	border: 3px solid #42a9dc;
	border-radius: 9px;
	line-height: 1.25;
	padding: 0.5em 0.85em;
	margin: 0.2em 0.25em;
	text-align: center;
	background-color: #E9F4F7;
	color: #19305c;
	text-decoration: none;
	font-weight: 600;
}
a.calendar:hover {
	-webkit-transition-duration: 0.25s;
	-o-transition-duration: 0.25s;
	transition-duration: 0.25s;
	background-color: #19305c;
	color: white;
}
.back-block {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 2em 1fr;
	grid-template-columns: 1fr 1fr;
	grid-gap: 2em;
	width: 90%;
	max-width: 540px;
	margin: 0 auto 1.6em auto;
	vertical-align: middle;
}
.searchblock {
	border: 1px solid #42a9dc;
	border-radius: 11px;
}
#head-key {
	display: block;
	vertical-align: top;
	width: 98%;
	max-width: 1450px;
	margin: 0 auto 6em auto;
	padding: 0;
}
#key-grid {
	display: -ms-grid;
	display: grid;
	grid-gap: 1em 1em;
	padding: 0;
	margin: 0 auto;
}
div.key {
	position: relative;
	border: 3px solid #19305c;
	border-radius: 7px;
	margin: 0;
	padding: 1em 0.15em;
	text-align: center;
	vertical-align: middle;
}
div.key p {
	display: inline-block;
	margin: 0;
	line-height:1.25;
	font-weight: 600;
	z-index: 5;
}
.body {	background-color: #f7818a; color:#000;	}	/* Body */
.spec {	background-color: #FFDEB0; color:#000;	}	/* Molecular, Spectroscopy */
.card {	background-color: #99CCFF; color:#000;	}	/* Cardio */
.ccet {	background-color: #2450A6; color:#FFF;	}	/* Cross-Cutting & Emerging Tech */
.musk {	background-color: #6DAF63; color:#000;	}	/* Musculoskeletal */
.nuro {	background-color: #f2a2ef; color:#000;	}	/* Neuro */
.sesh {	background-color: #D7EEFF; color:#000;	}	/* Scientific Sessions */
.powp {	background-color: #FF9933; color:#000;	}	/* Power Pitches */
.diff {	background-color: #881C2B; color:#FFF;	}	/* Diffusion, Perfusion, fMRI */
.phys {	background-color: #85519A; color:#FFF;	}	/* Physics, Engineering, Interventional, Safety */
.smrt {	background-color: #42a9dc; color:#000;	}	/* SMRT Blue */
.trad {	background-color: #003300; color:#FFF;	}	/* T-Posters */
.elec {	background-color: #DF6628; color:#000;	}	/* E-Posters */
.msym {	background-color: #460046; color:#FFF;	}	/* Member-Initiated Symposia */
.stgr {	background-color: #d7fdc4; color:#000;	}	/* Study Groups */
.plen { background-color: #19305C; color:#FFF; }	/* Plenaries */
.corp {							/* Corporate Symposia */
	background-image: url('key-grads.png');
	background-size: cover;
	background-position: center;
}
.pedi {	background-color: #c92a92; color:#FFF;	}	/* Pediatrics */
.cncr { background-color: #004700; color:#FFF; }	/* Cancer */
.ara { background-color: #07e39a; color:#000;	}	/* ARA ? */
.cont { background-color: #ff470a; color:#FFF; }	/* Contrast Mechanisms */
.prec { background-color: #baf556; color:#000;	}	/* Preclinical old: #f5f51d */
.exhi { background-color: #f5f51d; color:#000;	}	/* Exhibition */


.deselected {	background-color: #bbb; color: #ddd; background-image: none !important;	}	/* De-Selected Session Types */
.deselected a {	color: #ddd;	}

.sWhite a:link, .ccet a:link, .diff a:link, .phys a:link, .msym a:link, .plen a:link, .contrast a:link, .cancer a:link, .pedi a:link { color:#FFF; }
.sWhite a:visited, .ccet a:visited, .diff a:visited, .phys a:visited, .msym a:visited, .plen a:visited, .contrast a:visited, .cancer a:visited, .pedi a:visited { color:#D7D2DC; }

.chex {
	cursor: pointer;
	display: inline-block;
	z-index: 10;
}
.chex > input {
	height: 16px;
	width: 20px;
	-webkit-appearance: none;
	-moz-appearance: none;
	-o-appearance: none;
	appearance: none;
	margin: 0;
	position: absolute;
	top: -2px;
	left: -2px;
	border: 2px solid #19305c;
	border-radius: 6px 0 6px 0;
	background-color: #fff;
	transition-duration: 0.2s;
	cursor: pointer;
}
.chex > input:checked {
	background-image: url("x.png");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}


/* -------------------- */
/*	Table Styling	*/
/* -------------------- */
table {
	border-collapse: collapse;
}
table.main-blocks {
	clear: both;
	border: 0px;
	width: 99%;
	max-width: 1450px;
	background-color: #FFF;
	margin: 0 auto 6em auto;
}
table.secondary-blocks {
	border: 0;
	width: 99%;
	margin: 0 auto;
	padding: 0px;
	table-layout: fixed;
}
td {
	font-weight: 600;
}
td.day {
	position: -webkit-sticky; /* Safari */
	position: sticky;
	top: 0;
	z-index: 100;
	vertical-align: middle;
	outline: 6px solid #19305c;
	outline-offset: -6px;
	background-color: #ccc;
	padding: 1em;
}
.day-content {
	display: inline-block;
	padding: 0;
	margin: 0;
	vertical-align: middle;
}
.big-day {
	display: block;
	margin: 0;
}
.big-day p {
	font-size: 275%;
	line-height: 1;
	font-weight: 700;
	color: #19305c;
	margin: 0.2em 1em 0.1em 1em;
}
.big-num {
	display: inline-block;
	margin: 0;
}
.big-num p {
	font-size: 275%;
	line-height: 1;
	font-weight: 700;
	color: #19305c;
	margin: 0.1em 0.5em 0.2em 1em;
}
.big-nav {
	display: inline-block;
}
img.nav-arrow {
	float: left;
	height: 13px;
	width: 13px;
	vertical-align: middle;
	padding: 0.42em;
	border: 1px solid #555;
	border-radius: 15px;
	background: #fff;
	margin-bottom: -3px;
}
.day-sched {
	display: inline-block;
	font-size: 110%;
	vertical-align: middle;
	text-align: left;
	line-height: 1.4;
	margin: 0 0.5em 0 2em;
}
img.campfireicon {
	display: inline-block;
	border: 0;
	height: 37px;
	width: auto;
	margin: 1px 5px 0 0;
}
/* ---------------------------- */
/*	    Grid Styling	*/
/* ---------------------------- */
.grid-sessions {
	display: -ms-grid;
	display: grid;
	grid-gap: 0 0;
	border: 0;
	width: 98%;
	padding: 0;
	margin: auto;
}
.g9box {
	-ms-grid-columns:	1fr 0 1fr 0 1fr 0 1fr 0 1fr 0 1fr 0 1fr 0 1fr 0 1fr;
	grid-template-columns:	1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}
.g8box {
	-ms-grid-columns:	1fr 0 1fr 0 1fr 0 1fr 0 1fr 0 1fr 0 1fr 0 1fr;
	grid-template-columns:	1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}
.g7box {
	-ms-grid-columns:	1fr 0 1fr 0 1fr 0 1fr 0 1fr 0 1fr 0 1fr;
	grid-template-columns:	1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}
.g6box {
	-ms-grid-columns:	1fr 0 1fr 0 1fr 0 1fr 0 1fr 0 1fr;
	grid-template-columns:	1fr 1fr 1fr 1fr 1fr 1fr;
}
.g5box {
	-ms-grid-columns:	1fr 0 1fr 0 1fr 0 1fr 0 1fr;
	grid-template-columns:	1fr 1fr 1fr 1fr 1fr;
}
.g4box {
	-ms-grid-columns:	1fr 1em 1fr 1m 1fr 1em 1fr;
	grid-template-columns:	1fr 1fr 1fr 1fr;
}
.g3box {
	-ms-grid-columns:	1fr 2em 1fr 2em 1fr;
	grid-template-columns:	1fr 1fr 1fr;
}
.g2box {
	-ms-grid-columns:	1fr 1em 1fr;
	grid-template-columns:	1fr 1fr;
}

.grid-block {
	display: block;
	position: relative;
	border: 1px solid #333 !important;
	text-align: center;
	vertical-align: top;
	padding: 0;
}
.grid-block p.s-top {
	margin: 1em 0.25em;
	font-weight: 400;
}
.grid-block p.s-title {
	margin: 1em 0.25em;
}


.dp-grid-block {
	display: block;
	position: relative;
	border: 1px solid #333 !important;
	vertical-align: top;
	text-align: center;
	padding: 0;
	min-height: 4em;
}
.dp-grid-block p.s-top {
	margin: 1em 0.25em;
	font-weight: 400;
}


table.sub-grid-seshes {
	width: 95%;
	border-collapse: collapse;
	margin: 0.5em auto;
}
table.sub-grid-seshes td {
	border: 1px solid #333;
	padding: 0.85em 0.33em;
	background-color: rgba(255,255,255,0.7);
	color: #000;
}
table.sub-grid-seshes tr td a {
	color: #000 !important;
}
table.sub-grid-seshes tr td a:hover {
	color: blue;
}


.bloc-time-solo {
	display: block;
	font-size: 125%;	 /* For the times on the left */
	line-height: 1.25;
	margin: 0.25em 0.5em 0.25em 2em;
	font-weight: 600;
	color: #eee;
}
.bloc-info-solo {
	display: block;
	width: 98%;
	border: 0;
	padding: 0;
	margin: 0.25em auto;
	vertical-align: top;
}
.solo-block {
	display: block;
	position: relative;
	border: 1px solid #333 !important;
	vertical-align: top;
	padding: 0;
	width: 100%;
	margin-bottom: 1em;
}
.solo-block p.s-top {
	display: inline-block;
	margin: 0.5em 1em;
	font-weight: 400;
}
.solo-block p.s-title {
	display: inline-block;
	margin: 0.5em 0.25em;
}

.solo-block p.s-bott {
	display: block;
	margin: 0 1em;
	padding: 4px;
}

td.center {
	text-align:center;
}

td.bloc {
	color: #FFF;
	border: 0px;
	background-color: #555;
	padding: 0.25em 0 0.5em 0;
}
.bloc-head {
	font-size: 125%;
	line-height: 1.45;
	margin: 0.75em 1em 0.75em 1em;
}
.bloc-topper {
	display: -ms-grid;
	display: grid;
	grid-gap: 1em;
	-ms-grid-columns: 1fr 1em 4fr;
	grid-template-columns: 1fr 4fr;
	border: 0;
	width: 95%;
	padding: 0;
	margin: 1em 1em 0.7em 1em;
}
.bloc-parall {
	padding: 1.5em 1.5em;
	border-radius: 7px;
	border: 2px solid #fff;
	font-size: 135%;
	line-height: 1.25;
}
.bloc-how-it-works {
	font-weight: 400;
	font-size: 95%;
	background-color: #fff;
	color: #000;
	padding: 0.5em 1.5em;
	border-radius: 7px;
	border: 2px solid #000;
}
.bloc-time {
	font-size: 125%;	 /* For the times under bloc-head */
	line-height: 1.25;
	margin: 0.25em 0.5em 0.25em 2em;
	font-weight: 600;
	color: #eee;
}

td.brk {
	border: 2px solid #FFF;
	text-align: left;
	background-color: #DDD;
	padding: 0.5em 1.5em;
}
td.brk p.brk-txt {
	font-size: 130%;
	letter-spacing: 0.25px;
	font-weight: 600;
	font-style: italic;
	line-height: 1.2;
	margin: 0.15em;
	color: #444;
}
td.brk div.corp-symp {
	width: 90%;
	max-width: 700px;
	margin: 1em auto;
	background-color: #fff;
	color: #000;
	text-align: center;
	padding: 0.5em 1em;
	border: 1px solid #000;
}
td.brk div.corp-symp p {
	line-height: 1.35;
	margin: 0.25em;
}
td.brk div.corp-symp table td {
	border: 1px solid #333;
	font-size: 95%;
	text-align: left;
	vertical-align: top;
	padding: 0.2em 0.45em;
}

.prog_nums {
	font-size:80%;
}

.event {
	display: block;
	width: 90%;
	max-width: 600px;
	border: 0;
	margin: 1em auto;
	border-radius: 13px;
	text-align: center;
	padding: 0.2em;
	font-size: 112%;
	line-height: 1.3;
}
table.plenary-table {
	width: 93%;
	max-width: 1100px;
	margin: 1.5em auto 0.75em auto;
}
table.plenary-table td {
	border: 1px solid #798eb7;
	vertical-align: top;
	padding: 0.55em 1em;
	font-size: 107%;
	line-height: 1.4;
}
td.time { width:10%; text-align:center;}
td.title { width:53%;}
td.name { width:37%;}
table.plenary-table p {
	line-height: 1.3;
	margin: 0;
}
p.pl-title {
	font-size: 113%;
	font-weight: 600;
}
p.pl-orgz {
	font-size: 95%;
	font-weight: 400 !important;
	margin-top: 0.4em !important;
}
hr {
	height: 3px;
	background-color: #19305C;
	color: #19305C;
	border: 0;
}
.noCME {
	font-size:70%;
	font-style:italic;
}
.clearfix {
	clear:both;
}

.metal-gold {
	background-image:		/* Brushed metal lines */
		-webkit-repeating-linear-gradient(top, hsla(0,0%,100%,0) 0%, hsla(0,0%,100%,0)   6%, hsla(0,0%,100%, .1) 7.5%),
		-webkit-repeating-linear-gradient(top, hsla(0,0%,  0%,0) 0%, hsla(0,0%,  0%,0)   4%, hsla(0,0%,  0%,.03) 4.5%),
		-webkit-repeating-linear-gradient(top, hsla(0,0%,100%,0) 0%, hsla(0,0%,100%,0) 1.2%, hsla(0,0%,100%,.15) 2.2%),
	    linear-gradient(180deg,	/* Color gradient */
		hsl(48,75%,70%) 0%, 
		hsl(48,75%,90%) 43%, 
		hsl(48,75%,80%) 56%,
		hsl(48,75%,52%) 100%);
}



@media screen and (max-width:1450px) {
  #cal-grid{
	-ms-grid-columns: 1fr 0.5em 1fr 0.5em 1fr;
	grid-template-columns: 1fr 1fr 1fr;
  }
}



@media screen and (max-width:1200px) {
  body {
	font-size: 12px;
  }
}



@media screen and (max-width: 1111px) {
  body {
	font-size: 11.5px;
  }
  .calendar {
	font-size: 95%;
  }
  img.campfireicon {
	height:29px;
  }
}



@media screen and (max-width: 1000px) {
  body {
	font-size: 9pt;
  }
  .back-block {
	width: 75%;
	font-size: 110%;
  }
  #cal-grid{
	-ms-grid-columns: 1fr 0.5em 1fr;
	grid-template-columns: 1fr 1fr;
  }
}



@media screen and (max-width:900px) {
  .calendar {
	border-radius: 7px;
  }
  .g9box {	-ms-grid-columns: 1fr 0 1fr 0 1fr;	grid-template-columns: 1fr 1fr 1fr	}
  .g8box {	-ms-grid-columns: 1fr 0 1fr 0 1fr 0 1fr;	grid-template-columns: 1fr 1fr 1fr 1fr	}
  .g7box {	-ms-grid-columns: 1fr 0 1fr 0 1fr 0 1fr;	grid-template-columns: 1fr 1fr 1fr 1fr	}
  .g6box {	-ms-grid-columns: 1fr 0 1fr 0 1fr;	grid-template-columns: 1fr 1fr 1fr	}
  .g5box {	-ms-grid-columns: 1fr 0 1fr;	grid-template-columns: 1fr 1fr	}

  .bloc-time-solo {
	display: block;
	width: 80%;
  }
  .solo-block p.s-top {
	display: block;
	width: 85%;
	margin: 0.5em 1em 0.25em 1em;
  }
  .solo-block p.s-title {
	display: block;
	margin: 0.25em 1em 0.5em 1em;
  }
  .bloc-info-solo {
	display: block;
	width: 93%;
	margin: 0.25em auto;
  }
}




@media screen and (max-width:768px) {
  img.nav-arrow {
	height: 11px;
	width: 11px;
  }
  td.day {
	outline: 4px solid #19305c;
	outline-offset: -4px;
  }
  div.key {
	border: 2px solid #19305c;
	border-radius: 6px;
  }
  .chex > input {
	height: 13px;
	width: 16px;
	border: 2px solid #19305c;
	border-radius: 5px 0 4px 0;
  }
}



@media screen and (max-width:750px) {
  body {
	font-size: 8pt;
  }
}



@media screen and (max-width:650px) {
  body {
	font-size: 7pt;
  }
  .back-block {
	width: 75%;
	border-radius: 7px;
  }
  .chex > input {
	height: 11px;
	width: 16px;
  }
}


	
@media screen and (max-width:510px) {
  .g3box {	-ms-grid-columns: 1fr;	grid-template-columns: 1fr }
  .g4box {	-ms-grid-columns: 1fr 1em 1fr 1em 1fr;	grid-template-columns: 1fr 1fr 1fr	}
  #cal-grid{
	-ms-grid-columns: 1fr 0.5em 1fr 0.5em 1fr;
	grid-template-columns: 1fr 1fr 1fr;
  }
  .calendar {
	padding: 0.4em 0.6em;
	border: 2px solid #42a9dc;
  }
  img.nav-arrow {
	height: 9px;
	width: 9px;
  }
}


	
@media screen and (max-width:450px) {

  .g5box {	-ms-grid-columns: 1fr;	grid-template-columns: 1fr	}
  img.campfireicon {
	height:14px;
  }
  .back-block {
	width: 85%;
  }
}