/** such clean, wow **/

.btn + .btn {
	margin-left: 1em !important;
}
.section#hero {
	z-index: 99997 !important;
	position: relative !important;
}
@media(min-width: 992px) {
	.size-fullscreen.match-height {
		height: 85vh;
	}
	.size-fullscreen.match-height .container,
	.size-fullscreen.match-height  .container > .row,
	.size-fullscreen.match-height  .container > .row > div {
		height: inherit !important;
	}
}
@media(max-width: 991px) {
	#hero div:not(.square) > .align,
	#hero div:not(.square) > .align > div {
		position: static !important;
		display: block !important;
		float: none !important;
		height: auto !important;
		float: none !important;
		
		width: 100% !important;
		max-width: 100% !important;
		height: 100% !important;
		max-height: 100% !important;
	}
	
	#hero div:not(.square) > .align {
		padding: 2rem 0 0 !important;
	}
}
#hero {
	background-color: var(--black) !important;
	background-size: cover !important;
	position: relative;
	height: auto !important;
}
#hero img.brand-logo {
	max-height: 2.3rem !important;
}
#hero .header-container {
	display: block;
	position: absolute !important;
	top: auto;
	left: 50%;
	bottom: 0 !important;
	-webkit-transform: translateX(-50%) translateY(0%);
	-moz-transform: translateX(-50%) translateY(0%);
	transform: translateX(-50%) translateY(0%);
	z-index: 9999;
}
#hero nav {
	position: relative;
	z-index: 9999;
}
.btn {
	padding: .5em 1.5em !important;
}

#hero .btn-default {
	color: var(--white) !important;
	background: var(--black) !important;
}
#hero .btn-default:hover, #hero .btn-default:focus, #hero .btn-default:active, #hero .btn-default.active {
	color: var(--black) !important;
	background: var(--white) !important;
}


#hero::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: .5;
	background: rgba(0,0,0,1) !important;
	background: linear-gradient(to top, rgba(0,0,0,1), rgba(0,0,0,0), rgba(0,0,0,0)) !important;
}



body, html {
	overflow: visible !important;
}

@media(min-width: 992px) {
	header:not(.always-in) {
		
		transition: var(--animate);
		-webkit-transition: var(--animate);
		-moz-transition: var(--animate);
	}
	header {
		opacity: 0 !important;
		
		transform: translateY(-100%);
		-webkit-transform: translateY(-100%);
		-moz-transform: translateY(-100%);
		
	}
	header.in {
		opacity: 1 !important;
		
		transform: translateY(0%);
		-webkit-transform: translateY(0%);
		-moz-transform: translateY(0%);
	}
		
	header {
		position: sticky !important;
		top: 0 !important;
	}
}
@media(max-width: 991px) {
	header navbar {
		position: sticky !important;
		top: 0 !important;
	}
	header .pull-right {
		float: none !important;
	}
}

header {
	padding: 0em;
	position: relative;
	border-bottom: 1px solid var(--white);
}
header#header nav .has-event-info h4 {
	font-size: 1.3rem;
	margin-bottom: 0.1em !important;
}
header nav {
	padding: 1em 0;
}
header nav span {
	display: block;
	float: left;
}
header nav span.spacer {
	display: block;
	float: left;
	text-align: center;
	padding: 0 .5em;
	vertical-align: bottom;
	opacity: .5;
}
header .scroll-indicator {
	position: static !important;
	width: 100%;
	height: 1px !important;
	background: rgba(255,255,255,0.25) !important;
}


header .btn-default:hover, header .btn-default:focus, header .btn-default:active, header .btn-default.active {
	background: var(--yellow) !important;
	color: var(--black) !important;
}


navbar {
	display: block;
	margin: .5em 0 !important;
	padding: 0 !important;
}

navbar .menu.flex {
	justify-content: space-between !important;
	flex-wrap: nowrap !important;
	
	margin: 0 !important;
	padding: 0 !important;
}
@media(max-width: 991px) {
	navbar .menu.flex {
		justify-content: space-between !important;
		flex-wrap: wrap !important;
		flex-direction: column;
	}
}
navbar .menu.flex li {
	-webkit-flex: unset !important;
	flex: unset !important;
	
	float: none !important;
	
	margin: 0 !important;
	padding: 0 !important;
}
navbar .menu.flex li a {
	display: inline-block !important;
	font-size: .85rem;
	text-transform: uppercase;
}
navbar .menu.flex li a {
	font-weight: bold;
	text-decoration: none !important;
	text-decoration-color: var(--yellow) !important;
	text-decoration-thickness: 0px !important;
	text-underline-offset: -2px !important;
}
navbar .menu.flex li a:hover,
navbar .menu.flex li a:focus,
navbar .menu.flex li a:active,
navbar .menu.flex li a.active {
	font-weight: bold;
	text-decoration: underline !important;
	text-decoration-thickness: 2px !important;
	text-underline-offset: -2px !important;
	text-underline-position: under !important;
	text-decoration-color: var(--yellow) !important;
}
@media(max-width: 991px) {
	navbar .menu.flex li {
		padding: .25em 0 !important;
	}
}




.row > div > .align {
	padding: inherit !important;
}



.square.circle {
	border-radius: 100%;
	overflow: hidden !important;
	text-align: center;
}
.square.white.circle {
	color: var(--black);
}
.square.white.circle.event-title h1 {
	font-size: 2.9rem !important;
}
.square.white.circle.event-title p {
	font-size: 1rem;
	font-weight: 600 !important;
	line-height: 1em;
	color: var(--grey-dk);
	margin: .5em 0 0 0 !important;
	letter-spacing: 0.05em;
}

@media(min-width: 992px) and (max-width: 1199px){
	.square.white.circle.event-title h1 {
		font-size: 2.4rem !important;
	}
	.square.white.circle.event-title p {
		font-size: .8rem !important;
	}
}
@media(max-width: 991px) {
	.square.white.circle.event-title h1 {
		font-size: 1.7rem !important;
	}
	.square.white.circle.event-title p {
		font-size: .8rem !important;
		line-height: 1.2em;
		padding: 0 2rem !important;
	}
}



	
ul.flex-bordered-bottom {
	text-transform: uppercase !important;
	padding: 0 !important;
	margin: 0 !important;
	font-size: .8rem;
}
ul.flex-bordered-bottom > li {
	padding: 0.15em 0 !important;
	margin: 0 !important;
	font-weight: bold !important;
	border-bottom: 2px solid var(--white);
}
ul.flex-bordered-bottom > li.text-lighter {
	font-weight: 300 !important;
}



#hero a#logo,
ul.flex-bordered-bottom {
	display: block;
	background: rgba(0,0,0,.25);
	backdrop-filter: blur(10px);
	padding: .5em !important;
}


nav {
	position: relative;
}

nav > .row:last-child {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}








.video-container {
	padding: 3rem 0;
}
@media(max-width: 991px) {
	.video-container {
		padding: 2rem 0;
	}
}
.video-container .embed-responsive {
	-webkit-box-shadow: var(--shadow-dk);
	-moz-box-shadow: var(--shadow-dk);
	-ms-box-shadow: var(--shadow-dk);
	box-shadow: var(--shadow-dk);
}






/** SPEAKER TILES **/
.speaker,
.container > .row:last-child .row:last-child div .speaker:last-child {
	margin-bottom: 2em !important;
}
.speaker .images {
/* 	-webkit-box-shadow: var(--shadow-dk);
	-moz-box-shadow: var(--shadow-dk);
	box-shadow: var(--shadow-dk); */
	margin-bottom: 1em;
}
.speaker .images .headshot {
	position: relative;
	width: 100%;
	height: 0;
	padding-bottom: 100%;
	background: var(--grey-dk);
	overflow: hidden !important;
	
	border-radius: 0 !important;
}
.speaker .images .headshot > img {
	position: absolute;
	top: 0; right: 0; bottom: 0; left: 0;
	width: 100%;
	height: 100%;
	
	pointer-events: none !important;
	border-radius: 0 !important;
}
.speaker .images .logo {
	position: relative;
	width: 100%;
	height: 0;
	padding-bottom: 35%;
	background: var(--white);
	overflow: hidden !important;
}
.speaker .images .headshot > img {
	border-bottom-left-radius: 0 !important;
	border-bottom-right-radius: 0 !important;
}
.section.white .speaker .images .logo {
	-webkit-box-shadow: inset -1px 0px 0px var(--grey-lt), inset 1px 0px 0px var(--grey-lt), inset 0px -1px 0 var(--grey-lt), 0px -1px 0 var(--grey-lt) !important;
	-moz-box-shadow: inset -1px 0px 0px var(--grey-lt), inset 1px 0px 0px var(--grey-lt), inset 0px -1px 0 var(--grey-lt), 0px -1px 0 var(--grey-lt) !important;
	box-shadow: inset -1px 0px 0px var(--grey-lt), inset 1px 0px 0px var(--grey-lt), inset 0px -1px 0 var(--grey-lt), 0px -1px 0 var(--grey-lt) !important;
}
.speaker .images .logo > img {
	position: absolute;
	top: 50%; left: 50%;
	width: 100%;
	height: auto;
	
	-webkit-transform: translateX(-50%) translateY(-50%);
	-moz-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
	
	pointer-events: none !important;
}
.speaker p {
	padding-right: 1em;
}
.speaker p > a {
	margin-top: 1em !important;
}
.speaker p > span,
.speaker p > a {
	display: block;
	line-height: 1.25em;
	margin-bottom: .25em;
	font-size: .85em;
}
.speaker span.speaker-name {
	font-weight: bold;
	color: var(--black);
}

.speaker span.speaker-name {
	font-size: 1em;
}
.speaker span.speaker-key {
	font-size: .65em !important;
	text-transform: uppercase !important;
	letter-spacing: .15em !important;
	line-height: 1.5em;
}
.speaker span.speaker-title,
.speaker span.speaker-key {
	font-weight: normal;
	color: var(--grey-dk);
}
.speaker span.speaker-company {
	font-weight: bold;
}


.section.black .speaker span.speaker-name {
	color: var(--white);
}
.section.black .speaker span.speaker-title,
.section.black .speaker span.speaker-company,
.section.black .speaker span.speaker-key {
	color: var(--white-dk);
}





ul.statistics {
	justify-content: space-between;
}

ul.statistics li {
	-webkit-flex: unset;
	flex: unset;
	
	padding: 0;
	text-align: left;
}
ul.statistics .label {
	max-width: 100px;
	margin: .5em auto 0 auto;
	font-size: .8rem;
}
ul.statistics .number {
	font-size: 2.5rem;
	color: var(--black);
}

@media(max-width: 991px) {
	ul.statistics li {
		min-width: 100px;
	}
}






.card.card-studio {
	/* background: #945064;
	border-radius: 0 !important;
	border: 6px solid #04c9c2;
	border-bottom-width: 40px; */
	
	/* background: rgba(0,0,0,.3);
	backdrop-filter: saturate(1.3) blur(50px); */
	
	background: none !important;
	border: 1px solid var(--grey);
	border-radius: 0 !important;
}
@media(min-width: 992px) {
	.row > div:nth-last-child(4) > .card,
	.row > div:nth-last-child(5) > .card,
	.row > div:nth-last-child(6) > .card {
		margin-bottom: 1.5rem !important;
	}
	.card.card-studio .card-content {
		min-height: 10rem;
	}
}
@media(min-width: 1200px) {
	.card.card-studio .card-content {
		min-height: 8rem;
	}
}


@media(max-width: 991px) {
	.card.card-studio .card-content {
		min-height: 5rem;
	}
}

.btn-no-border {
	border: none !important;
}
.button-block .btn {
	text-align: left !important;
}
.button-block span {
	display: block;
	font-size: .7em;
}

.modal h4 {
	text-transform: uppercase!important;
	font-size: 2rem!important;
}

.modal-body {
	max-height: 72vh;
}

.modal-body p a {
	font-weight: bold!important;
}
@media(max-width: 991px) {
.modal-body .headshots .col-xs-12 {
	margin-bottom: 20px!important;
}
}

.modal-body .headshots img {
	margin-bottom: 10px!important;
}

.modal-body .headshots h5 {
	font-weight: 900!important;
	font-size: 20px;
}

.modal-header .close {
	font-size: 2em;
	margin-top: -16px;
	margin-right: -5px;
}







.image-collage {
	display: flex;
	display: -webkit-flex;
	
	flex-direction: row;
	-webkit-flex-direction: row;
	
	gap: 1rem;
}
.image-collage .flex-column {
	flex: auto;
	
	display: flex;
	display: -webkit-flex;
	
	flex-direction: column;
	-webkit-flex-direction: column;
	
	
	gap: 1rem;
}
@media(min-width: 992px){
	.image-collage .flex-column {
		max-width: 50%;
	}
}
.image-collage .flex-row {
	flex: auto;
	
	display: flex;
	display: -webkit-flex;
	
	flex-direction: row;
	-webkit-flex-direction: row;
	
	
	gap: 1rem;
}
	
.image-collage .tile {
	flex: auto;
	height: 50vh;
	background: var(--grey-lt);
	
	border-radius: var(--radius);
}


.image-collage .tile iframe {
	width: 100%;
	height: 100%;
	
	border-radius: var(--radius);
}

.image-collage .tile {
	background-size: cover !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
}

@media(max-width: 991px) {
	.image-collage,
	.image-collage .flex-column,
	.image-collage .flex-row {
		flex-direction: column;
		-webkit-flex-direction: column;
	}
	.image-collage .tile {
		height: 75vw;
	}
}





.image-collage .tile .tns-outer,
.image-collage .tile .carousel,
.image-collage .tile .tns-ovh {
	border-radius: var(--radius) !important;
}
.image-collage .tile .tns-outer,
.image-collage .tile .carousel,
.tns-ovh, .tns-inner {
	width: 100%;
	height: 100%;
	position: relative;
}
.carousel .item {
	width: 100%;
	height: 100%;
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
}
/* .carousel .item iframe {
	width: 100%;
	height: 100%;
	margin: 0;
} */

.image-collage .tile .tns-controls,
.image-collage .tile .tns-nav {
	position: absolute;
	left: 0;
	right: 0;
	width: 100%;
	top: 50%;
	transform: translateY(-50%) !important;
	padding: 0 !important;
	z-index: 11 !important;
	text-align: center;
	outline: none !important;
}
.image-collage .tile .tns-controls button[data-controls] {
	background: transparent;
	padding: .75rem !important;
	margin: 0rem 1rem !important;
	border-radius: 100% !important;
}
.image-collage .tile .tns-controls button[data-controls]:hover,
.image-collage .tile .tns-controls button[data-controls]:focus,
.image-collage .tile .tns-controls button[data-controls]:active {
	background: var(--white);
}
.image-collage .tile button[data-controls] icon {
	width: .75em !important;
	height: .75em !important;
}
.image-collage .tile button[data-controls] icon svg * {
	stroke: var(--white) !important;
	stroke-width: 4;
}
.image-collage .tile button[data-controls]:hover icon svg *,
.image-collage .tile button[data-controls]:focus icon svg *,
.image-collage .tile button[data-controls]:active icon svg * {
	stroke: var(--black) !important;
	stroke-width: 4;

}
.image-collage .tile .tns-controls button[data-controls="prev"],
.image-collage .tile .tns-controls button[data-controls="next"] {
	transform: translateY(-50%) translateX(0) !important;
}



.card {
	color: var(--grey-dk);
	border-radius: var(--radius) !important;
}
.card .card-header {
	border-radius: -webkit-calc(var(--radius) - 1px) -webkit-calc(var(--radius) - 1px) 0 0;
	border-radius: calc(var(--radius) - 1px) calc(var(--radius) - 1px) 0 0;
	padding-bottom: 50%;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}
.card .card-content {
	border-radius: 0 0 -webkit-calc(var(--radius) - 1px) -webkit-calc(var(--radius) - 1px);
	border-radius: 0 0 calc(var(--radius) - 1px) calc(var(--radius) - 1px);
	padding: 2rem;
}

.section.black {
	background: #001684!important;
}
.section.grey label.fancy-checkbox, .section.grey label.fancy-checkbox a, .section.grey label, .section.grey .help-block {
	color: white!important;
}

header {
	background: #001684;
}

.section.white h2 {
	color: #EF3382!important;
}
.section.grey {
	background: #001684;
}
.section.grey h2 {
	color: #E6FD7B!important;
}
.section.grey p {
	color: white!important;
}

.card .card-content p {
	color: black!important;
}

.modal .card.active .card-content p {
	color: white!important;
}

.btn-pink {
	background: #EF3382!important;
	border-color: #EF3382!important;
	color: white!important;
	border-radius: 99999px!important;
	margin-top: 20px!important;
}
.btn-yellow {
	background: #E6FD7B!important;
	border-color: #E6FD7B!important;
	color: black!important;
	border-radius: 99999px!important;
	margin-top: 20px!important;
}

.btn {
	border-radius: 9999px!important;
}


.section .speaker.attendee .images .logo {
	padding-bottom: 100%;
}

.section .speaker.attendee .images .logo img {
	padding: 1rem;
}
.section .speaker.attendee .speaker-name {
	margin: 0 !important;
}
.section .speaker.attendee .speaker-title {
	text-transform: uppercase;
	font-size: .7rem;
	color: vaR(--yellow);
	width: 100%;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	letter-spacing: .05em;
	font-weight: 700;
}

.section .attendee-container {
	border-radius: var(--radius);
	padding: 1rem;
	background: var(--white);
	position: relative;
}
.section .speaker.attendee .label {
	background: var(--yellow);
	font-size: .9rem;
	min-width: 2rem;
	text-align: center !important;
	padding: .25em .5em;
	border-radius: 1em;
	font-weight: 900 !important;
	position: absolute;
	top: .5rem;
	right: .5rem;
	z-index: 999;
	line-height: 1em;
}
.section .attendee-container .speaker.attendee,
.section .attendee-container .speaker.attendee p:last-child {
	margin: 0 !important;
}

@media(max-width: 991px) {
	.row > div:not(:nth-child(1)) > .card {
		margin-top: 2rem;
	}
}