/*================
Events single css.
================*/

/* Fonts */
.event-main-header {
	font-size: 5.6rem;
	font-weight: 700;
	line-height: 1.4em;	
}

.event-main-slogan {
	font-size: 2.4rem;
	line-height: 1.4em;
}

.event-main-date {
	font-size: 2.4rem;
	line-height: 1.4em;
	font-weight: 700;
	margin-bottom: 40px;
}

.event-main-register {
	font-size: 2.4rem;
	line-height: 1.4em;
	font-weight: 600;
}

.event-page-header {
	font-size: 4.8rem;
	font-weight: 700;
	line-height: 1.4em;
	margin-bottom: 20px;
}

.event-sub-header {
	font-size: 3.6rem;
	line-height: 1.4em;
	margin-bottom: 10px;
}

/*Setup classes*/

.custom-background {
	background-color: #404040;
	color: #fff;
	padding:40px;
}

.events-section {
	padding-top:20px;
	padding-bottom:20px;
}

.events-section.full-width-background {
	padding-top:50px;
	padding-bottom:50px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

.events-section:last-child {
	padding-bottom:50px;
}

.site-section {
	margin-top: 0;
	margin-bottom: 0;
	padding-top: 0;
	padding-bottom: 0;
}

.events-hero {
	padding:0;
	height: calc(100vh - 105px);
}

.sm-size .events-hero {
	padding:20px;
	height: calc(100vh - 50px);
}

.events-hero .container {
	padding:0;
}

.events-hero h1{
	line-height: 1em;
}

.events-hero .cotnainer > div {
	margin:0 0 10px 0;
}

.events-hero .slogan {
	margin-bottom: 20px;
}

.events-hero .register-button {
	margin:0 0 40px 0;
}

.events-hero .background-image {
	background-position: center;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-size: cover;
	background-repeat: no-repeat;
	z-index: -1;
}

.register-button {
	padding:20px 35px;
	border-radius: 35px;
	text-align: center;
	background-color: #999;
	color: #fff;
	display: inline-block;
	line-height: 1em;
	margin:30px 0;
	border:2px solid #999;
}

.sticky-nav-container {
  flex-wrap: wrap;
}

/*end setup*/

.event-supernav-container {
  display: none;
}

.main-nav .event-supernav {
	background-color: #fff;
	border:none;
  width: 100%;
}

#sticky-nav .event-supernav {
	border-top: 1px solid #d8d8d8;
}

.main-nav .event-supernav h2 {
  min-width: 200px;
	font-size: 1.6rem;
	line-height: 1em;
	font-weight: 700;
	border-left: 15px solid #000;
	padding:0 30px 0 15px;
}

.main-nav .event-supernav li {
  margin:0;
  padding:10px 0;
  position: static;
  border-bottom: 0;
}

.main-nav .event-supernav li a {
	display: block;
	padding: 3px 0;
  margin:0;
  width: 100%;
	text-align: center;
	border-left: 1px solid #000;
	font-size: 1.6rem;
	text-transform:capitalize;
	position: relative;
	z-index: 10;
}

.main-nav .event-supernav li:last-child a {
  border-right: none;
}

.main-nav .event-supernav li:hover {
  border-bottom: 0;
  border-bottom-color:transparent;
}

.main-nav .event-supernav li.register {
	height: 100%;
	padding:0;
}

.main-nav .event-supernav li.register a {
	display: flex;
	align-items: center;
	align-content: center;
	justify-content: center;
	height: 100%;
	background-color: #000;
	color: #fff;
}

.main-nav .event-supernav .contact-button {
	cursor: pointer;
	position: relative;
	z-index: 10;
	font-size: 16px;
}

.main-nav .event-supernav .contact-dropdown {
	padding:20px;
	position: absolute;
	top: -200%;
	right: 0;
	width: 100%;
	max-width: 200px;
	min-width: 520px;
	opacity: 0;
	transition: top 0.5s, opacity 0.3s;
	pointer-events: none;
	z-index: -10;
	font-size: 16px;
	text-transform: none;
	color: #ffffff;
}

.main-nav .event-supernav .contact-dropdown a {
	display: inline;
	border:none;
	padding:0;
	text-transform: none;
}

.main-nav .event-supernav .contact-dropdown.active {
	top: 100%;
	opacity: 1;
	z-index: 1;
	pointer-events: all;
}

.main-nav .event-supernav .contact-dropdown li {
	display: block;
	color: #fff;
	line-height: 1.2em;
}

.main-nav .event-supernav .contact-dropdown li:not(:last-child) {
	margin-bottom: 5px;
}

.events-navigation {
	max-width: 650px;
	margin:0 auto;
}

.events-navigation ul {
	display: block;
	font-size: 0;
}

.events-navigation ul.row li {
	display: inline-block;
	margin-bottom: 10px;
	padding-left: 5px;
	padding-right: 5px;
}

.events-navigation ul li a {
	display: block;
	border:1px solid #000;
	font-size: 18px;
	font-weight: 600;
	padding:15px 20px;
	text-transform: uppercase;
}

.image-slideshow img{
	width: 100%;
}

.image-slideshow .custom-pager {
	display:block;
	position:static;	
	font-size: 0;
	width: auto;
	padding-top: 10px;
	margin:0 -5px;
}

.image-slideshow .custom-pager a {
	display: inline-block;
	padding: 5px;
}

.image-slideshow .custom-pager a img {
	width: 100%;
}

.static-images img {
	padding-bottom: 30px;
	align-self: start;
}

.keynote-speaker .keynote-background {
	padding:30px;
}

.keynote-speaker .keynote-name {
	font-weight: 500;
	margin:0;

}

.keynote-speaker .image {
	max-width: 27%;
	padding-right: 30px;
}

.keynote-speaker .article-format {
	max-width: 65%;
}

.column-blocks header {
	margin:10px 0;
}

/*agenda block*/
.agenda-list h3 {
	margin-bottom: 32px;
}

.agenda-list .toggle-heading {
	border-bottom: 1px solid #fff;
	margin-bottom: 20px;
	font-size: 2.4rem;
}

.agenda-list .toggle-heading > div {
	display: inline-block;
	padding:16px 20px;
	cursor: pointer;
}

.agenda-list .toggle-heading > div:first-child {
	padding-left: 0;
}

.agenda-list .toggle-heading > div:last-child {
	padding-right:0;
	float: right;
}

.agenda-list .toggle-heading > div.active {
	border-bottom: 8px solid #fff;
}
.agenda-list .list-container article {
	position: absolute;
	top: 0;
	left: 0;
	display: none;
}

.agenda-list .list-container article.active{
	position: static;
	display: block !important;
}

.agenda-list li {
	border-bottom: 1px solid #979797;
}

.agenda-list li:last-child {
	border-bottom: none;
}

.agenda-list li:last-child .agenda-time,
.agenda-list li:last-child .agenda-details{
	padding-bottom: 0;
	border-bottom: none;
}

.agenda-list .agenda-time {
	max-width: 19%;
	padding:20px 40px 20px 0;
}

.agenda-list .agenda-details {
	padding:20px 20px 20px 60px;
	max-width: 80%;
	border-left: 1px solid #979797;
}

.agenda-list li:first-child .agenda-time,
.agenda-list li:first-child .agenda-details {
	padding-top: 0;
}

/*copy-paste fixing*/
.agenda-list .agenda-details .agenda-details {
	padding:0;
	width: 100%;
	flex: 100%;
	border: none;
}

.agenda-list .toggle-heading .print-icon:before {
	font: var(--fa-font-solid);
	content: '\f02f';
	display: inline-block;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	font-weight: 900;
	padding-right: 10px;
	font-weight: 300;
}

.registration-section .pricing {
	margin:40px 0 5px 0;
}

.registration-section .registration-text > div:first-child {
	margin-bottom: 20px;
}

.image-text-section .image-container {
	padding-right: 40px;
}

.image-text-section .text-container {
	padding-left: 40px;
}

.image-text-section .subhead {
	margin-bottom: 30px;
	font-size: 2.4rem;
	line-height: 1.4em;
}

.speakers-section {
	overflow-x: hidden;
}

.speakers-list li {
	margin-bottom: 30px;
	max-width: 20%;
	flex: 20%;
	width: 20%;
}

.speakers-list li.active {
	margin-bottom: 360px;
}

.speakers-list img {
	display: block;
	width: 100%;
	max-height: 290px;
	cursor: pointer;
}

.speakers-list .fa-xmark {
	position: absolute;
	font-size: 2.7rem;
	top: 10px;
	right: 15px;
	cursor: pointer;
}

.speakers-list .text-container {
	padding:10px;
	min-height: 130px;
	background-color: #2F2F2F;
	color: #fff;
}

.speakers-list .text-container .speaker-name {
	font-size: 1.7rem;
	font-weight: 700;
	line-height: 1.4em;
}

.speakers-list .text-container .speaker-title {
	font-size: 1.3rem;
	font-weight: 600;
	line-height: 1.4em;
}

.speakers-list .speaker-bio {
	border-radius: 15px;
	padding:40px;
	height: 300px;
	position: absolute;
	bottom: -330px;
	right: 15px;
	width: 100%;
	display: none;
	background-color: #2F2F2F;
	color: #fff;
}

.speakers-list .speaker-bio .speaker-name {
	font-size: 2.8rem;
	line-height: 1.4em;
	font-weight: 700;
}

.speakers-list .speaker-bio .speaker-title {
	font-size: 1.6rem;
	line-height: 1.4em;
	font-weight: 600;
}

.speakers-list .speaker-bio div {
	max-height: 100%;
	height: 100%;
	overflow-y: hidden;
}

.speakers-list .speaker-bio .bio-text {
	max-height: 100%;
	height: 100%;
	padding-right: 20px;
	overflow-y: scroll;
}

.speakers-list .speaker-bio .info div {
	height: auto;
	min-height: auto;
	margin-bottom: 10px;
}

.speakers-list li.active:after {
	font: var(--fa-font-solid);
	content: '\f0d8';
	display: inline-block;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	font-weight: 900;
	width: calc(100% - 30px);
	text-align: center;
	position: absolute;
	bottom: -33px;
	font-size: 60px;
	line-height: 0;
}

.speakers-list li[data-position="1"] .bio-container {
	left: calc(-100% + -15px);
}
.speakers-list li[data-position="2"] .bio-container {
	left: calc(-200% + -15px * 2);
}
.speakers-list li[data-position="3"] .bio-container {
	left: calc(-300% + -15px * 3);
}
.speakers-list li[data-position="4"] .bio-container {
	left: calc(-400% + -15px * 4);
}

.speakers-list li.active .speaker-bio {
	display: block;
}

.sponsors-section .article-format {
	font-size: 2.4rem;
	line-height: 1.4em;
}

.sponsors-section .article-format .sponsor-contact {
	font-size: 1.6rem;
	line-height: 1.6em;
	margin-top: 20px;
}

.sponsors-section .sponsor-blocks {
	margin-top:40px;
	margin-bottom: 20px;
}

.sponsors-section .sponsor-image {
	padding-bottom: 30px;
}

.sponsors-section .sponsor-image img {
	max-width: 100%;
	max-height: 100%;
	width: 100%;
}

/* registration block */
.registration-content-section,
.registration-content-section .article-format {
	font-size: 2.4rem;
}

.registration-content-section .article-format .sub-text {
	font-size: 1.6rem;
}

/*Vanue block*/

.venue-section .venue-location {
	font-size: 2.4rem;
	line-height: 1.2em;
	font-weight: 700;
	margin-bottom: 20px;
}

.venue-section .venue-location .venue-address,
.venue-section .venue-blurb {
	font-size: 1.8rem;
	line-height: 1.6em;
	font-weight: 400;
}
.venue-section .venue-alert .alert-header {
	margin-top: 20px;
	font-style: normal;
}

.venue-section .venue-alert .alert-header .red-line {
	height: 3px;
	background-color: #FF0000;
	border:none;
	outline: none;
	width: 100%;
}

.venue-section .venue-alert {
	font-size: 1.6rem;
	line-height: 1.6em;
	font-style: italic;
}

.venue-section .venue-alert .alert-header  div {
	display: block;
	padding:5px;
	font-weight: 600;
}

.venue-section .venue-alert p {
	margin:0;
}

/* photos */

.photos-section ul {
	margin-left:-5px;
	margin-right:-5px;
}

.photos-section .image {
	padding: 5px;
}

.event-gallery .fancybox-nav {
	display: flex;
	align-items: center;
	align-content: center;
}

.event-gallery .fancybox-title-float-wrap .child {
	margin:0;
	white-space:normal;
	font-size:12px;
	line-height:18px;
	font-style:italic;
	font-weight:normal;
	padding:7px 20px;
	background: #000000;
	color: #ffffff;
	text-shadow: none;
}
.event-gallery .fancybox-title-float-wrap {
	right:0;
	position:static;
	background-color:#000;
}
.event-gallery .fancybox-nav .far {
	color: rgba(74, 74, 74, 0.2);
	font-size: 70px;
	position: absolute;
	transition: color 0.5s ease;
}

.event-gallery .fancybox-nav:hover .far {
    color: #4a4a4a;
}

.event-gallery .fancybox-nav.fancybox-prev {
    left: -50px;
    text-align: center;
}

.event-gallery .fancybox-nav.fancybox-next {
    right: -50px;
    text-align: center;
}

.event-gallery .fancybox-nav.fancybox-prev .far {
    left: 0;
    text-align: center;
}

.event-gallery .fancybox-nav.fancybox-next .far {
    right: 0;
    text-align: center;
}


.event-gallery .fancybox-close {
    cursor: pointer;
    height: 36px;
    position: absolute;
    right: -50px;
    text-align: center;
    top: -20px;
    width: 36px;
    z-index: 8040;
    padding-left: 10px;
}
.event-gallery .fancybox-close .fa {
	position:static;
	font-size:30px;
	color:#000;
}
.event-gallery .gallery-social {
	position:absolute;
	top:0;
	left:0;
	font-size:20px;
	padding:10px;
	z-index:8140;
}


/* faq */

.faq-block dt div:first-child {
	margin-bottom: 10px;
}

.faq-block dt {
	font-size: 1.8rem;
	line-height: 1.6em;
	margin-bottom: 25px;
}


/* advisory board */

.advisory-block dt div:first-child {
	margin-bottom: 0;
}

.advisory-block dt {
	font-size: 1.8rem;
	line-height: 1.6em;
	margin-bottom: 25px;
}


/*countdown styles*/
.countdown-style-one {
	background-color: #EEEEEE;
	color: #231F20;
	text-align: center;
	padding:30px;
	margin-bottom: 20px;
}

.countdown-style-one h2 {
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1em;
	padding: 15px 0;
	text-transform: uppercase;
}

.countdown-style-one .time-block {
	text-align: center;
	line-height: 1em;
}

.countdown-style-one .time-block .text {
	padding:10px 0;
	font-size: 1.6rem;
	line-height: 1em;
	font-weight: 600;
}

.countdown-style-one .time-block span {
	font-size: 4.0rem;
	line-height: 1em;
	font-weight: 600;
	display: block;
}

.countdown-style-one .time-block .padding {
	padding:15px;
	background-color: #fff;
	border-radius: 15px;
	border:1px solid transparent;
}

.countdown-style-one .time-block .line,
.countdown-style-one .time-block .color {
	border-radius: 10px;
}

.countdown-style-one .time-block .line {
	width: 100%;
	height:5px;
	position: relative;
	background-color: #eee;
	overflow: hidden;
	margin-top: 10px;
}

.countdown-style-one .time-block .color {
	width: 50%;
	height:100%;
	position: absolute;
	left: 0;
	bottom: 0;
	background-color: #25A9E0;
}

/* video module */
.video-block .video-player {
	margin-bottom: 20px;
}

.video-block .video-player .video-title {
	margin-top: 10px;
}

.video-block .video-player .video-gallery-item {
	width: 100%;
	border: none;
	margin-bottom: 5px;
}

.video-block .video-gallery .video-gallery-item {
	margin-bottom: 15px;
}
/*mobile adjustments*/
.sm-size .main-header, .md-size .main-header {
	margin-bottom: 0;
}

/* Fonts */
.sm-size .event-main-header {
	font-size: 3.6rem;
	font-weight: 700;
	line-height: 1.4em;
}

.sm-size .event-main-slogan {
	font-size: 2rem;
	line-height: 1.4em;
}

.sm-size .event-main-date {
	font-size: 2rem;
	line-height: 1.4em;
	font-weight: 700;
}

.sm-size .event-main-register {
	font-size: 2.4rem;
	line-height: 1.4em;
	font-weight: 600;
}

.sm-size .event-page-header {
	font-size: 4.8rem;
	font-weight: 700;
	line-height: 1.4em;
	margin-bottom: 20px;
}

.sm-size .event-sub-header {
	font-size: 3.6rem;
	line-height: 1.4em;
	margin-bottom: 10px;
}

.sm-size .event-supernav-container {
	display: none;
}

.sm-size .register-button {
	padding:10px 20px;
}

.sm-size .custom-background {
	padding:20px;
}

/*countdown*/
html:is(.sm-size, .md-size) .countdown-style-one {
	margin:20px 0;
}

.sm-size .countdown-style-one h2 {
	font-size: 2.4rem;
}

.sm-size .countdown-style-one .time-block {
	margin-top: 10px;
	margin-bottom: 10px;
}

/*keynote speaker*/
.sm-size .keynote-speaker .image {
	display: none;
}

.sm-size .keynote-speaker .article-format{
	max-width: 100%;
}

/* workshops and activities */
.sm-size .column-blocks .column,
.md-size .column-blocks .column {
	margin-bottom: 30px;
}

/* Agenda */
.sm-size .agenda-list .toggle-heading > div {
	padding-left: 20px;
	margin-top: 12px;
	margin-bottom: 12px;
	width: 49%;
}

.sm-size .agenda-list .toggle-heading > div.print-icon {
	width:100%;
	padding-left: 0;
}

.sm-size .agenda-list .toggle-heading > div.active {
	border:none;
	background-color: rgba(0,0,0,0.3);
	border-radius: 10px;
}

.sm-size .agenda-list .agenda-time {
	width: 100%;
	max-width: 100%;
	flex: 100%;
}

.md-size .agenda-list .agenda-time {
	padding-right: 10px;
}


.sm-size .agenda-list .agenda-details {
	width: 100%;
	max-width: 100%;
	flex: 100%;
	border-left: none;
	padding-left: 0;
}

.md-size .agenda-list .agenda-details {
	padding-left: 10px;
}

.sm-size .agenda-list li:last-child .agenda-time, 
.sm-size .agenda-list li:last-child .agenda-details {
	padding-bottom: 20px;
}

/* image with text */ 
.sm-size .image-text-section .image-container {
	display: none;
}

.sm-size .image-text-section .text-container {
	padding-left: 0;
}

/* speakers */
.sm-size .speakers-list .bio-container {
	display: none !important;
}

.sm-size .speakers-list li {
	max-width: 50%;
	width: 50%;
	flex: 50%;
}

.sm-size .speakers-list li.active {
	margin-bottom: 30px;
}

.sm-size .speakers-list li.active:after {
	display: none;
}

.md-size .speakers-list .speaker-bio .bio-text {
	overflow-y: scroll;
}

/* faq */
.md-size .faq-block dl,
.sm-size .faq-block dl {
	max-height: 7000px !important;
}
