@font-face {
    font-family: 'Knowledge2017';
    src: url('../fonts/knowledge2017-regular-webfont.woff2') format('woff2'),
         url('../fonts/knowledge2017-regular-webfont.woff') format('woff');
    font-weight: 500;
    font-style: normal;
}
@font-face {
    font-family: 'Knowledge2017';
    src: url('../fonts/knowledge2017-regularitalic-webfont.woff2') format('woff2'),
         url('../fonts/knowledge2017-regularitalic-webfont.woff') format('woff');
    font-weight: 500;
    font-style: italic;
}
@font-face {
    font-family: 'Knowledge2017';
    src: url('../fonts/knowledge2017-bold-webfont.woff2') format('woff2'),
         url('../fonts/knowledge2017-bold-webfont.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}
@font-face {
    font-family: 'Knowledge2017';
    src: url('../fonts/knowledge2017-bolditalic-webfont.woff2') format('woff2'),
         url('../fonts/knowledge2017-bolditalic-webfont.woff') format('woff');
    font-weight: 700;
    font-style: italic;
}








@-webkit-viewport{width:device-width;}
@-moz-viewport{width:device-width;}
@-ms-viewport{width:device-width;}
@-o-viewport{width:device-width;}
@viewport{width:device-width;}
@charset "UTF-8";
mark {
	display: inline-block;
	color: black;
	background: yellow;
	text-transform: uppercase;
	padding: .1em .65em;
	font-family: monospace;
}
* #adroll_consent_container {
	position: static !important;
}
/*
	UNCOMMENT IF CO'S NEED TO SEE BOUNDARIES
*/	
/*
	* {		box-shadow: 0 0 0 1px #9e25a4;
	}
	[class^='col-'] * {
		box-shadow: 0 0 0 1px #29b7c7;
	}
*/

* {
	font-variant-ligatures: none;
}
/** ALIGNMENT **/
.inherit-height { height: inherit; min-height: inherit; max-height: inherit;}
.align-container { position: relative; height: inherit;}
.align {
	display: table;
	width: 100% !important;
	max-width: 100% !important;
	height: 100% !important;
	max-height: 100% !important;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left:0;
}
.align > div {	display: table-cell; width: inherit; width: 100% !important; max-width: 100% !important;}
.align > .middle { vertical-align: middle; }
.align > .bottom { vertical-align: bottom; }
@media(min-width: 992px) {
	.flex {
		display: flex;
		display: -webkit-flex;
	}
	.flex > * {
		flex: 1 auto;
		-webkit-flex-align: 1 auto;
	}
}


/** GENERAL SETUP **/
:root {
	--topbar: #4d4d4d;
	
	--accent-green: 		#387C2B; 	/* TR Dark Green (Brochure) */
	--accent-orange: 		#FA6400;	/* TR Brand Orange (Register) */
	
	--accent-orange-dk: 	#DC4300;	/* TR Dark Orange (Accent, Inline Anchors) */
	--accent-orange-lt: 	#FFA100;	/* TR Light Orange (Modal Accents, Modal Inline Anchors) */
	
	
	--accent-yellow: 	#FFA100; 	/* TR Light Orange */
	--accent-red: 		#A00000;	/* TR Dark Red */
	--accent-blue: 		#005DA2;	/* TR Dark Blue */
	--accent-magenta: 	#621F95; 	/* TR Dark Purple */
	--accent-teal: 		#0099C4; 	
	
	
	--register-diamond: #2e9b9b;
	--register-gold: 	#eba806;
	--register-bronze: 	#BF8641;
	--register-silver: 	#617b7d;
	
	--white: 	#FFFFFF;
	--white-dk: #F5F5F5;
	--grey: 	#F0F0EF;
	--grey-dk: 	#666666;
	--black: 	#404040;
	
	--animate: 		all .3s ease;
	--animate-fast: all .12s ease-out;
	--shadow: 		0 .15em 15px 0 rgba(0,0,0,.12);
	--shadow-dk: 	0 .3em 15px 0 rgba(0,0,0,.22);
	--radius: 4px;

	--T0: var(--black);	/* TR Dark Grey */	
	--T1: #005DA2;		/* TR Dark Blue */
	--T2: #0099C4; 		/* TR Light Blue */
	--T3: #621F95; 		/* TR Dark Purple */
	--T4: #6E3AB7; 		/* TR Light Purple */
	--T5: #A00000; 		/* TR Dark Red */
	--T6: #DC0A0A; 		/* TR Light Red */
	--T7: #387C2B; 		/* TR Dark Green */
	--T8: #77A22D; 		/* TR Light Green */
}
html, body {
	font-size: 17px;
	background: var(--white);
	color: var(--black);
	/* font-family: "Open Sans", sans-serif; */
	font-family: Knowledge2017, "Knowledge2017", "Arial", Arial, sans-serif;

	line-height: 1.5em;
	font-weight: normal;
	overflow-x: hidden !important;
}

.sticky-wrapper > * {
	z-index: 999 !important;
}
.sticky-wrapper > header {
	z-index: 1001 !important;
}
.sticky-wrapper.is-sticky > header {
	box-shadow: var(--shadow);
	-webkit-box-shadow: var(--shadow);
}
.square {
	height: 0 !important;
	padding-bottom: 100%;
	position: relative;
}
.square.half {
	padding-bottom: 50%;
}
.square > .inner-square {
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.square > .inner-square.half-square {
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	height: 50% !important;
	top: auto;
	bottom: auto;
}
.square > .inner-square.half-square:nth-of-type(1) { top: 0; }
.square > .inner-square.half-square:nth-of-type(2) { bottom: 0; }
.align-left { text-align: left;}
.align-center { text-align: center;}
.align-right { text-align: right;}
.align-justify { text-align: justify;}

.align-left * { text-align: left !important;}
.align-center * { text-align: center !important;}
.align-right * { text-align: right !important;}
.align-justify * { text-align: justify !important;}

b, strong {
	font-weight: 700;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
	font-weight: 500;
	margin-top: 0;
	margin-bottom: .5em;
	line-height: 1.2em;
	text-align: center;
	letter-spacing: normal;
}
h1.align-left, h2.align-left, h3.align-left, h4.align-left, h5.align-left, h6.align-left,
.h1.align-left, .h2.align-left, .h3.align-left, .h4.align-left, .h5.align-left, .h6.align-left { text-align: left !important }
h1, .h1 {
	font-size: 2.5em;
}
h2, .h2 {
	font-size: 2.25em;
}
h3, .h3 {
	font-size: 2em;
}
h4, .h4 {
	font-size: 1.75em;
}
h5, .h5 {
	font-size: 1.5em;
}
h6, .h6 {
	font-size: 1.3em;
}

.hero {
	font-size: 1.15em;
}
.hero.size-largest {
	font-size: 1.3em;
}

@media(max-width: 991px){
	html, body {
		font-size: 15px;
	}
}
p, ul, ol, li, blockquote, q, pre, code, cite {
	font-size: 1em;
	line-height: 1.5em;
	margin-bottom: 1em;
}
pre, code {
	white-space: pre-wrap !important;
	line-height: 1.3em;
}
.well {
	display: block;
	padding: 1.5em;
	background: var(--white-dk);
	border-radius: var(--radius);
	margin: 1em 0 !important;
	border: none !important;
}
.well * {
	font-family: monospace;
}
.grey .well {
	background: var(--white);
}
.well pre {
	margin: 0 !important;
}
.lead {
	font-size: 1.3em;
	line-height: 1.3em;
	line-height: inherit;
	font-weight: normal;
}
a {
	color: var(--accent-orange-dk);
	position: relative;
	display: block;
}
a:hover, a:focus, a:active {
	color: var(--accent-orange-dk);
}
p a, li a {
	display: inline-block;
}
section p a,
section li a {
	font-weight: 500 !important;
}

p a::after, li a::after {
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	width: 0;
	height: 1px;
	border-radius: 2px;
	background: var(--accent-orange-dk);
	opacity: .5 !important;
}
a:hover, a:focus, a:active {
	text-decoration: none;
}
a:hover::after {
	width: 100%;
	transition: var(--animate);
}
.active > a::after,
.open > a::after,
a.active::after,
a.open::after,
a:active::after {
	width: 100%;
	height: 1px;
	transition: var(--animate);
}
a.btn::after, a.btn:after {
	content: none !important;
}
.btn {
	font-size: 1.1rem;
	line-height: 1.3em;
	font-weight: 700;
	padding: .7em 1.5em;
	border-radius: var(--radius);
	border: none;
	box-shadow: var(--shadow);
	-webkit-box-shadow: var(--shadow);
	transition: var(--animate-fast);
	-webkit-transition: var(--animate-fast);
	-moz-transition: var(--animate-fast);
	-ms-transition: var(--animate-fast);
	-o-transition: var(--animate-fast);
	position: relative;
	top: 0;
	
	text-transform: uppercase;
	max-width: 100%;
	white-space: normal !important;
}

.btn-sm { font-size: .8rem }
.btn-lg { font-size: 1.2rem }
.btn-primary { background: var(--accent-orange) !important; color: var(--white) !important;}

.btn-info { background: var(--accent-blue) !important; color: var(--white) !important;}
.btn-success { background: var(--accent-green) !important; color: var(--white) !important;}

.btn-warning { background: var(--accent-magenta) !important; color: var(--white) !important;}
.btn-danger { background: var(--accent-red) !important; color: var(--white) !important;}
.btn-default {	background: var(--white) !important; color: var(--black) !important;}
.btn-dark {	background: var(--black) !important; color: var(--white) !important;}

.btn-outline {
	border: 2px solid white;
	background: transparent !important;
	line-height: 1.3em;
}
.btn-primary.btn-outline { border-color: var(--accent-orange) !important; color: var(--accent-orange) !important;}

.btn-info.btn-outline { border-color: var(--accent-blue) !important; color: var(--accent-blue) !important;}
.btn-success.btn-outline { border-color: var(--accent-green) !important; color: var(--accent-green) !important;}

.btn-warning.btn-outline { border-color: var(--accent-magenta) !important; color: var(--accent-magenta) !important;}
.btn-danger.btn-outline { border-color: var(--accent-red) !important; color: var(--accent-red) !important;}
.btn-default.btn-outline {	border-color: var(--white) !important; color: var(--white) !important;}
.btn-dark.btn-outline {	border-color: var(--black) !important; color: var(--black) !important;}


.btn-link {
	color: var(--accent-orange) !important;
	box-shadow: none !important;
	-webkit-box-shadow: none !important;
}
.btn:not(.btn-link):hover {
	transform: translate3d(0, -0.15em, 0);
	-webkit-transform: translate3d(0, -0.15em, 0);

	box-shadow: var(--shadow-dk);
	-webkit-box-shadow: var(--shadow-dk);
	text-decoration: none !important;
}
.btn.btn-link:hover,
.btn.btn-link:focus,
.btn.btn-link:active {
	text-decoration: underline;
}
icon {
	width: 1.5em;
	height: 1.5em;
	margin-right: .3em;
	display: block;
	float: left;
}
icon > svg {
	width: inherit;
	height: inherit;
	display: block;
}
icon > svg path {
/* 	fill: var(--white); */
}
.btn > icon {
	height: 1em;
	width: 1em;
	float: none;
	padding: 0;
	margin: 0;
	display: inline-block;
	position: relative;
}
.btn > icon {
	margin-right: -.5em;
	position: relative;
}
.btn.pull-right > icon,
.btn.icon-right > icon { /* icon, right-side */
	margin-right: 0;
	margin-left: 0.5em !important;
}
.btn > icon svg {
	width: 1.3em;
	height: 1.3em;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	vertical-align: top !important;
}
small {
	display: block;
	color: var(--grey-dk);
	font-size: .75em;
	line-height: 1.5em;
}
hr {
	height: 2px;
	border: none;
	border-radius: 4px;
	background: var(--grey);
	opacity: 1;
	margin: 2em 0;
	padding: 0;
	width: 1.75em;
	transform: translateX(-25%);
	-webkit-transform: translateX(-25%);
}
.align-center hr {
	margin: 2em auto !important;
	transform: translateX(0%);
	-webkit-transform: translateX(0%);
}
.grey hr {
	background: var(--grey-dk);
	opacity: .25;
}


/** Columns of tabloid text */
@media(min-width: 768px) {
	.text-columns {
		column-count: 1;
		-webkit-column-count: 1;
		column-gap: 3em;
		-webkit-column-gap: 3em;
		column-break-after: left;
		-webkit-column-break-after: left;
	}
	.text-columns.two-columns {
		column-count: 2;
		-webkit-column-count: 2;
	}
	.text-columns.three-columns {
		column-count: 3;
		-webkit-column-count: 3;
	}
	.text-columns.four-columns {
		column-count: 4;
		-webkit-column-count: 4;
	}
}

/** ROWS + SPACINGS **/
.row {
	margin-top: 3em;
}
.row.gutter-none {
	margin-left: -0;
	margin-right: -0;
	margin-top: 1.5em;
}
.row.gutter-none > [class^='col'] {
	padding-left: 0;
	padding-right: 0;
}
.row.gutter-small {
	margin-left: -5px;
	margin-right: -5px;
	margin-top: 1.5em;
}
.row.gutter-small > [class^='col'] {
	padding-left: 5px;
	padding-right: 5px;
}
.row.gutter-large {
	margin-left: -30px;
	margin-right: -30px;
}
.row.gutter-large > [class^='col'] {
	padding-left: 30px;
	padding-right: 30px;
}
.row.gutter-largest {
	margin-left: -75px;
	margin-right: -75px;
}
.row.gutter-largest > [class^='col'] {
	padding-left: 75px;
	padding-right: 75px;
}
.row.row-of-logos img {
	margin: 1em 0;
}
.row *:last-child {
	margin-bottom: 0;
}
.container-fluid {
	padding-left: 30px;
	padding-right: 30px;
	max-width: 1400px !important;
	margin: 0 auto;
}
@media(min-width: 992px) {
	.row.row-ten > div {
		width: 10% !important;
	}
	.row.row-seven > div {
		width: 14.285% !important;
	}
	.row.row-five > div {
		width: 20% !important;
	}
	.row.row-eight > div {
		width: 12.5% !important;
	}
}
@media(max-width: 991px) {
	.container {
		padding-left: 30px;
		padding-right: 30px;
	}
	.container-fluid {
		padding-left: 30px;
		padding-right: 30px;
	}
	.row {
		margin-top: 1.5em;
	}
	.pull-right-xs {
		float: right;
	}
}
@media(min-width: 500px) {
	.visible-xxs {
		display: none !important;
	}
}
@media(max-width: 500px) {
	.col-xxs-12 {
		width: 100% !important
	}
	.col-xxs-6 {
		width: 50% !important
	}
	.visible-xxs {
		display: block !important;
	}
	.hidden-xxs {
		display: none !important;
	}
	.pull-right-xs {
		float: none;
	}
}
.topbar * .row:first-child,
nav * .row:first-child,
.section * .row:first-child,
footer * .row:first-child {
	margin-top: 0;
}
.row > div.has-dividing-border::after {
	content: '';
	top: 0;
	left: 0;
	bottom: 0;
	width: 1px;
	background: var(--grey);
	position: absolute;
	display: block;
	height: 100%;
	border-radius: 4px;
}
.section.grey .row > div.has-dividing-border::after {
	background: var(--white);
}

.row > div.has-dividing-border.dividing-border-thick::after {
	width: 3px;
	left: .75em;
}
@media(max-width: 991px) {
	.row > div.has-dividing-border::after {
		left: 30px;
		top: -.75em;
		right: 30px;
		bottom: auto;
		height: 1px;
		width: calc(100% - 60px);
		width: -webkit-calc(100% - 60px);
		border-radius: 4px;
	}
	.row.gutter-largest > div.has-dividing-border::after {
		left: 75px;
		right: 75px;
		width: calc(100% - 150px);
		width: -webkit-calc(100% - 150px);
	}
	.row > div.has-dividing-border.dividing-border-thick::after {
		height: 3px;
		width: calc(100% - 60px);
		width: -webkit-calc(100% - 60px);
		left: 30px;
	}
	div.has-dividing-border {
		padding-top: 1.5em;
		margin-top: 3em;
	}
	div.has-dividing-border.dividing-border-thick {
		padding-top: .5em;
		margin-top: 3em;
	}
	.row > div.has-dividing-border.dividing-border-thick:nth-last-of-type(2) {
		margin-top: 0;
	}
}




/** GENERIC UL MENU **/
ul.menu {
	list-style: none;
	padding: 0;
	margin: 0;
	display: block;
}
ul.menu li {
	display: block;
	float: left;
	padding: 0;
	margin: 0;
}
ul.menu li a {
	display: block;
}

ul.flex {
	display: block;
	width: 100% !important;
	list-style: none;
	margin: 0px;
	padding: 0px;
}
ul.flex li {
	float: left;
	margin: 0;
	padding: 0;
}

html.flexbox ul.flex {
	display: flex;
	display: -webkit-flex;
}
html.flexbox ul.flex li {
	float: none;
	flex: 1 auto;
	-webkit-flex: 1 auto;
	
}
/** TOPBAR & MENU **/
.topbar {
	background: var(--topbar);
	padding: 0;
}
.topbar,
.topbar .row,
.topbar .row > div {
	height: 34px;
	line-height: 34px;
}
ul.menu.topic-menu {
	display: inline-block;
	float: right;
	height: inherit;
	line-height: inherit;
}
ul.menu.topic-menu li {
	float: left;
	margin: 0;
	height: inherit;
	line-height: inherit;
}
ul.menu.topic-menu li a {
	color: var(--white);
	display: block;
	float: right;
	font-weight: 100;
	height: inherit;
	line-height: 0 !important;
	padding: 17px .75em;
	font-weight: 300;
	transition: var(--animate-fast);
	-webkit-transition: var(--animate-fast);
}
ul.menu.topic-menu li.active a {
	font-weight: bold;
}
ul.menu.topic-menu li a {
	font-size: 14px;
}
ul.menu.topic-menu li a::after {
	content: none;
}

ul.menu.topic-menu li.color0 a:hover, ul.menu.topic-menu li.color0.active a { background-color: var(--T0); }
ul.menu.topic-menu li.color1 a:hover, ul.menu.topic-menu li.color1.active a { background-color: var(--T1); }
ul.menu.topic-menu li.color2 a:hover, ul.menu.topic-menu li.color2.active a { background-color: var(--T2); }
ul.menu.topic-menu li.color3 a:hover, ul.menu.topic-menu li.color3.active a { background-color: var(--T3); }
ul.menu.topic-menu li.color4 a:hover, ul.menu.topic-menu li.color4.active a { background-color: var(--T4); }
ul.menu.topic-menu li.color5 a:hover, ul.menu.topic-menu li.color5.active a { background-color: var(--T5); }
ul.menu.topic-menu li.color6 a:hover, ul.menu.topic-menu li.color6.active a { background-color: var(--T6); }

/** EVENT BOILER PLATE **/
.boiler-plate {
	width: 100%;
	height: 60px;
	min-width: 200px;
	padding: 0 !important;
	font-size: 17px;
	line-height: 1em;
	color: var(--black) !important;
	position: relative;
}
.boiler-plate::after {
	content: '';
	display: block;
	clear: left;
	width: 100%;
	height: 0px;
}
.boiler-plate img {
	height: 36px;
	margin-right: 9px;
	margin-top: 2px;
	float: left;
}
.boiler-plate .boiler-plate-information {
	float: left;
	width: 80%;
	width: calc(100% - 80px);
	width: -webkit-calc(100% - 80px);
	height: inherit;
}
@media(min-width: 992px) {
	.boiler-plate .boiler-plate-information {
		float: left;
		width: 100% !important;
		height: inherit;
	}	
}
.boiler-plate {
	padding: 0;
	margin: 0;
	height: 50px;
	min-height: 50px;
	height: auto !important;
}
@media(min-width: 992px) {
	.boiler-plate {
		height: 50px;
		min-height: 50px;
		max-height: 50px;
		margin: 0 0 15px 0;
	}
}
.boiler-plate p {
	margin: 0;
	padding: 0;
	line-height: 1.3em;
	font-weight: normal;
}
.boiler-plate p.event-name {
	font-size: 1.5em;
	margin-bottom: .25em;
	line-height: 1em;
	margin-bottom: .1em;
	font-weight: 700;
	color: var(--black) !important;
}
@media(min-width: 992px) and (max-width: 1199px) {
	.boiler-plate p.event-name {
		font-size: 1.3em !important;
	}
}
@media(min-width: 992px) {
	.boiler-plate .boiler-plate-information,
	.boiler-plate .boiler-plate-information .align,
	.boiler-plate .boiler-plate-information .middle {
		max-width: 100% !important;
	}
	.boiler-plate p.event-name {
		white-space: nowrap;
		max-width: 100%;
	}
}
.boiler-plate p.event-date {
	margin-top: .2em;
	font-size: 14px;
	font-weight: 500;
	color: var(--black) !important;
	float: left;
	display: inline-block;
	margin-right: .75em;
}
.boiler-plate p.event-hashtag {
	margin-top: .2em;
	font-size: 14px;
	font-weight: 500;
	float: left;
	display: inline-block;
}


/** FOOTER **/
footer {
	background: var(--black);
	color: var(--grey);
	padding: 2.5em 0 1.5em;
}
footer a, footer small { color: #D0D0D0 !important;}
footer a::after { background: #D0D0D0 !important;}
footer small a { color: var(--white) !important;}
footer small a::after { background: var(--white) !important;}

footer .boiler-plate p.event-name,
footer .boiler-plate p.event-date {
	color: var(--grey) !important;
}

a img.sector-logo {
	opacity: 1;
	transition: var(--animate-fast);
	-webkit-transition: var(--animate-fast);
	display: block;
	height: 40px;
	max-height: 40px;
	margin-bottom: 30px !important;
	float: right;
}
a:hover img.sector-logo,
a:focus img.sector-logo {
	opacity: .9;
}

footer ul.menu {
	padding-left: 2em;
	position: relative;
	float: none !important;
	margin-bottom: 1.5em !important;
}
footer .menu::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 1em;
	bottom: 0;
	width: 2px;
	height: 100%;
	background: rgba(255,255,255, .1);
}
footer .menu::after {
	content: '';
	clear: left;
	clear: all;
	display: block;
}
footer .menu li {
	float: none;
	margin: 0;
}
footer .menu li a {
	display: inline-block;
	font-size: .75em;
	color: var(--grey);
}
footer .menu li a::after {
	transform: none;
	-webkit-transform: none;
	left: 0;
	background: var(--grey);
}


footer .menu.topic-menu {
	padding: 0;
}
footer .menu.topic-menu::before { content: none !important}
footer .menu.topic-menu li {
	margin: 0 .5em .5em 0 !important;
}

footer .menu.topic-menu li a {
	padding: 1em .75em 1em .75em;
	
	border-radius: 2px;
	font-size: 15px;
	background: rgba(255,255,255,.05);
}

@media(max-width: 991px) {
	.align-right,
	.align-right * {
		text-align: left !important;
	}
	a img.sector-logo {
		float: none !important;
		margin: 30px 0 15px !important;
	}
}


/** NAV & MENU **/
header {
	background: white;
	border-bottom: 1px solid var(--white-dk);
}
header nav {
	padding: 30px 0 15px 0 !important;
	height: 200px;
	max-height: 200px;
	font-size: 14px;
}
header nav .row {
	margin-top: 0 !important;
}

/** Logo sizing */
header nav .row#brands {
	margin-bottom: 30px;
}
header nav .row#brands a {
	display: inline-block;
	margin-right: 0px;
	vertical-align: middle;
}
header nav .row#brands img {
	height: 40px !important;
	max-height: 40px !important;
	margin: 0 !important;
}

/** CENTERED EVENT NAME **/
header nav .boiler-plate .boiler-plate-information,
header nav .boiler-plate .boiler-plate-information a {
	display: block;
	height: inherit;
	min-height: inherit;
	max-height: inherit;
}
@media (max-width: 991px) {
	header nav .row, header nav .row > div, header nav, header {
	    min-height: 1px;
	    max-height: 9999px;
	    height: auto;
	}
	header nav .boiler-plate .boiler-plate-information .align,
	header nav .boiler-plate .boiler-plate-information .align .middle {
		display: block !important;
		position: static !important;
		height: auto !important;
		width: 100%;
	}
	header nav .boiler-plate .boiler-plate-information p.event-name { line-height: 1.3em; }
}




ul.menu.main-menu {
	display: block;
	width: 100%;
	font-size: 1em;
}
ul.menu.main-menu li {
	float: left;
	padding: 0;
}


html.flexbox ul.menu.main-menu {
	display: flex;
	display: -webkit-flex;
}
html.flexbox ul.menu.main-menu li {
	float: none;
	flex: 1 auto;
	-webkit-flex: 1 auto;
}

ul.menu.main-menu li a {
	color: var(--black);
	display: inline-block;
	text-transform: uppercase !important;
	padding-bottom: 5px;
	margin: 0 15px 0 0;
	font-weight: 700;
	line-height: 1em;
}
ul.menu.main-menu li a,
ul.menu.main-menu li a small {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
ul.menu.main-menu li a::after,
ul.menu.main-menu li.dropdown a::after {
	left: 0%;
	transform: translateX(0%);
	background: var(--black);
}

ul.menu.main-menu li.accent a {
	color: var(--accent-orange);
}
ul.menu.main-menu li.accent a::after {
	background: var(--accent-orange);
}


ul.menu.main-menu li.accent.accent-secondary a {
	color: var(--accent-green);
}
ul.menu.main-menu li.accent.accent-secondary a::after {
	background: var(--accent-green);
}


ul.menu.main-menu li.cta a {
	padding: 20px 0 5px;
}
ul.menu.main-menu li.cta a small {
	color: var(--accent-orange);
	font-weight: 400;
	font-size: 12px;
	display: block;
	line-height: 1.5em;
	margin-top: 5px;
	overflow: hidden !important;
	white-space: normal !important;
	max-height: 3em !important;
	text-overflow: ellipsis !important;
	overflow: hidden !important;
}
ul.menu.main-menu li.cta a::after {
	background: var(--accent-orange);
}
ul.menu.main-menu li.cta.cta-solid {
	padding: 0 0 0 0;
}
@media(min-width: 1301px) {
	ul.menu.main-menu li.cta.cta-solid.cta-secondary {
		min-width: 235px;
	}
}
@media(min-width: 1200px) and (max-width: 1300px) {
	ul.menu.main-menu li.cta.cta-solid a {
		padding-top: 1.25em !important;
		font-size: .9em !important;
	}
}
@media(min-width: 992px) and (max-width: 1050px) {
	ul.menu.main-menu li.cta.cta-solid a {
		padding-top: 1.25em !important;
		font-size: .9em !important;
	}
}
ul.menu.main-menu li.cta.cta-solid a::after {
	content: none !important;
}
ul.menu.main-menu li.cta.cta-solid a {
	color: var(--white) !important;
	background: var(--accent-orange);
	display: block;
	float: none;
	border-radius: var(--radius);
	padding: 1em 0 1em 0;
	padding-left: 1em;
	padding-right: 1.25em;
	margin: 0 !important;
	height: 80px;
	max-height: 80px;
	font-size: 1em;
}
ul.menu.main-menu li.cta.cta-solid a small {
	color: var(--white) !important;
	font-weight: 400;
	font-size: .8em;
	word-break: hyphenate !important;
}
ul.menu.main-menu li.cta.cta-solid a small span.accent {
/* 	color: var(--accent-yellow) !important; */
	color: inherit;
	font-weight: bold;
	display: inline !important;
}


ul.menu.main-menu li.cta.cta-solid.cta-secondary a {
	background: var(--accent-green);
}
ul.menu.main-menu li.cta.cta-solid a {
	margin-right: .75em !important;
}
ul.menu.main-menu li.cta.cta-solid:nth-last-of-type(1) a {
	margin-right: 0em  !important;
}
@media (max-width: 991px) {
	ul.menu.main-menu li.cta.cta-solid.cta-secondary a {
	    color: var(--accent-green) !important;
	}
	ul.menu.main-menu li.cta.cta-solid.cta-secondary a::after {
	    background: var(--accent-green) !important;
	}
}

ul.menu.main-menu li.cta.cta-solid a:hover,
ul.menu.main-menu li.cta.cta-solid a:focus,
ul.menu.main-menu li.cta.cta-solid a:active {
	transition: var(--animate-fast);
	padding-left: 1.25em;
	padding-right: 1em;
}

ul.menu.main-menu li.active a::after,
ul.menu.main-menu li.dropdown.active a::after {
	height: 2px;
	border-radius: 4px;
}


@media(min-width: 1200px){
	ul.menu.main-menu {
		font-size: 1.1em;
	}
}
@media(min-width: 992px) and (max-width: 1199px){
	ul.menu.main-menu {
/* 		font-size: .9em; */
		font-size: 1.1em;
	}
}
@media(max-width: 991px){
	header nav {
		padding: 2em 0 0;
	}
	header nav .row,
	header nav .row > div,
	header nav,
	header {
		min-height: 1px;
		max-height: 9999px;
		height: auto;
	}
	header .align-container,
	header .align-container .align,
	header .align-container .align > div {
		display: block;
		float: none !important;
		position: static !important;
	}
	ul.menu.main-menu { display: block;}
	ul.menu.main-menu li,
	ul.menu.main-menu li.cta,
	ul.menu.main-menu li.cta-solid {
		display: block;
		height: auto;
		padding: 0 !important;
		max-height: 9999px;
		margin: 0;
		background: none !important;
	}
	ul.menu.main-menu li a,
	ul.menu.main-menu li.cta a,
	ul.menu.main-menu li.cta.cta-solid a {
		display: block;
		margin: 0;
		font-size: 1.1rem;
		background: none;
		padding: .75em 0 .5em !important;
		margin-bottom: .25em !important;
		height: auto !important;
		min-height: 1px;
	}
	
	ul.menu.main-menu li.cta a { color: var(--accent-green) !important; background: none !important }
	ul.menu.main-menu li.cta a small { color: var(--black); text-transform: none !important; font-size: .9em !important;}
	
	
	ul.menu.main-menu li.cta.cta-solid a { color: var(--accent-orange) !important; background: none !important; margin: 0 !important; }
	ul.menu.main-menu li.cta.cta-solid a::after {
		content: '' !important;
		background: var(--accent-orange) !important;
	}
	ul.menu.main-menu li.cta.cta-solid.cta-secondary a { color: var(--accent-green) !important; background: none !important; margin: 0 !important; }
	ul.menu.main-menu li.cta.cta-solid.cta-secondary a::after {
		content: '' !important;
		background: var(--accent-green) !important;
	}
	ul.menu.main-menu li.cta.cta-solid a small { color: var(--black) !important; text-transform: none !important; font-size: .9em !important;}
	ul.menu.main-menu li.cta.cta-solid a small > span.accent { color: var(--black) !important; font-weight: 700;}
}



/** NAV DROPDOWN **/
ul.menu.main-menu ul.dropdown-menu {
	border-radius: 0;
	box-shadow: var(--shadow);
	-webkit-box-shadow: var(--shadow);
	font-size: 1em;
	padding: 10px 0;
	top: 100%;
	bottom: auto;
	margin-top: 5px;
	left: -1px;
	transform: translateX(0);
}
ul.menu.main-menu ul.dropdown-menu li {
	padding: 0;
	min-width: 250px;
}
ul.menu.main-menu ul.dropdown-menu li,
ul.menu.main-menu ul.dropdown-menu li a {
	display: block;
	width: auto;
	float: none;
	height: auto;
	line-height: 1em;
	text-transform: none !important;
	margin-right: 0;
	font-weight: 400;
}
ul.menu.main-menu ul.dropdown-menu li.active a,
ul.menu.main-menu ul.dropdown-menu li a.active {
	font-weight: 700;
}
ul.menu.main-menu ul.dropdown-menu li.active a {
	background: inherit;
}
ul.menu.main-menu ul.dropdown-menu li a {
	padding: .75em 3em .75em 1em;
	font-size: 1em;
}
ul.menu.main-menu ul.dropdown-menu li a::after {
	content: none;
}
ul.menu.main-menu ul.dropdown-menu li[class^='color'] a {
	padding-left: 2em;
}
ul.menu.main-menu ul.dropdown-menu li a:hover,
ul.menu.main-menu ul.dropdown-menu li a:focus,
ul.menu.main-menu ul.dropdown-menu li a:active {
	background: var(--white-dk);
	color: var(--black);
}
@media(max-width: 991px){
	nav {
		overflow: hidden !important;
	}
	ul.menu.main-menu ul.dropdown-menu {
		position: relative !important;
		float: none !important;
		transform: none;
		-webkit-transform: none;
		border: none;
		background: none;
		margin: 0;
		box-shadow: none !important;
		-webkit-box-shadow: none !important;
		background: var(--white);
		margin-bottom: .5em !important;
	}
	ul.menu.main-menu .open ul.dropdown-menu {
	}
	ul.menu.main-menu ul.dropdown-menu li {
		display: block;
	}
	ul.menu.main-menu ul.dropdown-menu li a {
		padding: .75em 1em !important;
		font-size: 1.1rem;
	}
	ul.menu.main-menu ul.dropdown-menu li a:hover,
	ul.menu.main-menu ul.dropdown-menu li a:focus {
		background: rgba(0,0,0,.1);
	}
}


/** MOBILE NAV DEPENDANCY **/
.mobile-menu-container {
	width: 100%;
}
ul.menu.mobile-menu {
	min-height: 50px;
	height: 50px;
	width: 50px !important;
}
ul.menu.mobile-menu li,
ul.menu.mobile-menu li a {
	height: inherit !important;
}
ul.menu.mobile-menu li a {
	font-size: 1.5rem;
	text-align: right;
	display: block;
	position: relative;
}
ul.menu.mobile-menu li a::after {
	content: none;
}
.mobile-menu a icon { margin: 0 !important;}
.mobile-menu a icon svg polyline {
	fill:none;
	stroke: var(--grey-dk);
	stroke-width: 1;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-miterlimit: 10;
	transition: var(--animate-fast);
}
.mobile-menu a:hover icon svg polyline {
	stroke: var(--black);
	stroke-width: 3;
}
.mobile-menu a icon {
	position: absolute;
	top: 50%;
	right: 0;

	opacity: .75;
	
	transform: translateY(-50%) scale(0) rotate(-45deg);
	-webkit-transform: translateY(-50%) scale(0) rotate(-45deg);
	transition: var(--animate-fast);
	-webkit-transition: var(--animate-fast);
	
	transform-origin: center center;
	-webkit-transform-origin: center center;
}
.mobile-menu a icon#to-open {
	transform: translateY(-50%) scale(0) rotate(45deg);
	-webkit-transform: translateY(-50%) scale(0) rotate(45deg);
}
.mobile-menu a[data-action="to-open"] icon#to-open {
	opacity: 1;
	transform: translateY(-50%) scale(1) rotate(0deg);
	-webkit-transform: translateY(-50%) scale(1) rotate(0deg);
}
.mobile-menu a[data-action="to-close"] icon#to-close {
	opacity: 1;
	transform: translateY(-50%) scale(1) rotate(0deg);
	-webkit-transform: translateY(-50%) scale(1) rotate(0deg);
}


@media(max-width:991px) {
	#navToggle { display: none;}
	
	#navToggle {
		margin: 15px 0;
		padding: 15px 0;
		box-shadow: 0 0px 0 0 var(--white), 0 -0px 0 0 var(--white);
		-webkit-box-shadow: 0 0px 0 0 var(--white), 0 -0px 0 0 var(--white);
		transition: box-shadow linear .1s;
		-webkit-transition: -webkit-box-shadow linear .1s;
	}
	#navToggle.open {
		box-shadow: 0 2px 0 0 var(--grey), 0 -2px 0 0 var(--grey);
		-webkit-box-shadow: 0 2px 0 0 var(--grey), 0 -2px 0 0 var(--grey);
	}
	
	#navToggle li a { display: inline-block; }
}



/** HERO **/
.hero {
	padding: 3em 0 !important;
	color: var(--white);
	position: relative;
	
	background-color: var(--black) !important;
	background-image: url('../img/template/hero.jpg?V=3') !important;
	background-position: center center;
	background-repeat: no-repeat !important;	
	background-size: cover !important;
	
	border: none !important;
}
.hero .btn-outline {
	background: none !important;
	background: transparent !important;
}
.hero::after {
	display: block;
	position: absolute;
	content: '';
	top: 0px;
	right: 0px;
	bottom: 0px;
	left: 0px;
	background: var(--black);
	opacity: .45;
	z-index: 98 !important;
}
.hero span.accent {
/* 	color: var(--accent-yellow); */
	font-weight: 700;
}
.hero h1, .hero h2, .hero h3, .hero h4, .hero h5, .hero h6,
.hero .h1, .hero .h2, .hero .h3, .hero .h4, .hero .h5, .hero .h6 {
	font-family: inherit !important;
/* 	font-weight: 700; */
}
.hero .row {
	position: relative;
	z-index: 99 !important;
}



/** HERO w/ VIDEO **/

.section.hero.has-video {
	background-image: url('https://efpharma.s3.amazonaws.com/barcelona2019/hero/Barca+202+Life+Promo+560x476+Speed+130.png') !important;
}
@media(min-width: 992px) {
	.section.hero.has-video {
		background-image: url('https://efpharma.s3.amazonaws.com/barcelona2019/hero/Barca+202+Life+Promo+1280x544+Speed+130.png') !important;
	}
}
.section.has-image.has-video::before, .section.has-image.has-video::after{
	background: none!important;
	opacity: 1;
}
.section.has-image [class^='container'] .row {
	position: relative;
	z-index: 99 !important;
}

.hero.has-video { 
	overflow: hidden;
/* 	padding: 2.55em 0!important; */
}
@media(max-width: 767px) {
	.hero.has-video {
		padding: 3em 0!important;
	}	
}
.hero.has-video .container-fluid .row > div * {z-index: 99 !important; position: relative;}
#background-video {
	position: absolute !important;
    top: 50%;
    left: 50%;
  
    min-width: 100% !important;
    min-width: 100vw !important;
    min-height: 100% !important;
    
	width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    
/*
	height: 0 !important;
	padding-bottom: 42.5% !important;
*/
    width: auto;
    height: auto;
    z-index: 1 !important;
    pointer-events: none !important;
    
    transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    
    -webkit-animation: fadein .15s;
       -moz-animation: fadein .15s;
        -ms-animation: fadein .15s;
         -o-animation: fadein .15s;
            animation: fadein .15s;
}
@-moz-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}
@-webkit-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}
@-ms-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}
@-o-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}
@keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}




/** EVENT STATS **/
ul.event-stats { font-size: 1.1rem !important;}
ul.event-stats li {
	font-size: 2em;
	display: block;
	line-height: 1em;
	margin-right: .5em;
	margin-left: .5em;
	margin-top: .25em;
	margin-bottom: .25em;
}
ul.event-stats li small {
	font-size: .4em;
	font-weight: 500;
	display: block;
	color: var(--black);
	line-height: 1.5em;
	margin: 0 auto !important;
}
ul.event-stats li.cta,
ul.event-stats li.cta a,
ul.event-stats li.cta small {
	color: var(--accent-red);
	text-transform: uppercase;
}
ul.event-stats li.cta a::after {
	background: var(--accent-red);
}
@media(max-width: 991px) {
	ul.event-stats.flex {
		flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
	}
	ul.event-stats li {
		min-width: 50px;
	}
	ul.event-stats li small {
		max-width: 150px;
	}
}
ul.event-stats li {
	padding: .25em .3em 0em !important;
	border-radius: var(--radius);
}
ul.event-stats li.cta {
	background: var(--white-dk) !important;
}
ul.event-stats li.cta, ul.event-stats li.cta a, ul.event-stats li.cta small {
	color: var(--accent-green) !important;

}
ul.event-stats li.cta a::after {
	height: 2px !important;
	background: var(--accent-green) !important;
}

/** EVENT STATS, LARGER VARIANT **/
.stat {
	padding: 1em 0;
}
.stat p {
	font-size: 2em;
	line-height: 1.25em;
	text-align: center;
	padding: 0 1em;
	white-space: nowrap;
	color: var(--black);
}

.col-md-4 .stat p {
	font-size: 3em;
}

.has-image .stat p,
.black .stat p {
	color: var(--white);
}
.stat p small {
	font-size: 1rem;
	line-height: 1.3em;
	font-weight: 400;
	color: var(--black);
	display: block;
	max-width: 90%;
	margin: 0 auto;
	white-space: normal;
}
.has-image .stat p small,
.black .stat p small {
	color: var(--white-dk);
}


/** SECTIONS **/
.section {
	background: var(--white);
	padding: 3.5em 0;
	border-bottom: 1px dashed var(--grey);
}
.section.size-small {
	padding: 1.25em 0 1.5em;
}
.section.size-medium {
	padding: 2em 0;
}
.section.grey {
	background: var(--grey);
}
.section.black {
	background: var(--black);
	color: var(--white);
}
.section.has-image {
	position: relative;
	background-color: var(--grey-dk);
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	border-bottom: none !important;
	
}
.section.has-image * {
	color: var(--white);
}
.section.has-image::before, .section.has-image::after {
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
	z-index: 98 !important;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
.section.has-image::before {
	background: url("../img/template/concrete-texture.png") center center repeat;
	opacity: .3;
}
.section.has-image::after {
	background: var(--black);
	opacity: .5;
}
.section.has-image [class^='container'] .row {
	position: relative;
	z-index: 99 !important;
}




/** BLOCKQUOTE **/
/*
@media(min-width: 992px) {
	.fixed-height-columns > div {
		height: 25em;
	}
}
@media(max-width: 991px) {
	.fixed-height-columns .align-container,
	.fixed-height-columns .align,
	.fixed-height-columns .align > div {
		height: auto;
		display: block;
		position: static;
	}
}
*/
blockquote {
	text-align: center;
	padding: 0;
	border: none;
}
blockquote p {
	font-size: 2em;
	line-height: 1.3em;
	padding: 0;
	margin-bottom: .5em;
}
blockquote p q {
	display: block;
	line-height: inherit;
	margin-bottom: 0 !important;
	margin: 0 auto;
}
blockquote cite {
	font-size: 0.8rem;
	font-style: normal;
	font-weight: normal;
	color: var(--black);
}
blockquote cite img {
	margin-left: auto !important;
	margin-right: auto !important;
	padding: 5px;
}
blockquote cite img.img-headshot {
	width: 100px;
	height: 100px;
	border-radius: 50%;
	margin-top: 1em;
	padding: 0;
	border: 2px solid var(--white);
	box-shadow: var(--shadow-dk);
}
.owl-carousel blockquote cite img.img-headshot {
	margin-bottom: 1em !important;
}
blockquote cite::before {
	content: '—';
}





/** HOME SPEAKERS **/
.speaker {
	
}
.speaker .inner-square {

}
.speaker .inner-square img {
	min-width: 100%;
	border-radius: 3px;
}
.speaker .company-banner {
	position: absolute;
	display: block;
	width: 45%;
	right: 0;
	bottom: 0%;
	height: 25%;
	background: var(--white);
	box-shadow: var(--shadow);
	overflow: hidden;
	border-radius: 3px 0 3px 0;
}
.speaker .company-banner img {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	padding: 10%;
}
.speaker p {
	margin-top: 1em;
	font-size: .9rem;
	margin-bottom: 2em !important;
	max-width: 100%;
	min-height: 80px;
}
.speaker p span {
	display: block;
	line-height: 1.15em;
	margin-bottom: .3em;
	font-weight: 500;
}
.speaker p span.speaker-name { font-weight: 700; font-size: 1.1em; }
.speaker p span.speaker-company { font-weight: 700; }





/** HOME KEYNOTE SPEAKERS **/
#keynote-speakers-homepage .speaker p {
	font-size: 1.3em !important;
	text-align: center;
}
#keynote-speakers-homepage .speaker .square .inner-square {
	padding-right: 10%;
}
#keynote-speakers-homepage .speaker .square .inner-square img {
	border-radius: 50%;
}
#keynote-speakers-homepage .speaker .company-banner {
    width: 40%;
    right: 0%;
    bottom: 0%;
    height: 40%;
    overflow: hidden;
    border-radius: 50%;
    box-shadow: var(--shadow);
}
#keynote-speakers-homepage .speaker .company-banner img {
	padding: 1.5em !important;
}







/** STAFF **/
a > .staff p { color: var(--black); }
.staff {
	margin: 1em 0 !important;
	display: block;
	transition: var(--animate-fast);
}
.staff::after {
	content: '';
	clear: left;
	display: block;
	width: 100%;
	height: 0px;
}
.staff .square-inner img.img-responsive {
	min-width: 100%;
	transition: var(--animate-fast);
	box-shadow: var(--shadow);
	border-radius: var(--radius);
}
.staff p {
	margin-top: 1em;
	font-size: 1rem;
	margin-bottom: 2em !important;
	max-width: 90%;
}
.staff p span {
	display: block;
	line-height: 1.3em;
	font-weight: 500;
}
.staff p span.staff-name { font-weight: 700; }
.staff p span.staff-title { font-size: .8em; }
.staff p span.staff-phone { font-size: .8em; padding-top: .25em; }
.staff p span.staff-company { font-weight: 700; }
.staff p span.staff-action {
	font-weight: 700;
	font-size: .8em;
	padding-top: .5em;
}

a:hover > .staff,
a:focus > .staff,
a:active > .staff {
	transform: translateY(-.25em);
}
a:hover > .staff .square-inner img.img-responsive,
a:focus > .staff .square-inner img.img-responsive,
a:active > .staff .square-inner img.img-responsive {
	box-shadow: var(--shadow-dk);
}
/** Speaker, speakers page **/
.speaker-horizontal {
	margin-bottom: 2em !important;
	min-height: 200px;
	position: relative;
}
.speaker-horizontal > .row {
/*
	position: absolute;
	top: 0;	right: 0; bottom: 0; left: 0;
	height: 100%;
*/
}
.speaker-horizontal p {
	font-size: 1em;
	max-width: 100% !important;
	margin: .5em 0 .5em 0 !important;
}
.speaker-horizontal p span.speaker-name {
	font-size: 1.2em;
}
.speaker-horizontal p span.speaker-company {
/* 	color: var(--accent-magenta); */
}
.speaker-horizontal .btn-sm {
	font-size: .75rem;
	margin-top: .5em;
	margin-right: .5em;
}

/** Speaker, agenda page **/
.agenda .row.speakers {
	padding-top: 2em !important;
}
.agenda .speaker {
	min-height: 7em;
}
.agenda .speaker .company-logo {
	width: 5.5em;
	height: 5.5em;
	background: var(--white);
	border: 1px solid var(--grey);
	border-radius: var(--radius);
	float: left;
	padding: .5em;
}
.agenda .speaker p {
	font-size: 1em;
	max-width: 100% !important;
	padding: .25em 0 0 6.5em !important;
	margin: 0 !important;
	display: block;
}
.agenda .speaker p span.speaker-badge {
	font-size: .8em;
	text-transform: uppercase;
	letter-spacing: .05em;
	color: var(--grey-dk);
}

.agenda .speaker p span.speaker-name {
	font-size: 1em;
}
.agenda .speaker p span.speaker-company {
/* 	color: var(--accent-orange); */
}





/** CARDS / IMAGE CARDS **/
.card {
	padding-bottom: 3em;
}
.card .header {
	height: 0;
	padding-bottom: 60% !important;
	background-size: cover !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
	position: relative;
}
.card .header::before, .card .header::after {
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
	z-index: 0 !important;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
.card .header::before {
	background: url("../img/template/concrete-texture.png") center center repeat;
	opacity: .1;
}
.card .header::after {
	background: var(--black);
	opacity: .1;
}
.card .body {
	padding: 1em 0;
	min-height: 210px !important;
}
.card .footer {
	padding: 1em 0 1em;
}



/** Alternative Cards - Title overtop header bg **/
.card.card-alternative {
	padding: 10px;
	background: var(--white);
	margin-bottom: 30px;
	border-radius: var(--radius);
}
.gutter-small .card.card-alternative {
	margin-bottom: 10px;
}
.white .card.card-alternative {
	background: var(--grey);
}
.grey .card.card-alternative {
	background: var(--white);
}
.card.card-alternative .header {
	padding-bottom: 50% !important;
}
.card.card-alternative .header::after {
	opacity: .5;
}
.card.card-alternative .header * {
	font-weight: bold;
	color: var(--white);
}
.card.card-alternative .header .align-container {
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	position: absolute;
	z-index: 999;
}
.card.card-alternative .header .align-container .align > div {
	padding: 0 1.5em;
}

.card.card-alternative .body {
	padding: .75em;
	min-height: 200px !important;
}
@media(min-width: 992px) {
	.card.card-alternative .header {
		padding-bottom: 75% !important;
	}
	.card.card-alternative .body {
		min-height: 300px !important;
	}
}
@media(min-width: 1199px) {
	.card.card-alternative .header {
		padding-bottom: 50% !important;
	}
	.card.card-alternative .body {
		min-height: 200px !important;
	}
}
@media(max-width: 991px) {
	.card.card-alternative .header {
		padding-bottom: 30% !important;
	}
	.card.card-alternative .body {
		min-height: 1px !important;
	}
}
@media(max-width: 767px) {
	.card.card-alternative .header {
		padding-bottom: 45% !important;
	}
	.card.card-alternative .body {
		min-height: 1px !important;
	}
}
.card.card-alternative .footer {
	padding-top: 0;
}
.card.card-alternative .footer > a.btn {
	font-size: .95em;
	padding-left: 1em;
	padding-right: 1em;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
}



/** THEME CARDS **/
.theme {
	padding: 0 4em;
	margin-bottom: 2em !important;
}
.theme a {
	text-transform: uppercase;
}
.theme p, .card p {
	margin: .3em 0;
	font-weight: 500;
}
.theme p:first-child {
	min-height: 140px;
}
.theme p a:not(.btn) { font-size: 1.05em; }
.theme p a::after { height: 2px;}
.theme p span.larger,
.card p span.larger {
	font-size: 1.5em;
	display: block;
	margin-bottom: .25em !important;
	position: relative;
	font-weight: 700;
	line-height: 1.3em;
}
.theme p span.larger.dividing-line {
	position: relative;
	padding-bottom: 1em;
	margin-bottom: 0 !important;
}
.theme p span.larger.dividing-line::after {
	position: absolute;
	content: '';
	bottom: .35em;
	width: 1.15em;
	height: 3px;
	border-radius: 2px;
	background-color: var(--T0);
	display: block;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}
.theme p span.larger small {
	font-size: 10px;
	position: absolute;
	color: var(--grey-dk);
	display: block;
	width: 100%;
	text-align: center;
	bottom: 100%;
	font-weight: 500;
	padding-bottom: .5em;
}
.theme p a {
	margin-top: 1em;
}
.theme.cta p {
	color: var(--accent-orange);
}
.theme.cta p .larger {
	color: var(--accent-orange);
}
.theme p span.larger.dividing-line::after { background-color: transparent;}
.theme.color0 p span.larger.dividing-line::after { background-color: var(--T0); }
.theme.color1 p span.larger.dividing-line::after { background-color: var(--T1); }
.theme.color2 p span.larger.dividing-line::after { background-color: var(--T2); }
.theme.color3 p span.larger.dividing-line::after { background-color: var(--T3); }
.theme.color4 p span.larger.dividing-line::after { background-color: var(--T4); }
.theme.color5 p span.larger.dividing-line::after { background-color: var(--T5); }
.theme.color6 p span.larger.dividing-line::after { background-color: var(--T6); }


.theme.cta p span.larger.dividing-line::after { background-color: var(--grey); }

.theme.cta p a { color: var(--accent-orange); }
.theme.cta p a::after { background: var(--accent-orange); }

.theme.color0 p a.btn, 
.theme.color1 p a.btn, 
.theme.color2 p a.btn, 
.theme.color3 p a.btn, 
.theme.color4 p a.btn, 
.theme.color5 p a.btn, 
.theme.color6 p a.btn { color: white; }

.theme.color0 p a { background: var(--T0); }
.theme.color1 p a { background: var(--T1); }
.theme.color2 p a { background: var(--T2); }
.theme.color3 p a { background: var(--T3); }
.theme.color4 p a { background: var(--T4); }
.theme.color5 p a { background: var(--T5); }
.theme.color6 p a { background: var(--T6); }

.theme.color0 p a.btn-outline { border-color: var(--T0);color: var(--T0) !important; }
.theme.color1 p a.btn-outline { border-color: var(--T1);color: var(--T1) !important; }
.theme.color2 p a.btn-outline { border-color: var(--T2);color: var(--T2) !important; }
.theme.color3 p a.btn-outline { border-color: var(--T3);color: var(--T3) !important; }
.theme.color4 p a.btn-outline { border-color: var(--T4);color: var(--T4) !important; }
.theme.color5 p a.btn-outline { border-color: var(--T5);color: var(--T5) !important; }
.theme.color6 p a.btn-outline { border-color: var(--T6);color: var(--T6) !important; }

.theme icon {
	display: block;
	font-size: 2em;
	float: none;
	margin: 0 auto .5em !important;
}
.theme icon svg {
	display: block;
}
.themes-text.themes-text-with-iconography .theme p span.larger {
/* 	color: var(--accent-orange); */
}
.theme icon svg path {
/* 	fill: var(--black); */
}

.themes-text.themes-text-with-iconography .theme p,
.themes-text.themes-text-with-iconography .theme p span{
	text-align: left !important;
}
.themes-text.themes-text-with-iconography .theme p {
	padding-left: 100px;
	position: relative;
}
.themes-text.themes-text-with-iconography .theme p icon {
	position: absolute;
	left: -100px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 70px;
	width: 1em !important;
	height: 1em !important;
}


/** SOCIAL POSTS **/
.social-post {
	background: var(--white-dk);
	color: var(--black);
	padding: 0;
	border-radius: 2px;
	font-family: -apple-system,system-ui,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Fira Sans,Ubuntu,Oxygen,Oxygen Sans,Cantarell,Droid Sans,Apple Color Emoji,Segoe UI Emoji,Segoe UI Emoji,Segoe UI Symbol,Lucida Grande,Helvetica,Arial,sans-serif !important;
}
.social-post .social-post {
	border: 1px dotted var(--grey);
}
.section.black .social-post {
	background: var(--white);
	color: var(--black);
}
.social-post-header,
.social-post-body,
.social-post-footer {
	padding: 1em;
}
.social-post-body {
	padding-top: 0;
}
p.posted-by {
	position: relative;
	display: block;
	padding: 0 0 0 65px;
	margin: 0;
}
p.posted-by img.avatar {
	width: 50px;
	height: 50px;
	max-width: 50px;
	max-height: 50px;
	border-radius: 100px;
	margin-right: 10px;
	position: absolute;
	left: 0;
	border: 1px solid var(--white-dk);
}
p.posted-by span {
	display: block;
}
p.posted-by span.name {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 17px;
	line-height: 1em;
	padding-top: 5px;
	padding-bottom: 3px;
}
p.posted-by span.title {
	font-size: 13px;
	color: var(--grey-dk);
	line-height: 1.2em;
	height: 30px;
	overflow: hidden !important;
	max-width: 90%;
}
.social-post-body {
	font-size: 14px;
	line-height: 1.35em;
	min-height: 270px;
	height: 270px;
	overflow: hidden;
	position: relative;
}
.social-post-body p {
	line-height: inherit;
}
.social-post-body::after {
	content: '';
	width: 100%;
	height: 50px;
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	display: block;
	background: linear-gradient(to top, var(--white-dk) 0%, rgba(255,255,255,0) 100%);
	pointer-events: none !important;
}
/*
.social-post-body::before {
	content: 'Read more';
	position: absolute;
	left: 0%;
	border: 0%;
	font-size: 16px;
	
	color: #0073b1;
	display: inline;
	font-weight: bold;
}
*/
.social-post-body a {
	color: #0073b1;
	display: inline;
	font-weight: bold;
}
.social-post-body a:hover {
	color: #006097;
	text-decoration: underline !important;
}
.social-post-body a::after {
	content: none;
}
.section.black .social-post-body::after {
	background: linear-gradient(to top, var(--white) 0%, var(--white) 50%, rgba(255,255,255,0) 100%);
}
.social-post-media {
	border: 1px solid var(--white-dk);
	border-width: 1px 0 1px 0 !important;
	width: 100%;
	display: block;
	background: var(--grey);
}
.social-post-footer {
	background: var(--white-dk);
	border-radius: 0 0 2px 2px;
}
.seciton.black .social-post-footer {
	background: var(--white-dk);
}
ul.social-post-menu {
	height: 1em;
}
ul.social-post-menu li {
	padding: 0;
	margin: 0;
	max-width: 50%;
}
ul.social-post-menu li:nth-last-of-type(1) {
	max-width: 50%;
	padding-left: 1.5em;
	float: right;
}
ul.social-post-menu a {
	color: var(--grey-dk);
	font-size: .7em;
	padding: .1em 0;
	line-height: 1.3em;
	margin: 0 0 0 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
ul.social-post-menu a icon {
	width: 1.5em;
	height: 1.5em;
	position: relative;
	top: -2px;
}
ul.social-post-menu a icon * {
	fill: var(--grey-dk);
}
ul.social-post-menu a::after {
	content: none;
}
ul.social-post-menu a:hover,
ul.social-post-menu a:focus,
ul.social-post-menu a:active {
	color: var(--black);
}
ul.social-post-menu a:hover icon * ,
ul.social-post-menu a:focus icon * ,
ul.social-post-menu a:active icon *  {
	fill: var(--black);
}
.social-post-media .embed-responsive > img {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	bottom: auto !important;
	right: auto !important;
	transform: translateX(-50%) translateY(-50%);
	-webkit-transform: translateX(-50%) translateY(-50%);
	min-width: 101% !important;
	height: auto !important;
	min-height: 101% !important;
}












/** INTERACTIVE MAP **/
.interactive-map {
	position: relative;
}

.legend {
	margin: 0;
	padding: 0;
	color: var(--black);
	border: 1px solid var(--grey);
	overflow: hidden;
	border-radius: var(--radius);
}
.legend-header {
	padding: 1em;
	background: var(--black);
	color: var(--white);
	
	border-radius: var(--radius) var(--radius) 0px 0px;
}
.legend-header * {
	text-align: left;
	line-height: 1.1em;
}
ul.legend-menu {
	background: var(--white-dk);
	padding: 1em 1em;
	list-style: none;
	font-size: 1.1em;	

	border-radius: 0px 0px var(--radius) var(--radius);
}
ul.legend-menu li {
	position: relative;
	display: block;
	margin: .5em 0;
	padding: 0em 0em 0em 1em;
}
ul.legend-menu li::before {
	font-size: 5px;
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	width: 1em !important;
	height: 1em !important;
	padding: 0 !important;
	display: block;
	border-radius: 100%;
	background: var(--grey-dk);
	transform: translateX(0) translateY(-50%);
	-webkit-transform: translateX(0) translateY(-50%);
}
ul.legend-menu li a {
	display: inline-block;
	padding: .15em 0em;
	color: var(--grey-dk);
}
ul.legend-menu li a::after {
	left: 0;
	transform: none;
	-webkit-transform: none;
	background: var(--grey-dk);
}

ul.legend-menu li a:hover {
	color: var(--black);
}
ul.legend-menu li a:hover::after,
ul.legend-menu li a:focus::after {
	background: var(--black);
}

.image-map {
	position: relative;
	perspective: 0;
	-webkit-perspective: 0;
}
.image-map .area {
	position: absolute;
	display: block;
	z-index: 9;
	transform: rotate(-45deg) skew(15deg, 15deg);
	-webkit-transform: rotate(-45deg) skew(15deg, 15deg);
}
.image-map .area::before {
	display: none;
}
.image-map .area > * {
	transform: none !important;
	-webkit-transform: none !important;
}

.image-map .area::after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -1em;
	margin-left: -1em;
	padding: 0;
	overflow: hidden;
	width: 2em;
	height: 2em;
	border-radius: 50%;
	background-position: center center;
	background-repeat: no-repeat !important;
	background-size: 100% 100%;
	-webkit-transform: scale(0);
	
	border: 1px solid rgba(241, 242, 245, .75);
	
	-webkit-animation: ripple 4s ease-out forwards infinite;
	-moz-animation: ripple 4s ease-out forwards infinite;
	-ms-animation: ripple 4s ease-out forwards infinite;
	animation: ripple 4s ease-out forwards infinite;
	
	-webkit-animation-delay: 0s;
	-moz-animation-delay: 0s;
	-ms-animation-delay: 0s;
	animation-delay: 0s;
}
@-webkit-keyframes ripple {
	0% { opacity: 0;}
	25% { opacity: 1;}
	100% { -webkit-transform: scale(2); opacity: 0; }
}
@-moz-keyframes ripple {
	0% { opacity: 0;}
	25% { opacity: 1;}
	100% { -moz-transform: scale(2); opacity: 0; }
}
@-ms-keyframes ripple {
	0% { opacity: 0;}
	25% { opacity: 1;}
	100% { -ms-transform: scale(2); opacity: 0; }
}
@keyframes ripple {
	0% { opacity: 0;}
	25% { opacity: 1;}
	100% { transform: scale(2); opacity: 0; }
}

.image-map .area:nth-of-type(4n)::after 	{ -webkit-animation-delay: 0s; -moz-animation-delay: 0s; -ms-animation-delay: 0s; animation-delay: 0s; }
.image-map .area:nth-of-type(4n+1)::after 	{ -webkit-animation-delay: 1s; -moz-animation-delay: 1s; -ms-animation-delay: 1s; animation-delay: 1s; }
.image-map .area:nth-of-type(4n+2)::after 	{ -webkit-animation-delay: 2s; -moz-animation-delay: 2s; -ms-animation-delay: 2s; animation-delay: 2s; }
.image-map .area:nth-of-type(4n+3)::after 	{ -webkit-animation-delay: 3s; -moz-animation-delay: 3s; -ms-animation-delay: 3s; animation-delay: 3s; }

/* create corners for template.js to use */
c {	position: absolute; display: block; width: 0; height: 0; }
c.n {top: 0%;	left:100%;} /* North */
c.e {top: 100%;	left:100%;} /* East */
c.s {top: 100%;	left:0%;} /* South */
c.w {top: 0%;	left:0%;} /* West */

span.locator {
	background: var(--black);
	padding: 1.5em;
	display: block;
	
	position: absolute;
	float: left !important;
	z-index: 9999099 !important;
	
	color: var(--white);
	
	width: 350px !important;
	max-width: 50vw !important; /* Required for scripting */
	overflow: visible !important;
	
	-webkit-transform: translateX(-50%) translateY(-60%);
	-moz-transform: translateX(-50%) translateY(-60%);
	transform: translateX(-50%) translateY(-60%);

	-webkit-box-shadow: var(--shadow);
	-moz-box-shadow: var(--shadow);
	box-shadow: var(--shadow);

	border-radius: var(--radius);
	
	top: -9999px;
	left: -9999px;
}
span.locator::after {
	content: '';
	display: block;
	width: 2em;
	height: 2em;
	position: absolute;
	top: 99%;
	left: 50%;
	margin-left: -1em;
	border: 1em solid transparent;
	border-top-color: var(--black);
	pointer-events: none;
	z-index: 3;
}
span.locator.edge-left::after {
	border: 0.5em solid transparent;
	border-width: 0.5em 1em;
	border-top-color: var(--black);
	border-left-color: var(--black);
	width: 2em !important;
	height: 1em !important;
	margin-left: 0;
}
span.locator.edge-right::after {
	border: 0.5em solid transparent;
	border-width: 0.5em 1em;
	border-top-color: var(--black);
	border-right-color: var(--black);
	width: 2em !important;
	height: 1em !important;
	margin-left: -2em;
}
span.locator.edge-left {
	border-bottom-left-radius: 0 !important;
}
span.locator.edge-left::after {
	left: 0 !important;
}
span.locator.edge-right {
	border-bottom-right-radius: 0 !important;
}
span.locator.edge-right::after {
	left: 100% !important;
}
span.locator h3,
span.locator h4 {
	margin-top: 0;
	padding-top: 0;
	text-align: left;
}
span.locator p,
span.locator ul,
span.locator ol,
span.locator li {
	margin: 0;
	margin-bottom: .75em;
	line-height: 1.3em;
	color: var(--white-dk);
}
span.locator a.btn {
	margin-top: 1em;
}






/** Interactive Program/Agenda (Homepage) **/
.interactive-agenda {
	
}
.interactive-agenda .item {
	padding: 2em 0 0 0;
}

.interactive-agenda.owl-carousel,
.interactive-agenda.owl-carousel .owl-stage-outer,
.interactive-agenda.owl-carousel .owl-item {
	overflow: visible !important;
}

@media(min-width: 992px) {
	.day {
		display: block;
	}
	.interactive-agenda.owl-carousel {
	    padding-left: 0 !important;
	    padding-right: 0 !important;
	}
}


.day {
	box-shadow: -2px 0 0 0 var(--grey-dk);
	-webkit-box-shadow: -2px 0 0 0 var(--grey-dk);
	margin-bottom: 3em;
}
.owl-item:first-child .day {
	box-shadow: none;
	-webkit-box-shadow: none;
}
.day#official-start {
	box-shadow: -2px 0 0 0 var(--accent-red);
	-webkit-box-shadow: -2px 0 0 0 var(--accent-red);
	position: relative;
}
.day#official-start::after {
	content: '';
	width: 0.5em;
	height: 2px;
	background: var(--accent-red);
	position: absolute;
	left: -2px;
	top: 0;
	display: block;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}
.day#official-start::before {
	content: 'Official Start';
	position: absolute;
	line-height: 0%;
	left: .75em;
	color: var(--accent-red);
	display: block;
	font-size: 1em;
	font-weight: 500;
}

/* Reverse z-order to allow over-lapping bars */
.day:nth-of-type(1), .owl-item:nth-of-type(1) { z-index: 99; }
.day:nth-of-type(2), .owl-item:nth-of-type(2) { z-index: 98; }
.day:nth-of-type(3), .owl-item:nth-of-type(3) { z-index: 97; }
.day:nth-of-type(4), .owl-item:nth-of-type(4) { z-index: 96; }
.day:nth-of-type(5), .owl-item:nth-of-type(5) { z-index: 95; }
.day:nth-of-type(6), .owl-item:nth-of-type(6) { z-index: 94; }


.owl-item:first-child .day {
	border: none !important;
}
.owl-item:last-child .day {
	border-right: 1px dashed var(--grey-dk);
}
.day .group {
	border-bottom: 1px dashed var(--grey-dk);
	padding: .15em 0;
	position: relative;
	overflow: visible;
}

.day .group .group-title,
.day .group .group-info,
.day .group .group-note {
	position: absolute;
	height: 100%;
	top: 0;
}
.day .group .group-title {
	background: var(--black);
	box-shadow: 0 0 1px 0 var(--black);
	-webkit-box-shadow: 0 0 1px 0 var(--black);
	color: var(--white);
	width: 20%;
	left: 0%;
	text-transform: uppercase;
	
}
.day .group .group-title p {
	line-height: 0 !important;
	margin: 0;
	padding: 0;
	font-size: 14px;
	letter-spacing: 0.05em;
	color: var(--grey);
}
.day .group .group-title .align-container {
	transform-origin: 50% 50%;
	-webkit-transform-origin: 50% 50%;
	transform: translateX(-50%) translateY(-50%) rotate(-90deg);
	-webkit-transform: translateX(-50%) translateY(-50%) rotate(-90deg);
	position: absolute;
	top: 50%;
	left: 50%;
	
	width: 300%;
	padding: 0;
	padding-bottom: 300%;
	height: 0px;
}
.day .group .group-info {
	width: 80%;
	left: 20%;
	padding: 0;
}
.day .group .group-info p {
	font-size: .9em;
}
.day .group .group-info .align > div {
	padding: 0 3em 0 1.5em;
}
.day .group .group-info p {
	text-align: left !important;
}
.day .group .group-note {
	width: 100%;
	height: 100%;
	color: var(--grey-dk);
}
.day .group .name {
	text-align: left !important;
	display: block;
	font-size: 1em;
	line-height: 1.3em;
	font-weight: 500;
	color: var(--black);
	padding-top: .75em;
}
.day .group .bar-group,
.day .group .bar {
	white-space: nowrap;
	overflow-x: visible; 
	position: relative;
	background: transparent;
	display: block;
	text-align: left;
	text-transform: uppercase;
	height: 30px;
	font-size: 15px;
	line-height: 2em;
	margin: 0;
}
.day .group .bar {
	color: var(--white);
	margin: 3px 0;
	text-align: left !important;
	border-radius: 2px;
}
.day .group .bar.bar-sm {
	letter-spacing: 0.05em;

	background: var(--accent-yellow);
	color: var(--black);
	font-weight: 700;
	
	padding-top: 3px;
	padding-bottom: 0;
	font-size: 11px;
	line-height: 1;
	
	white-space: normal !important;
	
	padding-right: 30px; /* To force a line break */
}
.day .group .name,
.day .group .bar {
	padding-left: .75em;
}
.day .group .name.name-placeholder,
.day .group .bar.bar-placeholder {
	/* For when you need to keep tracks inline but have the area empty */
	padding-left: 0 !important;
	padding-right: 0 !important;
	width: 0 !important;
}
.day .group .bar-group {
	position: relative;
}
.day .group .bar-group .bar {
	position: absolute;
	margin: 0 4px 0 0 !important;
}
.day .group a:hover .bar {
	transition: var(--animate-fast);
	padding-left: 1em;
	color: rgba(255,255,255,.5);
}

.day .group.group-split {
	/* Used for the final "SOCIAL" where we have a joint title */
}
.day .group.group-split hr {
	margin: 0 !important;
	padding: 0 !important;
	height: 1px !important;
	width: 100% !important;
	border: none !important;
	border-bottom: 1px dashed var(--grey-dk) !important;
	background: none !important;
	transform: none;
	-webkit-transform: none;
	position: static;
}
.day .group.group-split .group-info {
	height: 50% !important;
}
.day .group.group-split .group-info .align-container {
	position: absolute;
	width: 100% !important;
	height: 100% !important;
}
.day .group.group-split .group-info:nth-of-type(1) {
	top: 0%;
}
.day .group.group-split .group-info:nth-of-type(2) {
	top: 50%;
}
.interactive-agenda .bar.color0 { background-color: var(--T0); }
.interactive-agenda .bar.color1 { background-color: var(--T1); }
.interactive-agenda .bar.color2 { background-color: var(--T2); }
.interactive-agenda .bar.color3 { background-color: var(--T3); }
.interactive-agenda .bar.color4 { background-color: var(--T4); }
.interactive-agenda .bar.color5 { background-color: var(--T5); }
.interactive-agenda .bar.color6 { background-color: var(--T6); }
.interactive-agenda .bar.color7 { background-color: var(--T7); }
.interactive-agenda .bar.color8 { background-color: var(--T8); }
.interactive-agenda .bar.color9 { background-color: var(--T9); }

.interactive-agenda .bar.color97 { background-color: var(--T97); }
.interactive-agenda .bar.color98 { background-color: var(--T98); }
.interactive-agenda .bar.color99 { background-color: var(--T99); }
.interactive-agenda .bar.color100 { background-color: var(--T100); }




/** CAORUSEL - Required **/
@media(min-width: 992px) {
	.owl-carousel {
		padding-left: 4em; /* must be the same as owl-nav > button width */
		padding-right: 4em; /* must be the same as owl-nav > button width */
	}
}
.owl-stage-outer {
	position: relative;
	overflow: visible;
	z-index: 2;
}
.owl-carousel .owl-item {

}
.owl-carousel .owl-item img {
	display: block;
	width: auto !important;
}
.owl-nav {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}
.owl-nav button {
	width: 4em; /* must be the same as padding left, right */
	background: none;
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
	outline: none;
	padding: 0;
	margin: 0;
	vertical-align: middle;
	transition: var(--animate);
	position: absolute;
	height: 100%;
	padding: 1em;
}
.owl-nav button.disabled {
	pointer-events: none !important;
	opacity: 0;
}
.owl-nav .owl-next {
	left: auto;
	right: 0px;
}
.owl-nav .owl-prev {
	right: auto;
	left: 0px;
}
.owl-nav button svg {
	display: block;
	width: 100%;
	height: auto;
}
.owl-nav button svg polyline {
	fill:none;
	stroke: var(--grey-dk);
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-miterlimit: 10;
	transition: var(--animate-fast);
}
.owl-nav button:hover svg polyline,
.owl-nav button:focus svg polyline,
.owl-nav button:active svg polyline {
	stroke: var(--grey-dk);	
	stroke-width: 3;
}
.owl-dots {
	position: relative;
	float: left;
	width: auto;
	display: block;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	padding: 2em 0 0;
}
.owl-dots button {
	font-size: 14px;
	display: inline-block;
	border-radius: 1em;
	width: 1em;
	height: 1em;
	margin: 0 .5em;
	padding: 0;
	outline: none;
}
.owl-dot {
	background: transparent;
	border: .15em solid var(--grey);
}
.section.grey .owl-dot {
	background: transparent;
	border: .15em solid var(--grey-dk);
}
.owl-dot.active {
	background: var(--grey-dk);
	border: .15em solid var(--grey-dk);
}
.section.grey .owl-dot.active {
	background: var(--grey-dk);
	border: .15em solid var(--grey-dk);
}
.section.black .owl-nav button svg polyline {
	stroke: var(--grey);
}
.section.black .owl-nav button:hover svg polyline,
.section.black .owl-nav button:focus svg polyline,
.section.black .owl-nav button:active svg polyline {
	stroke: var(--white);	
}
.section.black .owl-dot {
	background: transparent;
	border: .15em solid var(--grey);
}
.section.black .owl-dot.active {
	background: var(--white);
	border: .15em solid var(--white-dk);

}
@media(max-width: 991px) {
	.owl-nav { display: none; }
}



/** VENUE / Plan your trip **/

.venue-warning {
	border-radius: 6px;
	padding: 1.5em 3em;
	text-align: center;
	background: rgba(220, 10, 10, .1);
}
.venue-warning * {
	color: var(--accent-red);
}
.venue-warning p,
.venue-warning li,
.venue-warning sup {
	color: var(--black);
	margin-bottom: 0;
}
.venue-warning p a,
.venue-warning li a {
	color: var(--accent-red);
}
.venue-warning p a::after,
.venue-warning li a::after {
	background: var(--accent-red);
}









/** Sponsors footer **/
#sponsor-footer {
	background: var(--grey);
}
#sponsor-footer .sponsorship-level {
	text-align: center;
	padding: 1em 0;
	border-top: 2px solid var(--white);
	text-transform: uppercase;
	color: var(--grey-dk);
	font-size: .9em;
	font-weight: 400;
}
#sponsor-footer .sponsor-grid {
	display: block;	
	width: 100%;
	padding: 0;
	margin: 0;
	list-style: none;
	margin-left: -1rem;
	margin-right: -1rem;
	width: calc(100% + 2rem);
	width: -webkit-calc(100% + 2rem);
	text-align: center;
}
#sponsor-footer .sponsor-grid li {
	display: inline-block;
	width: 200px;
	margin: 0 !important;
	padding: .75em 0 !important;
	border-width: 0 1em;
	border-style: solid;
	border-color: transparent !important;
}
#sponsor-footer .sponsor-grid.size-large li {
	width: 220px;
}
#sponsor-footer .sponsor-grid.size-medium li {
	width: 190px;
}
#sponsor-footer .sponsor-grid.size-small li {
	width: 175px;
}
#sponsor-footer .sponsor-grid li a {
	display: block;
	padding: 0;
}
#sponsor-footer .sponsor-grid li a::after {
	background: var(--white);
	height: 2px;
	top: 100%;
	bottom: auto;
	opacity: 1 !important;
}
#sponsor-footer .sponsor-grid li a img {
	display: block;
	margin: 0 auto;
}
@media(max-width: 1199px) {
	#sponsor-footer .sponsor-grid li {
		width: 190px;
	}
	#sponsor-footer .sponsor-grid.size-large li {
		width: 319px;
	}
}
@media(max-width: 991px) {
	#sponsor-footer .sponsor-grid li {
		width: 145px;
	}
	#sponsor-footer .sponsor-grid.size-large li {
		width: 245px;
	}
}
@media(max-width: 767px) {
	#sponsor-footer .sponsorship-level {
		text-align: center;
	}
	#sponsor-footer .sponsor-grid li {
		width: 24%;
	}
	#sponsor-footer .sponsor-grid.size-large li {
		width: 45%;
	}
}
@media(max-width: 500px) {
	#sponsor-footer .sponsor-grid li {
		width: 45%;
	}
	#sponsor-footer .sponsor-grid.size-large li {
		width: 100%;
	}
}


/* aside */
aside {
	padding: 1.5em;
	background: var(--grey);
	border-radius: var(--radius);
	margin-bottom: 3em !important;
	display: block;
}

/** Used to spit out filters for debugging purposes; e.g. on a speaker, session, sponsor **/
ul.debug-filters {
	padding: 0;
	margin: 1em 0 0 0;
	font-size: 10px;
	list-style: none;
}
ul.debug-filters li {
	display: inline-block;
	margin-right: .5em;
	color: var(--grey-dk);
	border: 1px solid var(--grey-dk);
	line-height: 1em;
	padding: .25em .5em .1em .5em;
	text-transform: uppercase !important;
	border-radius: 3px;
}


ul.menu-filters {
	display: block;
}
ul.menu-filters {
	overflow: auto !important;
	overflow-x: hidden !important;
}
aside .btn.btn-sm {
	margin: 20px 0 0 0;
}
@media(min-width: 992px) {
	ul.menu-filters {
		max-height: 44vh; /* When it's sticky, its never taller than the window PLUS stuck nav height */
	}
	aside .overflow-controller {
		position: relative;
	}
	aside .overflow-controller::before {
		content: '';
		display: block;
		width: 100%;
		height: 1em;
		background: linear-gradient(to bottom, rgba(238, 238, 238, 1) 5%, rgba(238, 238, 238, 0) 95%);
		position: absolute;
		top: -1px;
		z-index: 99;
	}
	aside .overflow-controller::after {
		content: '';
		display: block;
		width: 100%;
		height: 1em;
		background: linear-gradient(to top, rgba(238, 238, 238, 1) 5%, rgba(238, 238, 238, 0) 95%);
		position: absolute;
		bottom: -1px;
		z-index: 99;
	}
	ul.menu-filters {
		padding-top: 1em;
		padding-bottom: 1em;
	}
}
@media(min-width: 992px) and (max-height: 749px) {
	ul.menu-filters {
		max-height: 40vh; /* When it's sticky, its never taller than the window PLUS stuck nav height */
	}
}
@media(min-width: 992px) and (max-height: 649px) {
	ul.menu-filters {
		max-height: 30vh; /* When it's sticky, its never taller than the window PLUS stuck nav height */
	}
}
ul.menu-filters li {
	display: block;
	float: none;
	text-align: left !important;
	margin-bottom: 1.5em;
}

ul.menu-filters li .label-to-display {
	white-space: nowrap;
	overflow: hidden;
	display: block;
	max-width: 100%;
}
ul.menu-filters li .label-to-display.ellipsis {
	text-overflow: ellipsis !important;
}
aside .btn.filter-dropdown icon {
	top: -2px;
}
aside .btn.filter-dropdown icon svg {
	transition: var(--animate-fast);
	
}
aside .btn.filter-dropdown[data-state="to-close"] icon svg {
	transform-origin: center center;
	-webkit-transform-origin: center center;
	transform: rotateX(-180deg);
	-webkit-transform: rotateX(-180deg);
}
aside .btn.filter-dropdown icon svg polyline {
	fill:none;
	stroke: var(--black);
	stroke-width: 7;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-miterlimit: 10;
}

aside .btn.filter-dropdown {
	display: none;
}
@media(max-width: 991px) {
	aside .btn.filter-dropdown {
		display: inline-block !important;
	}
	aside .dropdown {
		height: 0% !important;
		display: none !important;
	}
	aside .dropdown.open {
		height: 100% !important;
		display: block !important;
	}
}

#speakers-array, #agenda-array, #sponsors-array {
	position: relative;
	display: block !important;
	min-height: 500px;
}
@media(min-width: 1199px) {
	#speakers-array {
		background: linear-gradient(to right, var(--white) 0%, var(--white) 49.9%, var(--grey) 49.9%, var(--grey) 50.1%, var(--white) 50.1%, var(--white) 100%);
		
	}	
}
@media(max-width: 500px) {
	aside .btn:not(.btn-primary),
	aside .btn.filter-dropdown {
		display: block !important;
		margin: 0 0 .5em 0;
	}
}
#speakers-array > [class^='col-']:last-child::after {
	content: '';
	clear: left;
	display: block;
}
*[data-total-count]::before {
	content: none;
	position: absolute;
	top: 0%;
	left: 50%;
	width: 100%;
	height: 100%;
	display: block;
	text-align: center;
	font-weight: 400;
	padding: 1em 5em;
	font-size: 1.3em;
	line-height: 1.3em;
	transform: translateX(-50%) translateY(0%);
	-webkit-transform: translateX(-50%) translateY(0%);
	pointer-events: none !important;
	background: var(--white);
	color: var(--grey-dk);
}
*[data-total-count="0"]::before {
	content: 'No results found.';
}
*[data-match-count] {
	transition: var(--animate);
	-webkit-transition: var(--animate);
	
	transform-origin: center center;
	-webkit-transform-origin: center center;
	
	min-height: 0 !important; /* Override bootstrap's default */
}
*[data-match-count="0"] {
	transition: var(--animate-fast);
	-webkit-transition: var(--animate-fast);
	max-height: 0 !important;
	height: 0 !important;
	line-height: 0 !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	border-width: 0 !important;
	overflow: hidden !important;
	opacity: 0 !important;
	float: none !important;
}

/** Custom checkbox / radio buttons **/
label.fancy-checkbox {
	position: relative;
	font-size: 1rem;
	font-weight: 400;
	text-align: left !important;
	padding-left: 2.3em;
	line-height: 1.5em;
	height: 1.5em;
	overflow: visible;
	display: block;
	color: var(--black);
}
label.fancy-checkbox input {
	/* Hide the browser's default */
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
	text-indent: 9999px;
}
.checkmark {
	position: absolute;
	display: block;
	top: 50%;
	left: 0%;
	transform: translateX(0%) translateY(-50%);
	-webkit-transform: translateX(0%) translateY(-50%);
	height: 1.5em !important;
	width: 1.5em !important;
	padding: 0;
	border-radius: 3em;
	background-color: var(--black);
}
label.fancy-checkbox input ~ * {
	opacity: .5;
	transition: var(--animate-fast);
	-webkit-transition: var(--animate-fast);
}

label.fancy-checkbox:hover input ~ *,
label.fancy-checkbox:focus input ~ * {
	opacity: .75;
}

/* input:checked */
label.fancy-checkbox input:checked ~ * {
	opacity: 1;
}
label.fancy-checkbox:hover input:checked ~ *,
label.fancy-checkbox:focus input:checked ~ * {
	opacity: .75;
}

/* input:disabled */
label.fancy-checkbox input:disabled ~ *,
label.fancy-checkbox input:disabled:checked ~ *,
label.fancy-checkbox:hover input:disabled ~ *,
label.fancy-checkbox:focus input:disabled ~ *,
label.fancy-checkbox:hover input:disabled:checked ~ *,
label.fancy-checkbox:focus input:disabled:checked ~ * {
	opacity: .15;
	cursor: not-allowed !important;
	pointer-events: painted !important;
}

label.fancy-checkbox .checkmark:after {
	content: '';
	position: absolute;
	display: none;
}
label.fancy-checkbox input:checked ~ .checkmark:after {
	display: block;
}
label.fancy-checkbox .checkmark icon {
	position: absolute;
	display: block;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
label.fancy-checkbox .checkmark icon svg {
	width: 1em;
	height: 1em;
	position: absolute;
	margin: .25em;
	transition: var(--animate-fast);
	opacity: 0;
	transform-origin: center center;
	-webkit-transform-origin: center center;
	transform: rotate(15deg) scale(.75);
	-webkit-transform: rotate(15deg) scale(.75);
}
label.fancy-checkbox input:checked ~ .checkmark icon svg {
	opacity: 1;
	transform: rotate(0deg) scale(1);
	-webkit-transform: rotate(0deg) scale(1);
}
label.fancy-checkbox .checkmark icon svg polyline {
	fill:none;
	stroke: var(--white);
	stroke-width: 7;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-miterlimit: 10;
}



ul.menu.tab-menu {
	font-size: 1em;
	display: block;
	position: relative;
	width: 100%;
}
ul.menu.tab-menu::before {
	content: '';
	display: block;
	clear: left;
	height: 2px;
	background: var(--grey);
	transform: translateY(-2px);
	-webkit-transform: translateY(-2px);
	position: absolute;
	top: 100%;
	width: 100%;
}
ul.menu.tab-menu::after {
	display: block;
	content: '';
	clear: left;
	width: 100%;
	height: 0px;
}
ul.menu.tab-menu li {
	position: relative;
	display: block;
	float: left;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	z-index: 1 !important;
}

@media(max-width: 991px) {
	ul.menu.tab-menu li {
		margin: .5em 0 0 0;
	}
}
ul.menu.tab-menu li.active {
	padding: 0 0 0 0;
	z-index: 9 !important;
}
ul.menu.tab-menu li a::after {
	content: none;
}
ul.menu.tab-menu li a {
	display: block;
	font-weight: 700;
	background: var(--grey);
	color: var(--grey-dk);
	padding: .6em 1.5em .5em 1.5em;
	border: 2px solid var(--grey);
	border-width: 2px 2px 0 2px;
	
	transform-origin: 50% 100%;
	-webkit-transform-origin: 50% 100%;
	
	transform: translateY(-1px) scale(.85);
	-webkit-transform: translateY(-1px) scale(.85);
	
	transition: inherit;
	text-transform: uppercase;
	
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	
	min-width: 40px;
	text-align: center;
}
ul.menu.tab-menu li.active a {
	background: var(--white);
	border-color: var(--grey);
	color: var(--black);
	
	transform: translateY(0) scale(1);
	-webkit-transform: translateY(0) scale(1);
}



.tab-content {
	display: block;
}
.tab-content .tab-pane {
	display: none;
}
.tab-content .tab-pane.active {
	display: block;
}

@media(max-width: 767px) {
	ul.menu.tab-menu {
/* 		font-size: .8em; */
		display: flex;
		display: -webkit-flex;
		flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
	}
	ul.menu.tab-menu li {
		flex: 1 auto;
		-webkit-flex: 1 auto;
	}
	ul.menu.tab-menu li a {
		padding: .8em .25em .7em .25em !important;
	}
}


/** BASIC AGENDA **/
.agenda {
	
}
.agenda .session {
	padding: 2em 0;
	border-bottom: 2px solid var(--grey);
}
.agenda .session:last-child {
	border-bottom: none;
}
.agenda .session.subtrack {
	background: var(--black);
	color: white !important;
	padding: 1em !important;
}
.session .row {
	margin-top: 0 !important;
}
.session .time {
	font-size: .85em;
	text-transform: uppercase;
	color: var(--accent-orange-dk);
	letter-spacing: .05em;
	padding-bottom: .5em;
}
.session .time .day {
	color: var(--grey-dk);
	float: right; /* for coheshion with the app that displays the same */
	box-shadow: none;
    -webkit-box-shadow: none;
}
.session .abstract .title {
	font-weight: bold;
	font-size: 1.5em;
	margin-bottom: .5em;
	line-height: 1.3em;
}
.session .speakers {
	padding-top: .75em;
	font-size: .9em;
}


.section.grey .agenda .session {
	padding: 2em;
	border-bottom: 2px solid var(--grey);
	background: var(--white);
}
@media (min-width: 992px) {
	.section .glance-agenda .agenda {
	    padding-bottom: 0em !important;
	}
}

/** sponsor **/
.sponsor {
	padding-bottom: 3em;
}
.sponsor .square {
	border: 1px solid var(--grey);
	margin-bottom: 1em;
	border-radius: 3px;
}
.sponsor img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	-webkit-transform: translateX(-50%) translateY(-50%);
	max-width: 100% !important;
	padding: 1em;
}
.sponsor p span {
	display: block;
}
.sponsor p .sponsor-name {
	font-size: 1.2em;
	font-weight: 700;
	white-space: nowrap;
	overflow: hidden;
}
.sponsor p .sponsor-name.ellipsis {
	text-overflow: ellipsis !important;
}
.sponsor p .sponsor-level {
	font-style: italic;
	color: var(--grey-dk);
}


/** POPUPS / MODALS **/
.modal, .modal.in, .modal-open {
	padding-left: 0 !important;
	padding-right: 0 !important;
	z-index: 999999;
}
.modal-dialog {
	margin: 0;
/* 	overflow: auto; */
}
.modal { background: none !important}
.modal .modal-dialog:not(.modal-fullscreen) {
	top: 50%;
	left: 50%;
	right: auto;
	bottom: auto;
	transform-origin: top left !important; /* Not sure why... don't ask, needed to be */
	-webkit-transform-origin: top left !important; /* Not sure why... don't ask, needed to be */
	transform: scale(0) translate(-50%) translateY(50%);
	-webkit-transform: scale(0) translate(-50%) translateY(50%);
	opacity: 0;
	transition: var(--animate);
	-webkit-transition: var(--animate);
}
.modal.in .modal-dialog:not(.modal-fullscreen) {
	transform: scale(1) translate(-50%) translateY(-50%);
	-webkit-transform: scale(1) translate(-50%) translateY(-50%);
	opacity: 1;
}

.modal-content {
	border-radius: 0px;
	box-shadow: var(--shadow-dk);
	-webkit-box-shadow: var(--shadow-dk);
	background: var(--white);
	border: none;
}
.modal-header {
	padding: 45px 45px 0 45px;
	background: var(--white);
	border: none;
}
.modal-body {
	padding: 30px 45px 45px 45px;
	background: var(--white);
	border: none;
	text-align: center;
	max-height: 50vh;
	overflow: auto;
}
.modal-body > .row:first-child { margin-top: 0 !important}
.modal-footer {
	padding: 45px;
	background: var(--white-dk);
	border: none;
}


.modal-fullscreen {
	width: 100%;
	height: auto;
	max-width: 100%;
	max-width: 100vw;
	max-height: 100%;
	max-height: 100vh;
	color: var(--grey);
}
.modal-fullscreen .modal-dialog {
	overflow: hidden;
}
.modal-fullscreen .modal-content {
	width: 100%;
	height: 100%;
	max-width: 100%;
	max-width: 100vw;
	min-height: 100%;
	min-height: 100vh;
	background: var(--black);
	opacity: .995;
}
.modal-fullscreen .modal-header,
.modal-fullscreen .modal-body,
.modal-fullscreen .modal-footer {
	position: relative;
	background: transparent;
}
.modal-fullscreen .modal-content a {
	color: var(--accent-orange-lt);
}
.modal-fullscreen .modal-content a::after {
	background: var(--accent-orange-lt);
}
.modal-fullscreen .modal-header {
	padding: 5em 0;
}
.modal-fullscreen .modal-body,
.modal-fullscreen .modal-footer {
	padding: 0 0 5em 0;
}

.modal-header .close {
	background: none;
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
	font-size: 1em;
	position: fixed !important;
	top: 0;
	right: 0;
	padding: 1em;
}
.modal-fullscreen .modal-header .close {
	font-size: 2em;
}
.modal-header .close icon {
	margin: 0;
	padding: 0;
}
.modal-header .close icon svg polyline {
	fill: none;
	stroke: var(--grey-dk);
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-miterlimit: 10;
	transition: var(--animate-fast);
}
.modal-header .close:hover icon svg polyline,
.modal-header .close:focus icon svg polyline {
	stroke-width: 3;
	stroke: var(--black);
}

.modal-fullscreen.modal-header .close icon svg polyline {
	stroke: var(--white-dk);
}
.modal-fullscreen .modal-header .close:hover icon svg polyline,
.modal-fullscreen .modal-header .close:focus icon svg polyline {
	stroke: var(--white);
}




.modal-header .square {
	margin-bottom: 0 !important;
	background: var(--white);
}
.modal-header .square .inner-square img {
	min-width: 100%;
}
.modal-header .square.half {
	margin-bottom: 0 !important;
	background: var(--white);
}
.modal-header .square.half .inner-square img {
	max-width: 100%;
	min-width: 1px;
	box-shadow: none;
	-webkit-box-shadow: none;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	-webkit-transform: translateX(-50%) translateY(-50%);
}
.modal-fullscreen .modal-header .square .company-banner {
	position: absolute;
    display: block;
    width: 45%;
    right: 0;
    bottom: 0%;
    height: 25%;
    background: var(--white);
    overflow: hidden;
}
.modal-fullscreen .modal-header .square .company-banner img {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	padding: 10%;
	z-index: 999;
}
.modal-fullscreen .modal-header .square .company-banner::after {
	content: "";
	display: block;
	box-shadow: var(--shadow);
	-webkit-box-shadow: var(--shadow);
	width: 100%;
	height: 100%;
	padding: 1em;
	background: white !important;
	top: 0;
	right: 0;
	position: absolute;
}
.modal .row > div.has-dividing-border::after {
	background: rgba(255,255,255,.1) !important;
}
.modal-header #name-to-paste h3 {
	font-size: 1.1em;
	background: var(--white-dk);
	color: var(--black);
	padding: 1em;
	margin-bottom: 2em;
	padding-right: 5em;
	box-shadow: var(--shadow);
	-webkit-box-shadow: var(--shadow);
}
.modal-header #name-to-paste h3 > span {
	display: block;
}
.modal-header #name-to-paste h3 > span.speaker-name,
.modal-header #name-to-paste h3 > span.sponsor-name {
	font-size: 1.25em;
	line-height: 1.3em;
	font-weight: bold;
	margin-bottom: .15rem;

}
.modal-header #name-to-paste h3 > span.speaker-title,
.modal-header #name-to-paste h3 > span.sponsor-level {
	font-weight: 300;
/* 	font-style: italic; */
}
.modal-header #name-to-paste h3 > span.speaker-title {
	margin-bottom: .15rem;
}
.modal-header #name-to-paste h3 > span.speaker-company {
	font-weight: bold;
}



/** Sponsors documents **/
.documents {
	margin-top: 3em;
	border-top: 1px solid rgba(255,255,255,.1);
}
.documents .document {
	padding: 0;
	background: var(--white);
	transition: var(--animate-fast);
	-webkit-transition: var(--animate-fast);
	margin-bottom: 10px;
}
.documents .document .head {
	background-size: cover !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
}
.documents .document .body {
	padding: 1em;
	background: var(--white-dk);
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}
.documents a:hover .document, 
.documents a:focus .document {
	transform: translateY(-.5em);
	-webkit-transform: translateY(-.25em);
}
.documents .document .body p span {
	color: var(--black);
	display: block;
}
.documents .document .body p .document-name {
	font-size: 1.2em;
	line-height: 1.3em;
	font-weight: 700;
}
.documents .document .body p .document-excerpt {
	color: var(--grey-dk);
	font-style: italic;
	line-height: 1;
}


















/** REGISTER **/
.register-category {
	height: 12em;
	max-height: 12em;
	color: var(--black);
	border-radius: var(--radius);
	
	transition: var(--animate-fast);
	-webkit-transition: var(--animate-fast);
	
	background: var(--grey);
	margin-bottom: 30px !important;
}

.register-category.register-category-virtual {
	height: auto !important;
	max-height: 999px !important;
	padding: 2em;
}
.register-category.register-category-virtual ul {
	color: var(--black) !important;
}
.register-category.register-category-virtual .btn {
	text-align: center !important;
	color: var(--white);
}

a:hover .register-category,
a:focus .register-category {
	transform: translateY(-.25em);
	-webkit-transform: translateY(-.25em);
}

.register-category.color1 h5 { color: var(--T1); }
.register-category.color2 h5 { color: var(--T3); }
.register-category.color3 h5 { color: var(--T5); }
.register-category.color4 h5 { color: var(--T7); }

.register-category h5 {
	color: var(--black);
	line-height: 1em;
	margin: 0 0 .5em 0;
	text-align: center;

}
.register-category p {
	color: var(--black);
	opacity: .75;
	line-height: 1.3em;
	margin: 0;
}
.register-category .align > div {
	padding: 1em 1.5em;
}


.register-pass {
	text-align: left;
	margin-bottom: 3em !important;
}
.register-pass .row {
	margin-top: 0;
}
.register-pass.diamond { color: var(--register-diamond); border-color: var(--register-diamond); }
.register-pass.gold { color: var(--register-gold); border-color: var(--register-gold); }
.register-pass.silver { color: var(--register-silver); border-color: var(--register-silver); }
.register-pass.bronze { color: var(--register-bronze); border-color: var(--register-bronze); }
.register-pass.grey { color: var(--grey-dk); border-color: var(--grey-dk); }

.register-pass.diamond a { color: var(--register-diamond); }
.register-pass.diamond a::after { background: var(--register-diamond); }

.register-pass.gold a { color: var(--register-gold); }
.register-pass.gold a::after { background: var(--register-gold); }

.register-pass.silver a { color: var(--register-silver); }
.register-pass.silver a::after { background: var(--register-silver); }

.register-pass.bronze a { color: var(--register-bronze); }
.register-pass.bronze a::after { background: var(--register-bronze); }

.register-pass.grey a { color: var(--grey-dk); }
.register-pass.grey a::after { background: var(--grey-dk); }

.register-pass .header > h3,
.register-pass .header > h4 {
	text-align: left;
	color: inherit !important;
	border-bottom: 2px solid var(--grey);
	border-bottom-color: inherit !important;
	margin: 0;
}
.register-pass .header > h3 small,
.register-pass .header > h4 small {
	color: var(--grey-dk);
	opacity: 1;
	text-transform: uppercase;
	font-size: .75rem;
	font-weight: 300;
	letter-spacing: .03em;
}

.register-pass .header .register-price {
	height: 110px;
	max-height: 110px;
	overflow: hidden;
	margin-bottom: 1rem !important;
}
.register-pass .header .register-price h4 {
	text-align: left;
	display: inline-block;
	position: relative;
	overflow: hidden;
}
.register-pass .header .register-price h4 span.smaller {
	font-size: .8em;
	font-style: italic;
}
.register-pass .header .register-price .strike {
	color: var(--grey-dk);
}
.register-pass .header .register-price .strike::after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	height: 2px;
	background: var(--black);
	transform: translateX(-50%) translateY(-50%) rotate(-5deg) scale(1);
	-webkit-transform: translateX(-50%) translateY(-50%) rotate(-10deg) scale(1.1);
}
.register-pass .header .register-price p {
	margin: 0;
	padding: 0;
	color: var(--grey-dk);
	font-size: 1rem;
	line-height: 1em;
}
.register-pass .header .register-price.current-price {
	font-size: 1.45em;
}
.register-discount-expiry-notice {
	padding: 1em 0 .85em 0;
	border-top: 2px solid var(--grey);
	color: var(--grey-dk);
	
	text-align: left;
}
.register-discount-expiry-notice p {
	margin: 0;
	padding: 0;
	font-size: .8rem;
}
.register-pass .btn icon svg polyline {
	fill: none;
	stroke: var(--white-dk);
	stroke-width: 7;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-miterlimit: 10;
}
.register-pass .content {
	color: var(--grey-dk);
	padding: 0;
}
.register-pass .content > ul {
	padding: 1em 0 0 1.5em;
	margin: 0;
}
.register-pass .content > ul ul {
	padding: 1em 0 0 1.5em;
	margin: 0;
}
.register-pass .content li {
	margin-bottom: 1em;
	line-height: 1.3em;
}



.register-pass.has-background {
	color: white;
	border-radius: var(--radius);
	background: var(--accent-orange);
	box-shadow: 0 -1em 0 0 var(--accent-orange), 0 1em 0 0 var(--accent-orange);
	-webkit-box-shadow: 0 -1em 0 0 var(--accent-orange), 0 1em 0 0 var(--accent-orange);
	padding: 0 1em;
}

.register-pass.has-background .header > h3 small, .register-pass.has-background .header .register-price p {
	color: white;
}

.register-modal .sticker {
	position: absolute;
	top: -10px;
	left: -10px;
	background: var(--accent-orange);
	border-radius: 360px;
	padding: 30px;
	color: white;
	font-weight: bold;
}

/* Group Pass */

.register-pass.has-background {
	box-shadow: none !important;
	-webkit-box-shadow: none !important;
	padding: 1em !important;
}
.register-pass.has-background,
.register-pass.has-background .content {
	color: var(--white);
}
.register-pass.has-background h3 small {
	display: block;
	line-height: 1.3em !important;
	margin-bottom: 5px;
}
.register-pass.has-background h3 {
	line-height: 1em;
	text-shadow: -4px 0 0 var(--accent-orange), 4px 0 0 var(--accent-orange);
	border-bottom: 2px solid rgba(255,255,255,.3) !important;
}
.register-pass.has-background .content .row {
	margin-top: 1.5em;
}
.register-pass.has-background .content p {
	margin-bottom: 0.5em;
}
.register-pass.has-background .content ul:nth-last-of-type(1) li:nth-last-of-type(1) {
	margin-bottom: 0 !important;
}

.register-pass.has-background .content ul {
	padding: 0 0 0 1.5em;
}
.register-pass {
	margin-bottom: 1em !important;
}



/** SPEX **/
.spex-ideas p {	
	display: block;
	padding: .75em .5em;
	font-size: 1em;
	line-height: 1;
	background: var(--white);
	white-space: nowrap;
	overflow: hidden;
}
.spex-ideas img { 
	min-width: 100%;
}
.spex-ideas p.ellipsis {
	text-overflow: ellipsis !important;
}	

.spex-ideas p {
	margin-bottom: 10px !important;
}

.white .spex-ideas p {
	background: var(--grey);
}

table.invisible-table-with-inside-borders-only {
	border: none !important;
	text-align: center;
	font-size: 1.1em;
	table-layout: fixed !important;
	font-weight: bold;
}
table.invisible-table-with-inside-borders-only td {
	padding: 1em !important;
}
table.invisible-table-with-inside-borders-only tr,
table.invisible-table-with-inside-borders-only tr td {
	border: 1px solid rgba(0,0,0,.1);
}

table.invisible-table-with-inside-borders-only tr:first-child,
table.invisible-table-with-inside-borders-only tr:first-child > td { border-top: none !important;}
table.invisible-table-with-inside-borders-only tr:last-child,
table.invisible-table-with-inside-borders-only tr:last-child > td { border-bottom: none !important;}
table.invisible-table-with-inside-borders-only tr,
table.invisible-table-with-inside-borders-only tr > td:first-child { border-left: none !important;}
table.invisible-table-with-inside-borders-only tr,
table.invisible-table-with-inside-borders-only tr > td:last-child { border-right: none !important;}


/* Home Page Grid */
table.invisible-table-with-inside-borders-only td.theme {
    padding: 3em 4em !important;
    font-size: 17px;
}

@media(max-width: 767px) {
	table.invisible-table-with-inside-borders-only.homepage td.theme {
		display: block!important;
		border: none!important;		
		padding: 0 2em!important;
		margin: 2em 0 0!important;
	}
	table.invisible-table-with-inside-borders-only.homepage tr {
		border: none!important;			
	}
}




/* Articles */
#article {
	text-align: justify;
}
#article .article-precis {
	font-weight: 900;
}
#article img {
	max-width: 100%;
}
#article .img-left {
	float: left; 
	margin: 20px 20px 20px 0!important;
	max-width: 200px;
}
#article .img-right {
	float: right; 
	margin: 20px 0 20px 20px!important;
	max-width: 200px;
}
#article blockquote {
	border-left: 4px solid var(--accent-orange-dk);
	text-align: left;
	padding: 1em 2em;
	margin: 2em 0;
}
#article blockquote > *:nth-last-of-type(1) {
	margin-bottom: 0 !important;
}
#article blockquote p {
	font-size: 1.7em;
}
#article blockquote p small {
	font-size: 1rem;
}
#article  blockquote::after,  blockquote::before {
	content: none!important;
}







/** CTA BLOCKS **/
.section.cta-block,
.section.cta-block.cta-primary {
	background: var(--accent-orange) !important;
	color: var(--white-dk) !important;
	font-size: 1.15em !important;
}
.section.cta-block.cta-secondary {
	background: var(--accent-green) !important;
}
.section.cta-block span.accent {
/* 	color: var(--accent-yellow) !important; */
	color: inherit;
	font-weight: bold;
}


/** H2 Designs **/
ul.large-bullets li {
	margin-bottom: 1.5em;
}
ul.large-bullets li span.larger {
	font-size: 1.3em;
	display: block;
	font-weight: 700;
}









/** Our Community **/
#community-cards .card {
	padding: 0;
	padding-bottom: 100%;
	background: var(--grey);
	border-radius: 100%;
	font-size: 1em;
	max-width: 100%;
	width: 100%;
	position: relative;
	margin-bottom: 2em;
	
	height: 0 !important;
}
@media(min-width: 992px) and (max-width: 1199px) {
	#community-cards .card {
		font-size: .8em;
	}
}
@media(min-width: 550px) and (max-width: 767px) {
	#community-cards .card {
		font-size: 1.3em;
	}
}
#community-cards .card p {
	line-height: 1.15em;
}
.section.grey #community-cards .card {
	background: var(--white);
}
#community-cards .card .align {
	height: 100% !important;
	min-height: 100% !important;
}
#community-cards .card .align,
#community-cards .card .align > div {
	width: 100%;
	max-width: 100%;
}
#community-cards .card .align > div {
	padding: 0 1em;
}
#community-cards .card icon {
	float: none;
	margin: 0 auto;
	width: 2.5em;
	height: 2.5em;
	margin-bottom: .5em !important;
}
#community-cards .card svg path {
/* 	fill: var(--black); */
}
#community-cards .card + p {
	padding-bottom: 45px;
}




/** Undraw Illustrations **/
.illustration-card {
	min-height: 400px;
	margin-bottom: 3em !important;
}
.illustration-wrapper {
	display: block;
	width: 100%;
	height: 0px;
	padding-bottom: 75% !important;
	position: relative;
	margin-bottom: 1.5em;
}
.illustration-wrapper .illustration {
	position: absolute;
	width: 100%;
	height: 100%;
	max-width: 100%;
	max-height: 100%;
	top: 0;	right: 0; bottom: 0; left: 0;
}
.illustration-wrapper .illustration img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateX(-50%) translateY(-50%);
	-moz-transform: translateX(-50%) translateY(-50%);
	-ms-transform: translateX(-50%) translateY(-50%);
	-o-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
	max-height: 100%;
}



/** Track cards **/
.section.grey .card.track { background: var(--white); }
.section.white .card.track { background: var(--grey); }

.card.track {
	padding: 2em;
	margin-bottom: 2em;
	border-radius: 6px;
	min-height: 500px;
	position: relative;
	overflow: hidden;
	
	color: var(--black);
	stroke: var(--black);
}
@media(max-width: 991px) {
	.card.track { min-height: 400px; }
}
@media(max-width: 767px) {
	.card.track { min-height: 300px; }
}
.card.track icon {
	width: 15em;
	height: 15em;
	position: absolute;
	bottom: -3em;
	right: -2em;
	stroke: inherit !important;
}
.card.track icon svg {
	opacity: .25;
}
/*
.card.track icon svg path {
	fill: none;
	stroke: inherit !important;
	stroke-width: 0.5;
	stroke-cap: round;
	stroke-meter-limit: 10;
}
*/
.card.track p.track-title {
	margin-top: 0;
	padding-top: 0;
	font-size: 1.5em;
	font-weight: 700;
	color: inherit !important;
	text-transform: uppercase;
	margin-bottom: .5em;
}
.card.track p.track-title small {
	font-size: 1.3rem;
	font-weight: normal;
	color: var(--black);
	text-transform: none !important;
	display: block;
	line-height: 1.3em;
}
.card.track p {
	color: var(--black);
	font-size: 1rem;
}
@media(max-width: 767px) {
	a img { margin-bottom: 15px!important; }
	
}




/** BLOCKQUOTES **/
blockquote q::before,
blockquote q::after {
	font-family: "Times New Roman", serif !important;
	font-size: 1em;
	font-weight: bolder !important;
	opacity: .9;
	color: var(--accent-orange-dk);
}
blockquote q::before { margin-right: .15em !important; }
blockquote q::after { margin-left: .15em !important; }




/** BIG Numbers **/
ol.big-number {
	list-style: none;
	padding: 0;
	margin: 0;
}
ol.big-number li {
	position: relative;
	display: block;
	margin: 0 0 2em 0;
	padding: 0 0 0 3.5em;
	min-height: 5em;
}
ol.big-number li::before {
	content: 'N';
	display: block;
	position: absolute;
/* 	color: var(--accent-orange); */
	font-weight: bold;
	top: 0;
	left: 0;
	font-size: 3em;
	line-height: 1em;
}

ol.big-number li:nth-of-type(1)::before { content: '1'; }
ol.big-number li:nth-of-type(2)::before { content: '2'; }
ol.big-number li:nth-of-type(3)::before { content: '3'; }
ol.big-number li:nth-of-type(4)::before { content: '4'; }
ol.big-number li:nth-of-type(5)::before { content: '5'; }
ol.big-number li:nth-of-type(6)::before { content: '6'; }
ol.big-number li:nth-of-type(7)::before { content: '7'; }
ol.big-number li:nth-of-type(8)::before { content: '8'; }
ol.big-number li:nth-of-type(9)::before { content: '9'; }
ol.big-number li:nth-of-type(10)::before { content: '10'; }







/** JOB TITLE LISTS **/
.list-of-job-titles {
	position: relative;
	margin-bottom: 2em !important;
	display: block;
}
.list-of-job-titles .title { 
	border-bottom: 3px solid var(--accent-green);
	color: var(--accent-green);
	padding-bottom: .25em;
	text-align: left;
	font-weight: 700;
}
.list-of-job-titles ul {
	list-style: none !important;
	padding: 1em 0 0 1em !important;
}
.list-of-job-titles ul li {
	position: relative;
	padding-left: 1.5em;
	margin-bottom: 1.5em;
	
	line-height: 1.3em;
}
.list-of-job-titles ul li::before {
	content: '';
	position: absolute;
	display: block; 
	
	top: 0.15em;
	left: 0em;
	
	width: 0;
	height: 0;
	border: 0.5em solid transparent !important;
	border-left-color: var(--accent-green) !important;
}
						




/** Theme Boxes **/
table.invisible-table-with-bold-headings,
table.invisible-table-with-bold-headings tr,
table.invisible-table-with-bold-headings tr td {
	background: var(--white-dk) !important;
    border: 2px solid var(--white) !important;
    padding: 0 !important;
    margin: 0 !important;
}

.grey table.invisible-table-with-bold-headings,
.grey table.invisible-table-with-bold-headings tr,
.grey table.invisible-table-with-bold-headings tr td {
	background: var(--white) !important;
    border: 2px solid var(--white-dk) !important;
}
.invisible-table-with-bold-headings tr td,
.invisible-table-with-bold-headings tr td.theme {
	padding: 0 !important;
	text-align: left !important;
}
.invisible-table-with-bold-headings tr td.theme .title {
	padding: .5em 30px;
	margin: 0 !important;
	position: relative !important;
	background: var(--accent-orange) !important;
	color: var(--white) !important;
	font-size: 1.25rem;
	line-height: 1.3em;
	text-align: left;
	
	min-height: 3.6em; /* Padding-top-bottom + (Linehight X rows of text) */
	
	padding-right: 5em; /* remove this is titles are long */
}
.invisible-table-with-bold-headings tr td.theme .title * {
	position: relative;
	z-index: 9;
}
.invisible-table-with-bold-headings tr td.theme .title + p {
	padding: 30px 30px 45px 30px;
	margin: 0 !important;
	font-size: .85em;
}
@media(max-width: 991px) {
	table.invisible-table-with-inside-borders-only.invisible-table-with-bold-headings.homepage td.theme {
	    display: block!important;
	    padding: 0 !important;
	    margin: 0 !important;
    }
    table.invisible-table-with-inside-borders-only.invisible-table-with-bold-headings.homepage td.theme .title {
	    min-height: 1px;
	    padding: 20px 30px !important;
    }
    .invisible-table-with-bold-headings tr td.theme .title + p {
	    padding-bottom: 60px;
    }
}



/** MISSION STATEMENT **/
#mission-statement {
}
#mission-statement .large-bracket,
#mission-statement .height-of-large-bracket {
	min-height: 300px;
}
#mission-statement .large-bracket {
	font-weight: 100;
	width: 100%;
	text-align: center;
	opacity: .5;
	font-size: 14em;
	line-height: 1em !important;
	vertical-align: middle !important;
}
#mission-statement .large-bracket span {
	position: relative;
	transform: translateY(-10%) !important;	
	display: block;
	color: var(--grey) !important;
}
@media(max-width: 991px) {
	#mission-statement .large-bracket,
	#mission-statement .height-of-large-bracket {
		min-height: 1px;
	}
	#mission-statement .align,
	#mission-statement .align > div {
		display: block !important;
		height: auto !important;
		position: static !important;
	}
}
	
	
	
	
	




/** CONTENT LIBRARY **/
.menu.tab-menu.tab-menu-custom {
	
}
@media(min-width: 992px) {
	.menu.tab-menu.tab-menu-custom li {
		float: left !important;
		width: 33.3333%;
	}
	
	.menu.tab-menu.tab-menu-custom[data-count="1"] li {
		width: 100%;
	}
	.menu.tab-menu.tab-menu-custom[data-count="2"] li {
		width: 50%;
	}
	.menu.tab-menu.tab-menu-custom[data-count="3"] li {
		width: 33.3333%;
	}
	.menu.tab-menu.tab-menu-custom[data-count="4"] li {
		width: 25%;
	}
	.menu.tab-menu.tab-menu-custom[data-count="5"] li {
		width: 20%;
	}
	.menu.tab-menu.tab-menu-custom[data-count="6"] li {
		width: 16.6666%;
	}
}
@media(max-width: 991px) {
	.menu.tab-menu.tab-menu-custom li {
		float: left !important;
		min-width: 50%;
	}
}
.menu.tab-menu.tab-menu-custom li a {
	border-radius: 8px 8px 0 0 !important;
	font-size: 1.1em;
	text-transform: none;
	font-weight: normal !important;
}
.menu.tab-menu.tab-menu-custom li.active a {
	font-weight: bold !important;
}						
.menu.tab-menu icon {
	width: 2em;
	height: 2em;
	display: inline-block;
	margin: 0 .1em 0 0;
	float: none;
	vertical-align: middle;
}
.menu.tab-menu icon svg {
	width: 100%;
	height: 100%;
	display: block;
	position: relative;
	top: -.1em;
}
.menu.tab-menu.primary-tabs icon svg path {
/* 	fill: var(--grey-dk); */
}
.menu.tab-menu.primary-tabs li.active a {
	color: var(--accent-orange);
}
.menu.tab-menu.primary-tabs li.active a icon svg path {
/* 	fill: var(--accent-orange); */
}
.menu.tab-menu.secondary-tabs icon svg path {
/* 	fill: var(--grey-dk); */
}
.menu.tab-menu.secondary-tabs li.active a {
	color: var(--black);
}
.menu.tab-menu.secondary-tabs li.active a icon svg path {
/* 	fill: var(--black); */
}

/** CONTENT LIBRARY CTAs **/
.call-to-action-inline {
	box-shadow: var(--shadow-dk);
	color: var(--white-dk);
	background: var(--accent-teal);
	padding: 3em 4em;
	border-radius: 8px;
	margin-bottom: 3em !important;
	transition: var(--animate-fast);
}
.call-to-action-inline,
.call-to-action-inline.cta-primary { background: var(--accent-orange);}
.call-to-action-inline.cta-primary .btn,
.call-to-action-inline .btn { color: var(--accent-orange);}

.call-to-action-inline.cta-secondary { background: var(--accent-green);}
.call-to-action-inline.cta-secondary .btn { color: var(--accent-green);}

a:hover .call-to-action-inline,
a:focus .call-to-action-inline,
a:active .call-to-action-inline {
	opacity: .90;
}


/** CONTENT LIBRARY CARDS **/
.card.card-of-content {
	border-radius: 8px;
	background: var(--white-dk);
	color: var(--grey-dk);
	padding: 1.5em;
	
	margin-bottom: 3em;
}
.card.card-of-content img {
	border-radius: var(--radius);
	margin-bottom: 2em !important;
}
.card.card-of-content h1,
.card.card-of-content h2,
.card.card-of-content h5,
.card.card-of-content h5,
.card.card-of-content h6 {
	color: var(--black);
	font-weight: bold;
}
.card.card-of-content p,
.card.card-of-content li {
	font-size: .9em;
	line-height: 1.3em !important;
	margin-bottom: 1em;
}
.card.card-of-content icon {
	width: 1.3em;
	height: 1.3em;
	margin-right: .25em;
	vertical-align: middle !important;
}
.card.card-of-content icon svg path {
/* 	fill: var(--black); */
}
.card.card-of-content .btn {
	font-size: .9em;
	margin-top: 1em;
/* 	margin-bottom: 1em; */
}
.card.card-of-content small.content-date {
	color: var(--accent-orange-dk);
	text-transform: uppercase;
	letter-spacing: .05em;
	font-weight: normal;
	font-size: .8rem !important;
	display: block;
	line-height: 1em;
	padding: 0 0 .25em 0;
	margin-bottom: .5em;
}