/* Add here all your CSS customizations */

/*Colors
Primary Blue: #015a9c
Dark Blue: #14385f
Yellow: #ffc629
Gray: #a3aaad
*/

body {font-family: "Roboto Condensed", Arial, sans-serif; font-weight: 500;}
h1,h2,h3,h4,h5,.breadcrumb,nav,.btn,.mobileMenu {font-family: "Montserrat", Arial, sans-serif;}

h1 {font-size: 2.4em!important; font-weight: 600!important; margin-bottom: 15px; color: var(--secondary);}
h2 {font-size: 1.8em!important; font-weight: 600!important; margin-top: 30px; margin-bottom: 15px; color: var(--primary);}
h3, h5 {text-transform: capitalize;}
.home h3, .home h5 {text-transform: uppercase;}
h3.pts {font-family: "PT Serif", Arial, sans-serif; font-size: 31pt; font-weight: 400; text-transform: capitalize; line-height: 34px;}
@media (max-width: 767px) { h3 {text-transform: uppercase;} }

.header-body.header-border-bottom {border-bottom: 40px solid rgba(1,90,156,0.95)!important;}
	.sticky-header-active .header-body.header-border-bottom {border-bottom-width: 10px!important;}

html body:not(.home) #header.header-transparent, html body.administration #header.header-transparent {position: relative; margin-bottom: 25px;}
	html body:not(.home) #header .header-logo img.logo-default,html body.administration #header .header-logo img.logo-default {max-height: 90px; width: auto;}
.administration .center-pane,.htmledit .center-pane {margin: 20px auto;}

body.administration .pageHeader,
body.memberlist .pageHeader {display: none;}

.btn {text-transform: uppercase;}
a.nav-link, a.dropdown-item {}
.box-content {text-align: left;}

@media (max-width: 991px) {
	.custom-hero-heading {line-height: 10vw;}
}
@media (max-width: 768px) {
	.custom-hero-heading {line-height: 12.5vw;}
}

/*Top Menu*/
@media (min-width: 992px) {
	#header .header-nav.header-nav-links:not(.header-nav-light-text) nav > ul > li > a, #header .header-nav.header-nav-line:not(.header-nav-light-text) nav > ul > li > a {
		color: var(--secondary) !important;
	}
	#header .header-nav.header-nav-line.header-nav-bottom-line.header-nav-bottom-line-active-text-dark nav > ul:not(:hover) li > a.active {
		color: var(--secondary) !important;
	}
	#header .header-nav.header-nav-line nav > ul:not(:hover) li > a.active:before {
		background: var(--tertiary);
	}
	#header .header-nav.header-nav-line nav > ul li:hover > a:before {
		background: var(--tertiary);
	}
	#header .header-nav.header-nav-force-light-text:not(.header-nav-force-light-text-active-skin-color) .header-nav-main nav > ul:not(:hover) > li > a.active,
	#header .header-nav.header-nav-force-light-text:not(.header-nav-force-light-text-active-skin-color) .header-nav-main nav > ul > li:hover > a {
		color: #82AFCF !important;
	}
	#header .header-nav-main nav > ul > li.dropdown .dropdown-menu li:hover > a {background-color: white!important;}
	#header .header-nav-main nav > ul > li > a {font-size: 14px;}
}

/*#header .header-nav-main nav > ul > li.dropdown {
	position: static;
}*/
/*li.dropdown {position: relative;}
li.dropdown:hover:after {
	content: "";
	height: 0;
	width: 0;
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
	border-bottom: 10px solid #fff;
	position: absolute;
	bottom: 6px;
	left: 50%;
	margin: 0 0 0 -5px;
	z-index: 100;
}*/
/*ul.dropdown-menu {
	-webkit-column-count: 3;
	-moz-column-count: 3;
	column-count: 3;
}
.dropdown-menu {
	padding: 20px 500px!important;
	border-radius: var(--border-radius) !important;
	left: 0 !important;
	right: 0 !important;
	width: auto !important;
	background-color: white;
}*/
.dropdown-menu > li {border: none;}	
.dropdown-menu > li > a {display: block; font-weight: bold!important; color: var(--primary)!important; font-size: 0.9em!important; padding-top: 8px!important; padding-bottom: 8px!important; border: none!important;}
.dropdown-menu > li > a.active,.dropdown-menu > li > a:hover {color: var(--secondary)!important;}

/*Mega Menu*/
.menuButton {position: absolute; top: 38px; right: 45px;}
	.menuButton a {border-color: var(--primary)!important;}
	.menuButton a:hover {text-decoration: none; border-color: var(--tertiary)!important;}

/*Mobile Menu*/
@media (max-width: 991px) {
	#header .header-nav-main {top: unset;}
		#header .header-nav-main:before {background: var(--primary);}
	ul.nav-pills > li > a.active {background-color: unset;}
}
@media (max-width: 350px) {
	.nav > li > a {padding: 10px;}
	.breadcrumb, .admin-crumb {display: none;}
}
.mobileMenu ul a {color: var(--light); text-transform: uppercase;}
	.mobileMenu ul a.active {color: #82AFCF!important;}
	.mobileMenu {top: 0;}

/*Home*/
.owl-dots {position: absolute; top: 430px; right: 20px; margin-top: 0!important;}
	.owl-dots .owl-dot span {width: 10px!important; height: 10px!important; background-color: transparent!important; border: 1px solid white;}
	.owl-dots .owl-dot.active span {background-color: white!important;}

/*Breadcrumbs*/
.breadcrumb {margin-top: 5px;}
.breadcrumb > li {text-transform: capitalize; font-size: 0.95em;}
.breadcrumb li a.active {font-weight: bold;}

/*Footer*/
.footer-stripes {
	background-color: #E9EBEA !important;
	background-image: linear-gradient(0deg, #f1f0f3 25%, #e8eaea 25%, #e8eaea 50%, #f1f0f3 50%, #f1f0f3 75%, #e8eaea 75%, #e8eaea 100%)!important;
	background-size: calc(50% - 180px) 180px!important;
	background-position: right 40px!important;
	background-repeat: repeat-y!important;
}
.btn-primary:hover, .btn-primary.hover {color: var(--tertiary);}
.joinNASEO {position: relative; z-index: 1;}
.joinNASEO {z-index: 1;}
	.joinNASEO div {z-index: 1;}
	.joinNASEO::after {
		content: "";
		position: absolute;
		top: 30%;
		right: -130px;
		width: 120%;
		height: 60px;
		background: #E9EBEA;
		-webkit-transform: rotate(-80deg);
		-moz-transform: rotate(-80deg);
		transform: rotate(-80deg);
		z-index: 0;
	}

/*Social Icons*/
.social-icons.social-icons-icon-primary li a {color: var(--primary) !important;}
.social-icons.social-icons-icon-primary li:hover a {color: var(--light) !important;}
.social-icons li:hover.social-icons-flickr a {background: #0867E6 !important;}

/*Accordions*/
.accordion .card-header {background: none!important;}
.accordion.accordion-modern-status > .card .card-header a {
	background-color: white;
	padding: 6px 20px;
	border: 2px solid var(--tertiary);
	border-bottom: none;
	border-top-left-radius: 8px;
	border-top-right-radius: 8px;
	color: var(--secondary);
}
.accordion .card-body {padding: 15px 20px;}

/*Affiliates*/
.portfolio-list .affiliate {height: 110px; line-height: 90px; padding: 10px; text-align: center; vertical-align: middle; overflow: hidden;}
.portfolio-list .affiliate:hover {border-color: var(--primary)!important;}
.portfolio-list .affiliate img {max-height: 90px;}

/*Publications*/
.sort-source.sort-source-style-3 > li.active > a,
.sort-source.sort-source-style-3 > li:hover > a {
	border-bottom: none!important;
	border-radius: 4px!important;
	color: var(--light)!important;
	background-color: var(--secondary)!important;
}

@media (min-width: 576px) {

}

@media (min-width: 768px) {
	
}

@media (min-width: 992px) {
	
}

@media (min-width: 1200px) {
	
}

@media (min-width: 1600px) {
	
}

/* Timeline */
section.timeline {margin-top: 20px!important;}
.timeline-left::before {left: 100px!important;}
	section.timeline.timeline-left .timeline-date {margin: 0 0 20px!important;}
		section.timeline.timeline-left .timeline-date-year:not(:first-child) {clear: both; padding-top: 50px;}
		section.timeline.timeline-left .timeline-date-month:not(:first-of-type) {clear: both; padding-top: 20px;}
	section.timeline.timeline-left .timeline-box {width: 85%!important; margin-top: 0!important; margin-bottom: 20px!important;}

/*Energy Meetings*/
.checkbox-custom {
	position: relative;
	padding: 0 0 0 25px;
	margin-bottom: 7px;
	margin-top: 0;
}
.checkbox-custom input[type="checkbox"] {
	opacity: 0;
	position: absolute;
	top: 50%;
	left: 3px;
	margin: -6px 0 0 0;
	z-index: 2;
	cursor: pointer;
}
.checkbox-custom label:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -9px;
	width: 19px;
	height: 18px;
	display: inline-block;
	border-radius: 2px;
	border: 1px solid #bbb;
	background: #fff;
}
.checkbox-custom input[type="checkbox"]:checked + label:after {
	position: absolute;
	display: inline-block;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	content: '\F00C';
	top: 50%;
	left: 4px;
	margin-top: -5px;
	font-size: 11px;
	line-height: 1;
	width: 16px;
	height: 16px;
	color: #333;
}

.mfp-iframe-holder .mfp-content {max-width: unset; max-height: 100%;}

/* Dynamic Expo Map */
.DynamicExpoMap {position: relative;}
.DynamicExpoMap a
{
	position: absolute;
	display: block;
	border: 1px black solid;
	vertical-align: middle;
	text-align: center;
	line-height: 32px;
	font-weight: normal;
	font-family: Arial;
	font-size: 16px;
	text-decoration: none;
}
a.booth
{
	background-color: white;
	color: black!important;
	text-decoration: none;
}
a.boothreserved,a.boothreserved:hover
{
	background-color: #cccccc;
	color: black!important;
	text-decoration: none;
}
a.yourbooth,a.yourbooth:hover
{
	background-color: #8DC740;
	color: white!important;
	text-decoration: none;
}
a.booth:hover, a.boothselected, a.boothselected:hover
{
	background-color: #1F87BC;
	color: white!important;
	text-decoration: none;
}

/*Agenda*/
.agenda {clear: both;}
	.agenda .date {
		display: block;
		margin: 0 0 15px;
		padding: 15px;
		border-radius: 2px;
		background-color: var(--secondary);
		color: white;
		text-align: center;
	}
	.agenda .dayofweek {display: block; text-transform: uppercase; margin-bottom: 5px;}
	.agenda .day {display: block; font-size: 48px;}
	.agenda .month {
		display: block;
		text-transform: uppercase;
		margin-top: 10px;
	}
	.agenda .session {
		margin: 0 0 20px;
		padding: 25px 15px;
		border: 1px solid #999999;
		/*box-shadow: #999999 2px 2px;*/
	}
		.agenda h3 {line-height: 24px;}
			.agenda .subsession h3 {font-size: 20px; line-height: 21px;}
		.agenda ul {list-style: square;}
		.agenda .when {
			display: block;
			margin: 0;
			padding: 10px 15px;
			border-radius: 2px;
			background-color: #005a9c;
			color: white;
		}
			.agenda .when.highlight {background-color: #3e80b3;}
			.agenda .subsession .when {background-color: #afb0b2;}
		.agenda .location {
			display: block;
			margin-top: 15px;
			color: #5a5c5d;
			text-align: right;
		}
	.agenda .presenterpanel {
		margin: 20px 0;
		clear: both;
	}
	.agenda .position, .agenda .presentationheading {
		font-weight: bold;
	}
	.agenda ul.presenters {
		margin: 5px 0 0;
		padding: 0;
		list-style: none;
	}
		.agenda ul.presenters img {
			float: left;
			margin: 0 10px 10px 0;
			object-fit: cover;
			width: 50px;
			height: 50px;
		}
	.agenda .presenterpanel-text ul.presenters {
		margin: 0 0 10px;
		padding: 0;
		list-style: none;
	}
		#content .agenda .presenterpanel-text ul.presenters li {
			margin: 0;
			padding: 0;
			list-style: none;
		}
	.agenda .presentationPanel ul.presentations {
		margin: 0 0 10px;
		padding: 0;
		list-style: none;
	}
		#content .agenda .presentationPanel ul.presentations li {
			margin: 0;
			padding: 0;
			list-style: none;
		}
	.agenda .sponsorpanel {
		margin: 20px 0;
		clear: both;
	}
	.agenda ul.sponsors {
		margin: 5px 0 0;
		padding: 0;
		list-style: none;
	}
		.agenda ul.sponsors img {
			float: left;
			margin: 0 10px 10px 0;
			max-height: 100px;
		}
	.agenda .session-description ul,.agenda .session-description li {list-style: square;}
		.agenda .session-description ul {margin-left: 30px;}
		.agenda .session-description li {margin-bottom: 10px;}

/* Sponsor Logos */
#sponsor-logos {margin: 0; padding: 0;}
	#sponsor-logos ul {margin: 0; padding: 0;}
	#sponsor-logos li {
		list-style: none;
		float: left;
		width: 212px;
		height: 123px;
		line-height: 100px;
		/*width: 120px;
		height: 60px;
		line-height: 60px;*/
		margin: 0 10px 10px 0;
		padding: 10px;
		border: 1px solid #d8e5ef;
		text-align: center;
		vertical-align: middle;
		overflow: hidden;
	}
		#sponsor-logos li:hover {border-color: #1064a2;}
		#sponsor-logos li img {
			vertical-align: middle;
			text-align: center;
			width: auto;
			max-width: 95%;
			height: auto;
			max-height: 100%;
		}

/*Mojo*/
.moduletitle {margin-bottom: 1.2em;}

.settingrow .settinglabel:empty {width: 0; margin: 0;}

.moduleadmin .AspNet-DataList-Item,
.moduleadmin .AspNet-DataList-Alternate {padding: 5px 15px;}
.moduleadmin .AspNet-DataList-Item span,
.moduleadmin .AspNet-DataList-Alternate span {
	display: inline-block;
	width: 250px !important;
}
.moduleadmin .AspNet-DataList-Alternate {background-color: var(--grey-100);}

.searchcontrols {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	width: 100%;
	margin-bottom: 40px;
}
	.searchcontrols > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
		margin-left: calc(var(--bs-border-width) * -1);
		border-top-left-radius: 0;
		border-bottom-left-radius: 0;
	}
	.searchcontrols:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3),
	.searchcontrols:not(.has-validation) > .form-floating:not(:last-child) > .form-control,
	.searchcontrols:not(.has-validation) > .form-floating:not(:last-child) > .form-select, .searchcontrols:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating) {
		border-top-right-radius: 0;
		border-bottom-right-radius: 0;
	}
	.searchcontrols .form-control {height: auto;}
	.searchcontrols > .form-control, .searchcontrols > .form-floating, .searchcontrols > .form-select {
		position: relative;
		flex: 1 1 auto;
		width: 1%;
		min-width: 0;
	}
	.searchcontrols .mhelp {display: none; order: 6;}
	.searchcontrols #ctl00_mainContent_ddFeatureList {display: none;}
	.searchcontrols .searchduration {display: none;}
	.searchcontrols .btn {background-color: var(--primary); color: var(--light);}
.add-mapping {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	width: 100%;
	margin-bottom: 40px;
}
	.add-mapping > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
		margin-left: calc(var(--bs-border-width) * -1);
		border-top-left-radius: 0;
		border-bottom-left-radius: 0;
	}
	.add-mapping:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3),
	.add-mapping:not(.has-validation) > .form-floating:not(:last-child) > .form-control,
	.add-mapping:not(.has-validation) > .form-floating:not(:last-child) > .form-select, .searchcontrols:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating) {
		border-top-right-radius: 0;
		border-bottom-right-radius: 0;
	}
	.add-mapping .form-control {height: auto;}
	.add-mapping > .form-control, .add-mapping > .form-floating, .add-mapping > .form-select {
		position: relative;
		flex: 1 1 auto;
		width: 1%;
		min-width: 0;
	}
.settingrow {position: relative;}
.help-block {font-size: 0.8em;}
.form-control + a.mhelp, .form-select + a.mhelp {
	position: absolute;
	top: 8px;
	right: 0;
}
h3.setting-section-title {margin-top: 18px; margin-bottom: 5px; font-size: 18px; color: var(--default);}
input[type=checkbox].form-control{
	display: inline-block;
	width: auto;
	appearance: auto;
	-moz-appearance: auto;
	-webkit-appearance: auto;
}
.admin-drawer__list-icon.fa-stack {height: 1em;}