 /************************************************

  >>   Coded By:   Karen McCullough - NSF International
  >>   Website:   http://www.legionellaconference.org



	TABLE OF CONTENTS
*************************************************/
/*
	1: Grid - modified version of the Skeleton grid
	2: Base Styles - include base reset of elements and single element selectors along with typograhpy, links, buttons, forms and lists.
	3: Modules - reusable parts of the design, including the header and footer, cards, callouts, etc.
	4: Pages - some specific page adjustments - try to avoid styling for a specific page unless absolutely necessary
	5: State Rules - mostly css animations and css rules for javascript and states such as hidden, visible, expanded, etc.
	6: Media Queries
	7: Print Styles
	
*/





/*======================================

/*==============================================/  
	
	1: Grid
	
=============================================

Karen McCullough Modified from Skeleton: /*
* Skeleton V2.0.4
* Copyright 2014, Dave Gamache
* www.getskeleton.com
* Free to use under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
* 12/29/2014
*/




.container {
  position: relative;
  width: 100%;
  max-width: 1366px;
  margin: 0 auto;
  box-sizing: border-box; }
.column,
.columns {
  box-sizing: border-box;
  margin-left: 4%;
  width: 100%;
}



.container--small {
 max-width: 960px;
 padding: 2rem;
}
.container--large {
 padding: 0 0 2rem 0;
}

.one-half {
  width: 50%;
}

.five.no-left-margin {
 margin-left: 0;
}



/*==============================================/  
	
	2: Base Styles
	
==============================================*/


/* NOTE
html is set to 62.5% so that all the REM measurements throughout 
are based on 10px sizing. So basically 1.5rem = 15px :) */


*, *::after, *::before {
  box-sizing: border-box;
}
html {
  font-size: 62.5%;
}
body {
  background: #fff;
  color: #4c4c4e;
  font-display: optional;
  font-family: "Roboto", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
  /*font-size: 1.6em;  currently ems cause chrome bug misinterpreting rems on body element */
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.5;
  margin: 0;
  }

header,
main {
  background: #fff;
}
main {
  margin: 0 auto;
  overflow: auto;
}
figure {
  margin: 0;
}
figcaption {
  color:  #888;
  font-size: 1.2rem;
  margin: 1rem 0;  
}

section + section {
 margin-top: 4rem;
}

/* Fonts
------------------------------------------------- */

/* roboto-regular - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/roboto-v18-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Roboto'), local('Roboto-Regular'),
       url('../fonts/roboto-v18-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v18-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v18-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v18-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v18-latin-regular.svg#Roboto') format('svg'); /* Legacy iOS */
       font-display: swap;
       
}

/* roboto-italic - latin */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/roboto-v18-latin-italic.eot'); /* IE9 Compat Modes */
  src: local('Roboto Italic'), local('Roboto-Italic'),
       url('../fonts/roboto-v18-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v18-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v18-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v18-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v18-latin-italic.svg#Roboto') format('svg'); /* Legacy iOS */
       font-display: swap;
}

/* roboto-500 - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/roboto-v18-latin-500.eot'); /* IE9 Compat Modes */
  src: local('Roboto Medium'), local('Roboto-Medium'),
       url('../fonts/roboto-v18-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v18-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v18-latin-500.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v18-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v18-latin-500.svg#Roboto') format('svg'); /* Legacy iOS */
       font-display: swap;
}

/* roboto-700 - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/roboto-v18-latin-700.eot'); /* IE9 Compat Modes */
  src: local('Roboto Bold'), local('Roboto-Bold'),
       url('../fonts/roboto-v18-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v18-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v18-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v18-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v18-latin-700.svg#Roboto') format('svg'); /* Legacy iOS */
       font-display: swap;
}

/* oswald-regular - latin */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/oswald-v16-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Oswald Regular'), local('Oswald-Regular'),
       url('../fonts/oswald-v16-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/oswald-v16-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/oswald-v16-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/oswald-v16-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/oswald-v16-latin-regular.svg#Oswald') format('svg'); /* Legacy iOS */
       font-display: swap;
}




/* Tables
–––––––––––––––––––––––––––––––––––––––––––––––––– */
table {
 border: 1px solid #d8dcdb;
  margin-bottom: 4rem;
}
tr {
  border-bottom: 1px solid #eaebec;
  vertical-align: top;
}
tr:nth-child(odd) {
  background: #eaebec;
}
thead tr:nth-child(odd) {
  background: #fff;
  border-bottom-width: 5px;
  border-top: 1px solid #d8dcdb;
}
th,
td {
  color: #4c4c4e;
  padding: 1rem;
}
caption {
 margin-bottom: 1rem;
 text-align: left;
}








/* Typography
–––––––––––––––––––––––––––––––––––––––––––––––––– */
h1, h2, h3, h4, h5, h6 {
  font-family: "Oswald", Arial, sans-serif;
  font-weight: 500;
  margin-top: 0;
  margin-bottom: 2rem;
  }
h1 {
  color: #fff;
  line-height: 1.2;
  }
h2 {
  color: #4c4c4e;
  font-family: "Roboto", Arial, sans-serif;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.25;
  }

h3 {
  color: #4c4c4e;
  font-family: "Roboto", Arial, sans-serif;
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 1.3;
  }
h4 {
  color: #4c4c4e;
  font-family: "Roboto", Arial, sans-serif;
  font-size: 2rem; 
  line-height: 1.35;
  }
h5 {
 color: #4c4c4e;
  font-family: "Roboto", Arial, sans-serif;
  font-size: 1.8rem;
  font-weight: normal;
  line-height: 1.5;
  }
h6 {
  font-size: 1.5rem;
  line-height: 1.6;
  }
strong {
  font-weight: 700;
 }
 blockquote {
  border-left: 5px solid #ebedec;
  margin: 4rem 4rem 4rem 2rem;
  padding-left: 1rem;
 }
 
 .note {
  font-size: 1.3rem;
 }
 
 .text--center {
  text-align: center;
 }
 
 .text--left {
  text-align: left;
 }
 .text--small-uppercase {
  text-transform: uppercase;
  font-size: 1.4rem;
  font-weight: normal;
 }




 

/* Links and Buttons
–––––––––––––––––––––––––––––––––––––––––––––––––– */
a {
  color: #005596;
  text-decoration: none;
}
a, button {  transition: all .6s;}
a:hover,
a:focus {
  color: #ec7a22;
}
  
a[rel="external"]:after,
.button:after,
.link--more:after,
.text--more:after,
nav .menu__parent-link:after,
.button--download:after,
.link--download:after {
  font-family: 'Font Awesome 5 Pro';
  font-weight: 900;
  margin: 0 .25rem 0 .5rem;
}
a[rel="external"]:after {
 content: '\f35d'; 
}

.button,
.link--more {
 background: #0177bc;
 color: #fff;
 display: inline-block;
 font-size: 1.8rem;
 padding: .75rem 1.5rem;
 text-align: center;
 transition: all .6s;
}
.button:hover,
.button:focus {
 background: #ec7a22;
 color: #fff;
}
.button--ghost {
 background: transparent;
 border: 1px solid #fff;
 color: #fff;
}

.button--ghost-dark {
 background: transparent;
 border: 1px solid #0177bc;
 color: #0177bc;
}
.button--ghost-dark:hover,
.button--ghost-dark:focus {
 background: transparent;
 border: 1px solid #ec7a22;
 color: #ec7a22;
}
.button__news-search {
  padding-right: 1.5rem;
 }
 .button__search-submit {
    border-radius: 0 5px 5px 0;
    border: 0;
    background: #888;
    color: #fff;
    display: inline-block;
    font-size: 1.6rem;
    outline: 0 none !important;
    padding: 1rem;
    padding-right: 1rem;
    vertical-align: top;
    white-space: nowrap;
}


.link--more:after,
.text--more:after {
 content: '\f101';
 margin: 0 0 0 .5rem;
}

.link--download:after {
 content: '\f0ab';
}
.link--fade:hover, .link--fade:focus {
    color: #fff;
    opacity: .8;
}



/* NAVIGATION */

#pull {
 margin-right: 2rem;
}

#global-nav {
    background: #fff;
    display: none;
    height: auto;
    transition: top 0.5s ease-in-out .s;
    width: 100%;
    z-index: 2;
}



.logo {
 margin-bottom: 0;
 overflow: auto;
 text-align: center;
}

.logo a {
 color: #4c4c4e;
 line-height: 1.2;
}
.logo__image,
.site__title-container {
 display: block;
}
.logo__image {
 border: none;
 margin: 1rem auto;
}

.site__title {
 font-size: 2.2rem;
}
.site__tagline {
 font-family: 'Roboto', 'Arial', sans-serif;
 font-size: 1.2rem;
 margin-top: .5rem;
}


nav {  
  background: #fff;
  position: relative;
  width: 100%;
}  
nav ul {
  margin: 0 auto;
  padding: 0;  
  width: auto;  
}
nav a, 
nav .current {
 background: #fff;
	box-sizing:border-box;
		-moz-box-sizing:border-box;  
		-webkit-box-sizing:border-box;
 color: #666;
 font-family: 'Roboto', 'Arial', sans-serif;
 font-weight: 400;
 display: block;
 line-height: 40px;
	padding: 0 .5em;
 width: auto;  
 text-decoration: none;
	transition: color .6s;
}
nav ul li:first-child > a {
 padding-left: 0;
}
nav .button--cta {
 border-bottom: none;
 line-height: 25px;
 margin-top: 0;
}
nav .button--cta:hover,
nav .button--cta:focus {
 border-bottom: none;
}
nav .current {
  color: #444;
}

nav .current  {    
  cursor: text;
  font-weight: 700;
}
nav a:hover,
nav a:focus,
nav a:hover:after,
nav a:focus:after {
  color: #ec7a22;
}
nav .button:hover:after,
nav .button:focus:after {
  color: #fff;
}
nav > ul li a {
    border-bottom: 5px solid transparent;
}

.menu__parent:hover,
.menu__parent:focus {
 cursor: pointer;
}
.menu__parent:hover a,
.menu__parent:focus a {
 background: #f1f2f2;
 border-bottom-color: #f1f2f2;
}
.menu__parent-link::after {
    color: #666;
    content: '\f0d7';
    font-weight: 900;
    line-height: 1.8rem;
    margin-left: 1rem;
}
.dropdown__content {
    display: none;
    left: 0;
    position: absolute;
    width: 100%;
    top: 45px;
    z-index: 1;
}
.menu__parent:hover ul,
nav .menu__parent:focus ul {
 background: #f1f2f2;
 display: block;
}



.breadcrumb-nav__container {
    background: #eaebec;
  }
  
		#breadcrumb-nav {
		  display: block;
		}
		.menu--breadcrumb {
		  background: #e9eaea;
		  color: #4c4c4e;
		  list-style: none;
		  margin: 0 auto;
		  overflow: auto;
		  padding: 1rem 0 1arem 2rem;
		}
		.menu--breadcrumb li {
		  float: left;
		  margin-right: 1rem;
		}
		.menu--breadcrumb li a:after {
		  color: #4c4c4e;
		  content: " >";
		  margin-left: 1rem;
		}
		.menu--breadcrumb .current {
		  color: #4c4c4e;
		  font-weight: 700;
		}
  
  #breadcrumb-nav .current {
    display: inline-block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
  
  
  /** Local navigation **/

#pull-local,
#pull-filter {
  display: none;
}

.nav__local-container {
  float: none;
  margin-left: 0;
  width: auto;
}
.nav__local,
.nav__local ul {
  list-style: none;
  margin: 0;
}
.nav__local a {
  padding: .5rem 0;
}
.current__section a {
  display: block;
  padding-left: 0;
}
.current__section strong {
  display: inline-block;
  font-weight: 700;
  padding-bottom: .5rem;
  width: 100%;
}
.nav__local-parent {
  position: relative;
}
.nav__local-parent li {
  padding-left: 2rem;
}
.nav__local-section {
  margin-bottom: 0;
}
.nav__local li:not(.current__section),
.current__section strong {
  border-bottom: 1px solid #d8dcdb;
}



.nav__local .current,
.nav__local li a:not(.current):hover,
.nav__local li a:focus,
.nav__local-parent a:not(.current):focus > a:before,
.nav__local-parent a:not(.current):hover > a:before {
  background: #888;
  color: #fff;
}
.nav__local .current {
  color: #444;
  font-weight: 700;
}
.nav__local .current:not(.nav__local-parent-link) {
  cursor: text;
}
.nav__local .current,
.nav__local-sub .current {
  color: #fff;
}
.nav__local-sub {
  border-top: 2px solid #fff;
}
.nav__local-sub li:last-child {
  border: none;
}
.nav__local-sub .current {
  font-weight: 700;
}





/* Forms
–––––––––––––––––––––––––––––––––––––––––––––––––– */

input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea,
select,
button {
  background-color: #fff;
  border: 1px solid #D1D1D1;
  box-shadow: none;
  box-sizing: border-box;
  color: #4c4c4e;  height: 46px;
  width: 100%;
  padding: 6px 10px; /* The 6px vertically centers text on FF, ignored by Webkit */
  }
select {
  font-size: 1.6rem;
  padding: 0 0 0 10px;
}
  
/* Removes awkward default styles on some inputs for iOS */
input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea,
button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
textarea {
 font-family: "Roboto", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
  min-height: 165px;
  padding-top: 6px;
  padding-bottom: 6px; }
input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
  border: 1px solid #33C3F0;
  outline: 0; }
input[type="submit"],
button {
 min-width: 150px;
	width: auto;
}
button:hover,
button:focus {
 cursor: pointer;
}
option {
  padding: 6px 10px; /* The 6px vertically centers text on FF, ignored by Webkit */
}
label,
legend {
  color: #666;
  display: block;
  font-weight: 400;
  margin-bottom: .5rem;
  text-align: left;
  }
fieldset {
  border-width: 0;
  padding: 0;
  }
input[type="checkbox"],
input[type="radio"] {
  display: inline; }
input[placeholder],
select[title] {
  color: #4c4c4e;
  font-size: 1.5rem;
}
form .four.columns:first-child {
  margin-left: 0;
  width: 30.6666666667%;
}

.radio,
.radio * {
 display: inline;
}
.radio__group:not(:first-of-type) .radio * {
 margin-top: 2rem;
}
.radio__group .radio:not(:first-of-type),
.input__other {
 margin-left: 1rem;
}
input[type="text"].input__other {
 width: 100px;
}

.error,
.asterisk {
	color: #ec7a22;
}
.error:not(label) {
	background: #fde5cd;
	border: 1px solid #ec7a22;
}
.error + .error {
 margin-top: .5rem;
}

#form__recaptcha {
    margin-top: 8rem;
    padding-top: 4rem;
}






/* Lists
–––––––––––––––––––––––––––––––––––––––––––––––––– */

ul {
  list-style: circle outside; }
ol {
  list-style: decimal outside; }
ol, ul {
  margin-top: 0;
  padding-left: 0;
  }
ul ul,
ul ol,
ol ol,
ol ul {
  margin: 1.5rem 0 1.5rem 3rem;
  } 
  
.list--bullet,
.list--number,
.list--alpha {
  list-style-position: outside;
  margin-left: 4rem;
}
.list--bullet {
 list-style: disc;
}
.list--alpha {
 list-style: lower-alpha;
}
.list--bullet li,
.list--alpha li {
 padding: .25rem 0;
}
.list--menu {
 list-style: none;
}

/* Clearing
–––––––––––––––––––––––––––––––––––––––––––––––––– */

/* Self Clearing Goodness */
.container:after,
.row:after {
  content: "";
  display: table;
  clear: both;
 }



/**
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    contenteditable attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that are clearfixed.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */
.clearfix:before,  
.clearfix:after {  
    content: " ";   /* 1 */
    display: table; /* 2 */  
}  
.clearfix:after,
.clear {  
    clear: both;  
}


/* Utilities and Helper Classes
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.u-full-width {
  box-sizing: border-box;
  width: 100%;
 }
.u-max-full-width {
  box-sizing: border-box;
  max-width: 100%;
}
.u-pull-left {
 float: left;
}
.u-pull-right {
 float: right;
}
.u-push-top {
 margin-top: 4rem;
}
.u-push-bottom {
 margin-bottom: 4rem;
}
.u-pad-top {
 padding-top: 4rem;
}
.u-pad-bottom {
 padding-bottom: 4rem;
}
.u-pad-left {
 padding-left: 4rem;
}
.u-pad-right {
 padding-right: 4rem;
}
.u-screen-reader {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
}
.u-overflow-auto {
  overflow: auto;
}
.u-margin--bottom-0 {
 margin-bottom: 0;
}

.display--inline-block {
 display: inline-block;
}
.display--block {
 display: block;
}
.position--relative {
 position: relative;
}

.pipe {
 margin: 0 .5rem;
}



.s-hidden {
  display: none;
}
.s-visible {
  display: block;
}

/** Icons **/
.icon:before {
  margin-right: .5rem;
}
.icon:before,
.icon:after {
  font-family: 'Font Awesome 5 Pro';
  font-weight: 900;
}
.icon--email:before {
  content: '\f2b6'; /* envelope icon */
  margin-right: 1rem;
}
.icon--search:before {
  content: '\f002'; /* magnifying glass icon */
}
.icon--document:before {
  content: '\f016';  /* document icon **/
}
.icon--training:before {
  content: '\f19d'; /* training icon **/
}
.icon--phone:before {
  content: '\f095'; /** phone icon **/
  margin-right: 1rem;  
}
.icon--twitter:before {
  font-family: 'Font Awesome 5 Brands';
  content: '\f099'; /** twitter icon **/
}
.icon--linkedin:before {
  font-family: 'Font Awesome 5 Brands';
  content: '\f0e1'; /** LI icon **/
  font-size: 3rem;
  margin-left: 1rem;
}
.icon--send:after {
  content: '\f1d8'; /** paper airplane icon **/
  margin-left: .5rem;
}
.icon--play:after {
  content: '\f144';
  margin-left: .5rem;
  
}
.icon--checkmark:after {
 content: '\f00c';
 color: #177bcc;
}

.icon--no-external[rel="external"]::after {
    content: none;
}

.border--bottom-dark {
 border-bottom: 1px solid #ccc;
}
.border--bottom-dark-thick {
 border-bottom: 10px solid #ccc;
}
.border--top-light {
 border-top: 1px solid #eaebec;
}
.border--bottom-light {
 border-bottom: 1px solid #eaebec;
}



.image--small {
 max-width: 100%;
 width: auto;
}

.display--table {
    display: table;
}
.display--table-caption {
    caption-side: bottom;
    display: table-caption;
    margin-bottom: 2rem;
}


/** Show/Hide Content for Agenda **/



.table__conference .table__td {
    background: #f1f2f2;
    font-size: 1.6rem;
}

.track {
 margin: 4rem 0 0 0;
 padding-left: 3rem;
}

.track__number {
 font-size: 1.8rem;
 position: absolute;
 top: -20px;
 left: 3.5rem;
}
 .track__one .table__td {
 background: #c4e0f5;
}
 .track__two .table__td {
 background: #c7e3ad;
}
 .track__three .table__td {
 background: #fec55a;
}
.link__show-all {
 margin-left: 3.5rem;
}

#tracks .content_show-hide {
    margin: 0;
    padding: 0;
}

#tracks .plus,
#tracks .minus {
  position: relative;
}

#tracks .plus::before,
#tracks .minus::before {
    color: #005596;
    content: '\f055';
    font-family: 'Font Awesome 5 Pro';
    font-weight: 900;
    position: absolute;
    left: 0;
}
#tracks .minus::before {
    content: '\f056';
}








/*==============================================/  
	
	3: Modules
	
============================================= */

/*** Header ***/


.banner__info {
 background: #eaebec;
 margin: 0 0 .75rem 0;
 padding: 1rem;
 text-align: center;
}

 

 /*** Callout areas ***/
 
.callout {
 background: #eaebec;
  padding: 3rem 0;
  text-align: center;
 }
 main + .callout {
  padding: 4rem 0;
 }
.callout--light {
  background: #c4e0f5;
  padding: 2rem 5rem;
 }
 .callout--light-alt {
  background: #eaebec;
 }
 .callout--light-alt2 {
    background: #fff;
}
 .callout--bright {
  background: #62a744;
  clear: both;
 }
.callout--bright a {
  color: #fff;
}
.callout--bright a:hover,
.callout--bright a:focus {
  border: 2px solid #fff;
}
 .callout--skinny {
  padding: .5rem 0;
 }
.callout--border-left {
 border-left: 5px solid #888;
}

.callout__heading {
   margin: 0 0 .5rem 0;
}
.callout__heading-link {
  color: #0177bc;
  font-family: "Oswald", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 4.3rem;
  font-weight: 400;
  line-height: 1;
 }
.callout__heading--large {
  font-size: 4.9rem;
 }
.callout__subtext {
  font-size: 2.1rem;
  line-height: 1.4;
  margin: .5rem 0 1rem 0;
}
.callout__subtext--large {
  font-size: 3.5rem;
}
.callout__button {
  border: 2px solid transparent;
  display: inline-block;
  line-height: 22px;
  margin-top: 2rem;
  padding: 1rem 2rem;
}
.callout__pipe {
 margin: 0 1rem;
}


#alert {
 background: #eaebec;
 border-top: 15px solid #ec7a22;
 display: block;
 padding: 2rem;
}
#alert.alert--bright {
 background: #0177bc;
 color: #fff;
 font-size: 1.4rem;
}
#alert.alert--bright a {
 color: #fff;
 text-decoration: underline;
}
#alert.alert--bright a:hover,
#alert.alert--bright a:focus {
 color: #c4e0f5;
 text-decoration: none;
}
#alert-heading {
 font-size: 1.8rem;
 margin-bottom: 0;
}
/*#alert p {
 border-left: 10px solid #ec7a22;
 padding-left: 20px;
}*/
.callout--urgent {
 vertical-align: middle;
}

/*** Cross Site Feature for March Special Session ****/


#cross-feature .img__wrap {
 flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
}
#cross-feature img {
  height: 100%;
  width: 100%;
  object-fit:cover;
}
#cross-feature .callout {
 max-width: 100%;
 padding: 1.75rem 0;
}
#cross-feature h4 {
 font-family: "Roboto", Arial, sans-serif;
 font-size: 2.2rem;
}



.text--new-highlight {
 text-transform: uppercase;
 font-size: 1.6rem;
 font-weight: bold;
 margin: 2rem 0 0 0;
}

.callout--urgent p {
 display: inline-block;
}
.callout--urgent .close {
  display: inline-block;
  font-size: 1.8rem;
  margin: 2rem;
  vertical-align: top;
 } 
.callout--urgent .close:after {
 content: '\f057';
 display: inline-block;
 font-size: 2rem;
 margin-left: 1rem;
 vertical-align: middle;
}

.callout--workshop {
 font-size: 1.8rem;
 font-weight: 500;
}

.keynote__heading {
 color: #ec7a22;
 font-size: 3rem;
 margin-bottom: 0;
}
.keynote__name {
 font-size: 2.4rem;
 margin-top: 0;
 }
 
 .main__text .keynote__inside {
  padding: 1rem 4rem;
 }


 #special-session h4 {
  margin: 1rem 0;
 }




/* Bios
-------------------------------------------- */
.bios {
 list-style: none;
 margin: 4rem 0 0 0;
 width: 100%;
}
.bio {
 margin: 0 0 2rem 0;
 text-align: center;
 vertical-align: top;
}
.bio:hover .bio__link-text,
.bio:focus .bio__link-text {
 color: #ec7a22;
}
.bio__image {
 transition: opacity .6s;
}
.bio:hover .bio__image,
.bio:focus .bio__image {
 opacity: .8;
}
.bio__name,
.bio__title {
 font-size: 1.4rem;
 margin: .5rem 0 0 0;
 transition: all .6s;
}
.bio__title {
 margin-top: 0;
}
.bio__image {
 border: none;
}

.abstract {
 background: #eaebec;
 padding: 4rem 4rem 3rem 4rem;
}



/* Photo Gallery
-------------------------------------------- */

.gallery {
 margin-left: 0;
}
.gallery__item {
 margin-bottom: 2rem;
 text-align: center;
 transition: opacity .6s;
 width: 100%;
}
.gallery__item:hover,
.gallery__item:focus {
 opacity: .8;
}
.gallery__image {
 border: none;
}





  /* Cards
---------------------------------------------
*/
  
  .flex__parent {
   display: flex;
   flex-direction: column;
   height: 100%;
  }
 
 .card {
  text-align: left;
  transition: all .6s;
 }
 .card:hover,
 .card:focus {
  box-shadow: 0px 0px 15px 0px rgba(136,136,136,1);  
 }
.column.card {
  border: 1px solid #ebedec;
  border-radius: 5px;
  display: inline-block;
  flex: 0 0 auto;
  margin: 0 0 4rem 0;
  min-width: 200px;
  max-width: 265px;
  position: relative;
  vertical-align: top;
 } 
.card__image {
  border-top: 20px solid #0177bc;
  border-right: none;
  border-bottom: none;
  border-left: none;
  border-radius: 5px 5px 0 0;
  height: auto;
  padding-top: 1px;
  transition: opacity .6s;
  width: 100%;
 }
 .border--none .card__image {
  border-top: none;
 }
 .card__image:hover,
 .card__image:focus {
  opacity: .8;
 }
 .card__date {
  background: #0177bc;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  border-radius: 0 5px 0 0;
  color: #fff;
  font-family: 'Archivo Narrow', 'Arial', sans-serif;
  font-size: 1.434rem;
  line-height: .95;
  margin-top: 0;
  padding: .5rem 1rem;
  position: absolute;
 	right: 0;
 	top: 0;
  text-transform: uppercase;
  width: 50px;
  z-index: 20;
 }
 .column.card__no-date {
  border-top: none;
 }
 .card__no-image .card__date {
	top: -20px;  
 }
.card__day {
  font-size: 2.56rem;
 }

.card__link-image:hover:before,
.card__link-image:focus:before  {
	color: #f57b07;
  }
.card__link-image {
  display: block;
  height: 126px;
}
.card__text {
  font-size: 1.5rem;
  line-height: 1.2;
  padding: 0 1.5rem 1.5rem 1.5rem;
  
  flex-grow: 1;
}
.card__category {
  color: #aaa;
  font-size: 1.31rem;
  margin: 0 0 .25rem 0;
}

.card__title {
  font-family: 'Archivo Narrow', 'Arial', sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.2;
}
.card__title-link {
    color: #4c4c4e;
}
.card__title-link:after {
 content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
}
.card__link-more {
  color: #005596;
  display: block;
  padding: 0.75rem;
  padding-top: 0.75rem;
  text-align: right;
  transition: all .6s;
  width: 90%;  
  
  align-self: flex-end;
  margin: 0 auto 1.5rem auto;  
}
.card:hover .card__link-more,
.card:focus .card__link-more {
  border-color: #ec7a22;
  color: #ec7a22;
}

.card__button, {
  display: inline-block;
}


/* video cards */
.card__video {
  position: relative;
}
 .card__video .card__date {
  background: #62a744;
 }
.card__video .card__link-image {
  border-radius: 5px 5px 0 0;
  border-top: 20px solid #62a744;
  max-height: 147px;
  position: relative;
 }
 
 /** create backround circle for play button **/
.card__video .card__link-image:after {
	background-color: #62a744;
	border: 3px solid #fff;
	border-radius: 50%;
	width: 5.2rem;
	height: 5.2rem;
	color: #fff;
	margin: 0;
	padding: 0;
	position: absolute;
	  top: 30%;
	  left: 40%;
	text-align: center;
    vertical-align: middle;
	z-index: 9; 
  }
  /** create arrow for play button **/
.card__video .card__link-image:after {
	color: #fff;
	content: '\f04b'; /* play button icon */
	font-family: 'Font Awesome 5 Pro';
	font-size: 2.8rem;
 font-weight: 900;
	margin: 0;
	padding: 2px 0 0 5px;
	text-align: center;
    vertical-align: middle;
	transition: all .6s;
	z-index: 10; 
}
  
.card__video .card__link-image:hover:after,
.card__video .card__link-image:focus:after {
  background: #F47B20;
  box-shadow: 2px 2px 3px rgba(0,0,0,.2);
}

/* event cards */
.card__event.card__no-image,
.card__event .card__link-image {
  border-radius: 5px 5px 0 0;
  border-top: 20px solid #f57b07;
}
.event__date,
.event__location {
  font-weight: 400;
  display: block;  
}

/** card no image ***/
.card__no-image .card__text {
  margin-top: 0;
}

/* article cards */

.results__item.card__no-image,
.card__pr.card__no-image {
  border-radius: 5px 5px 0 0;
  border-top: 20px solid #0177bc;
}

.card__article.card__no-image,
.card__article .card__link-image {
  border-top: 20px solid #005596;
}


/* press release cards with image */

.card__pr .card__link-image {
  border-radius: 5px 5px 0 0;
  border-top: 20px solid #b9b9ba;
  max-height: 147px;
  position: relative;
 }
 
 /*** Cards with only text (no icons or image) ***/

.card--text-only {
  margin: 0 0 1rem 0;
  padding: 2rem;
}


/* Twitter card */

.card__twitter {
    border-radius: 5px 5px 0 0;
}

#twitter {
  height: auto;
}
#twitter .card__title {
  background: #0072ce;
  border-radius: 5px 5px 0 0;
  padding: 1rem 2rem;
}
#twitter .card__title a:after {
    color: #fff;
  	content: '\f099'; /* twitter icon */
	font-family: 'Font Awesome 5 Brands';
	font-size: 3rem;
 font-weight: 900;
	position: absolute;
		right: 2rem;
		top: 1px;	
	vertical-align: middle;
}
.card__twitter a {
  color: #fff;
}


/** card links **/

.card .link__more:after,
.card .button:after {
	font-size: 1.5rem;
}


/* Homepage news cards (.news) and News and Events page cards (.news__cards)*/

/*** Homepage featured news ***/
.news--home {
  width: 100%;
}
.news__heading-content {
  line-height: 3;
  margin-bottom: 3rem;
  overflow: auto;
  text-align: center;
}
.news--home .column.card {
  background: #fff;
  display: inline-block;
  min-width: 180px;
  text-align: left;
  width: 100%;
}
.news--home .card__text {
  padding-top: .5rem;
}







/* Agenda
-------------------------------------------- */
.title--agenda {
 font-size: 1.8rem;
}
.table--agenda td {
 width: 33%;
}
.table--agenda th,
.table--agenda td {
 text-align: left;
 width: 40%;
}
.table--agenda th:first-child,
.table--agenda td:first-child {
 width: 10%;
}
.table--agenda th:nth-child(2),
.table--agenda td:nth-child(2) {
 width: 40%;
}
.agenda--caption {
 font-size: 1.8rem;
 font-weight: bold;
}

.agenda__location {
 font-size: 2.2rem;
}
.duration {
 font-size: 1.2rem;
 color: #888;
}
.duration:before {
 font-weight: normal;
 content: '\f2f2';
 display: inline-block;
 margin-right: .25rem;
}
.conference__panel td:first-child {
 border-left: 10px solid #dcddde;
}
.conference__panel__one td:first-child {
 border-left: 10px solid #005596;
}
.conference__panel__two td:first-child {
 border-left: 10px solid #008341;
}
.conference__panel__three td:first-child {
 border-left: 10px solid #fec55a;
}

/* Footer
--------------------------------------------- */

#mailing-list-cta {
 background: #5eaee0;
 border-top: 5px solid #fff;
 color: #fff;
 font-size: 1.8rem;
}

#mailing-list-cta .button--ghost {
 display: block;
 margin: 2rem auto;
 width: 200px;
}

footer {
  background: #fff;
  padding: 3rem 0;
  position: relative;
  text-align: center;
}
.menu--secondary {
 font-size: 1.2rem;
}

.menu__container {
  max-width: 1200px;
}
.menu__footer {
  float: left;
  font-size: 1.5rem;
  list-style: none;
}
.menu__utility {
  margin: 0;
}
footer .menu__footer-sub {
  display: none;
  margin: 0 0 1rem 1rem;  
}
#footer-bar__top {
 margin-bottom: 1rem;
}
#footer-bar__bottom {
 display: block;
 text-align: center;
}
footer {
 padding: 0 2rem;
}
footer .social {
 line-height: 1;
 margin: 2rem 0;
 }
footer .icon--twitter:before {
 font-size: 2.4rem;
}

footer #partner-logo {
 margin: 2rem 0;
}
 footer #partner-logo  p {
  margin-right: 2rem;
 }

.address {
  margin-top: 0;
}
.copyright {
  font-size: 1.2rem;
  margin-top: 0;
  width: auto;
}
.disclaimer {
  font-size: 1rem;
}

/*** Cookie Message ***/

.cookie-message-open #footer-main-content {
  margin-bottom: 20rem;
  display: none;
}
#cookie-container {
  background: #eee;
  border-top: 5px solid #62a744;
  clear: both;
  margin: 0 -5rem;
  padding: 2rem;
  position: fixed;
  bottom: 0;
  display: none;
}
#cookie-container h3 {
  color: #ec7a22;
  margin-bottom: 0;
}
#cookie-container button {
  min-width: 5rem;
}


  
   
/*==============================================/  
	
	4: Pages
	
============================================= */

/*** Homepage ***/

.button--cta,
.conference__banner-image,
#conference-details {
 width: 100%;
}
.button--cta {
 margin-top: 2rem;
}
#title-tab {
 background: #4c4c4e;
 border-bottom: 2px solid #fff;
 color: #fff;
 font-family: "Oswald", Arial, sans-serif;
 font-size: 2.4rem;
 letter-spacing: 1px;
 margin: 0;
 padding: 1rem 0;
 position: absolute;
   top: 0;
   left: 0; 
 text-transform: uppercase;
 text-align: center;
 width: 100%;
}
.banner__pipe {
 color: #fff;
}
.conference__banner-title { 
 background: #ec7a22;
 color: #fff;
 font-size: 3.2rem;
 padding: 1rem 1.5rem 1.5rem 1.5rem;
 position: absolute;
 text-align: center;
 top: 0;
 width: 100%;
}
.conference__banner-subtitle {
 font-size: 2.4rem;
 margin-bottom: 0;
 }
 .conference__banner-dates {
    margin: 1rem 0 -1rem 0;
 }
 .conference__banner-date-loc {
  font-size: 2rem;
  margin-top: .5rem;
 }
 .conference__banner-date-loc {
  line-height: 1.2;
 }
/* .conference__banner-date-loc span {
   display: block;
  } */
.conference__banner-note {
 font-size: 1.2rem;
}

.conference__section {
 overflow: auto;
}
.conference__banner_details-wrap {
 background: rgba(255,255,255,.8);
 margin: 2rem 4rem;
 padding: 2rem;
 position: absolute;
  top: 155px;
 text-align: center;
}
.conference__banner-subtitle {
 font-size: 2.4rem;
 font-weight: normal;
 margin-bottom: 0;
 }
 
.banner--small-txt {
 font-size: 1.6rem;
 margin-top: 1rem;
}

 .section__heading-link:hover,
 .section__heading-link:focus {
   color: #fff;
   background: #ec7a22;
 }
 
 
 #special-session .callout {
  padding: 2rem 4rem;
 }
 
 
/*** Subpages ***/

.page__title {
 color: #ec7a22;
 font-weight: normal;
 }
 
 .bio__link-text {
  font-size: 1.4rem;
  margin-top: 0;
 }
 .title--bio-name {
  margin-bottom: 0;
 }
 .title--bio-title {
  color: #4c4c4e;
  font-size: 2rem;
  margin-top: 0;
 }
 
 .speaker__image {
    float: left;
    margin: .5rem 1.5rem .5rem 0;
 } 


/*** 404 Page Styling ***/

#page404:before {
 content: '';
 border-top: 2px solid #dcddde;
 display: block;
 width: 100%;
}

.error__subtitle {
  color: #4c4c4e;
  font-size: 2.9rem;
  padding: 0;
}
.error__text {
  font-size: 2.4rem;
}




/*** Sponsorships / Agenda ***/

#sponsorship-intro,
#general-sponsorships {
 border-bottom: 2px solid #eaebec;
 padding-bottom: 4rem;
}

.table--gs,
.table--agenda {
 display: table;
 margin: 4rem auto 4rem auto;
 width: 100%;
}

.header__benefits {
 background: #177bcc;
 color: #fff;
 display: block;
 font-size: 2rem;
 font-weight: normal;
 padding: 1rem;

}

.table--gs table,
.table {
 border-collapse: collapse;
}
.table__benefits .note {
 color: #888;
}
.table--gs .table__benefits .table__td.width--col-span-full,
.table--agenda .table__conference .table__td.width--col-span-full {
 background: #fff;
 color: #4c4c4e;
 font-size: 1.8rem;
}
.table--gs .table__benefits .table__td.width--col-span-full {
 background: #177bcc;
 color: #fff;
}
.table--agenda .table__conference .table__callout {
 background: #dcddde;
}
.table--agenda .table__conference .table__callout__one {
 background: #005596;
 color: #fff;
}
.table--agenda .table__conference .table__callout__two {
 background: #008341;
 color: #fff;
}
.table--agenda .table__conference .table__callout__three {
 background: #fec55a;
}

.table--gs .table__benefits .table__td.width--col-span-full,
.table--agenda .table__conference .table__td.width--col-span-full {
 width: 100%;
}
.table__benefits,
.table__conference {
 border: none;
 display: table;
 margin: 0;
 width: 100%;
}
.table__track {
 margin-bottom: 4rem;
}
.table__heading:first-of-type {
  margin-top: 4rem;
}
.sponsor__cost,
.sponsor__available {
 font-weight: normal;
}
.table--gs .table__td {
    background: #dcddde;
    border: 1px solid #fff;
    color: #4c4c4e;
    line-height: 1.2;
    padding: 1rem;
    text-align: center;
    width: 20%;
}
.table__tr-head td {
 font-size: 90%;
}
.table--gs .table__tr-head .table__td:first-of-type,
.table__benefits .table__td:first-child,
.table--gs .header--full {
 display: none;
}
.table__benefits .table__td:first-child,
.table__benefits .table__td:nth-child(3),
.table__benefits .table__td:nth-child(5) {
    background: #eaebec;
}
.table__benefits .table__tr-head .table__td {
     border-bottom: 2px solid #fff;
}
.table__benefits .table__tr-head .table__td,
.table__conference .table__tr-head .table__td {
    background: #888;
    color: #fff;
}
.table__benefits .table__tr-head .table__td {
  background: #ec7a22;
}
.table__benefits .table__tr-head .table__td:first-of-type {
 background: #fff;
}
.table__benefits .table__td,
.table__conference .table__td {
  height: 6.25rem;
  vertical-align: middle;
}
.table__benefits .table__td span,
.table--gs .table__heading span,
.table__conference .table__td span {
 display: block;
}
.sponsor__level {
 font-weight: 700;
}
.table--gs .table__heading {
 font-size: 1.8rem;
 font-weight: 700;
}
.table--gs .table__heading:not(:first-of-type) {
 margin-top: 6rem;
}



/**Agenda Adjustments **/

.table--agenda .track__one .table__track.width--col-span-full {
 background: #005596;
}
.track__one .callout {
 background: #005596;
}
.table--agenda .track__two .table__track.width--col-span-full {
 background: #008341;
}
.table--agenda .track__three .table__track.width--col-span-full {
 background: #fec55a;
}

.table--agenda .table__conference .table__track.width--col-span-full {
 color: #fff;
}
.table--agenda .track__three .table__track.width--col-span-full {
 color: #4c4c4e;
}

.track__one .table__td {
 background: #c4e0f5;
}
 .track__two .table__td {
 background: #c7e3ad;
}
 .track__three .table__td {
 background: #fee2ac;
}



.promo-container {
 margin-top: 4rem;
}
.promo {
 border-bottom: 1px solid #dcddde;
}
.promo {
 break-inside: avoid;
 padding: 2rem 0;
}
.promo:first-of-type {
 padding-top: 0;
}
.promo span {
 display: block;
 font-weight: 700;
}
.promo__heading {
 margin-top: 0;
}
.promo__title {
 color: #ec7a22;
 font-size: 1.8rem;
}


/** Our Sponsors **/

#homepage-sponsors {
 margin-bottom: 8rem;
}

h4.sponsor__heading {
 font-size: 3rem;
}

.link--sponsors {
 display: none;
}
.sponsors__link {
 background: #fff;
 color: #0177bc;
 margin: 4rem 0 0 0;
}


.callout--sponsors {
 background: #ec7a22;
 color: #fff;
 font-size: 3rem;
 padding: .75rem 0;
 text-align: center;
}

.sponsor__heading {
 margin: 4rem 0;
 position: relative;
}

.sponsor__heading:after {
 border: 1px solid #ec7a22;
 content: '';
 margin-top: .5rem;
 position: absolute;
 top: 100%;
 left: 50%;
 transform: translateX(-50%);
 width: 100px;
}
.sponsor {
 vertical-align: middle;
}
.sponsors .sponsor:not(:first-child) {
 margin-left: 4rem;
}

.sponsors {
 line-height: 50px;
}


/*** News ***/

#keyword_search {
 width: calc(100% - 150px);
}

.form_noresults {
    display: none;
}

.news__item {
 margin-top: 4rem;
}

.news__item:not(:last-of-type) {
 border-bottom: 1px solid #ccc;
 padding-bottom: 4rem;
}
.news__title {
 margin-bottom: .5rem;
}
.news__date {
 margin-top: 0;
}


.news__section .news__item {
 border-bottom: none;
}

/*** News and Events ***/

.search__intro {
  padding: 0 2rem 3rem 3rem;
}
.search__intro .button {
  border-radius: 5px;
}
.news__cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  list-style: none;
  margin-top: 4rem;
  padding-top: 3rem;
}
.news__cards .card__text {
  color: #888;
  padding-top: 1.5rem;
}










/*** Sitemap ***/
.sitemap ul:first-of-type {
  margin-left: 2rem;
}



/*==============================================/  
	
	5: State Rules
	
============================================= */




/*==============================================/  
	
	6: Media Queries
	
============================================= */


/*=========== LARGER THAN =========== */

@media screen and (min-width: 450px) {
 
 #cross-feature h4 {
 font-size: 3.2rem;
}

 .logo {
  width: 100%;
 }
 
 /* Photo Gallery
-------------------------------------------- */
 .gallery__item {
  display: inline-block;
  width: 46%;
  }
  
   
.gallery__item:nth-child(2n):not(:first-of-type) {
  margin-left: 4%;
  }
  
  
}


/* Larger than a Phablet */
@media screen and (min-width: 550px) {
 
 
  #cross-feature {
   display: flex;
   flex-direction: row;
   flex-wrap: wrap;
   align-items: stretch;
  }
  #cross-feature .img__wrap {
    border-right: 2px solid #fff;
    max-width: 30%;
   }
   #cross-feature .callout {
    max-width: 70%;
   }
 
 
  .bio {
   display: inline-block;
   width: 46%;
  }
  .bio:nth-child(even):not(:first-of-type) {
   margin-left: 4%;
  }
  
  .keynote__image {
    float: right;
    margin-left: 2rem;
   }
   
   
   .search__form input {
       display: inline-block;
       width: 60%;
   }
   
   .text--new-highlight {
     color: #ec7a22;
   }
   
     /* News Adjustments
-------------------------------------------- */

.news__cards {
  justify-content: space-between;
}
  

}

/* Larger than a Tablet */

@media (min-width: 769px) {
 
 h1 {
    font-size: 6rem;
}
#title-tab {
    position: absolute;
    top: 27px;
    left: 20px;
    width: 370px;
}
.conference__banner-title {
    font-size: 6rem;
    right: 0;
    left: auto;
    top: 85px;
    width: 650px;
}
 
 #alert.alert--bright {
  font-size: 2rem;
 }
 
 #pull {
  display: none;
 }
 
 #global-nav {
  display: block;
 }
 
 .link--mobile,
 .link--mobile a {
  display: none;
 }

 .logo__link {
  display: block;
  overflow: auto;
 }
 .logo {
  text-align: left;
 }
 .logo__image {
  float: left;
  margin: 0;
 }
 .site__title-container {
   border-left: 1px solid #dcddde;
   display: inline-block;
   margin: 1rem 0 0 1.5rem;
   padding: .75rem 0 1rem 2rem;
   vertical-align: middle;
  }
  
  .logo {
   display: inline-block;
   vertical-align: top;
   width: auto;
  }
  
 header .button__parent {
  display: block;
  margin-top: 4rem;
  width: 100%;
 }
 
 #global-nav nav {
  margin: 0 auto;
  width: auto;
 }
  
  nav li:hover > a,
  nav li:focus > a,
  nav .js-clickable > a {
    border-bottom-color: #ec7a22;
  }
  nav li:hover a,
  nav li:focus a,
  nav .js-clickable a {
    border-bottom-color: #ec7a22;
  }
  nav .current:hover,
  nav .current:focus,
  nav .current:hover:after,
  nav .current:focus:after {
    color: #444;
  }
  nav .current,
  nav .js-clickable {
   border-bottom: 5px solid #ec7a22;
  }
  nav .js-clickable {
   color: #666;
   font-weight: 900;
  }

  
  /**** Full Header Navigation ****/
		
		nav,
		.menu, 
		#search-section {
		  display: block;
		}

  nav {
    display: table;
		  line-height: 10px;
    padding: 2rem 0 2rem 0;
		}
  nav ul {
   list-style: none;
  }
  nav li {  
		  display: inline-block;  
		}
		.menu > li {
		  margin-right: .75rem;
		}
		.menu li:last-child {
		  margin-right: 0;
		}
		nav .menu__parent {
		  position: relative;
		}		
		nav .current {
		  cursor: text;
		}
  
  
   /* Show the dropdown menu on hover */
   
   nav .menu__parent {
       position: relative;
   }
		.menu__parent:hover .dropdown__content {
		  display: block;
		}
  
 .dropdown__group {
    overflow: auto;
}
  .dropdown__column {
      float: left;
      width: 100%;
      height: auto;
  }
  .dropdown__column-menu {
   margin: 0;
   /*padding: 0 2rem 2rem .5rem;*/
   overflow: auto;
   width: 100%;
  }
  
   .menu__sub {
    padding-top: 1.5rem;
   }
   
		
 .menu__sub .dropdown__group {
		  color: #888;
		  float: left;
		  font-size: 1.4rem;
		  font-weight: 700;
    /* padding: 1rem 3rem 0 3rem; */
    width: 100%;
		}		
  .menu__sub .dropdown__heading {
		  color: #888;
		  font-size: 1.4rem;
		  font-weight: 700;
		  margin-bottom: 1rem;
		}
  nav .menu__parent:hover .menu__sub a,
  nav .menu__parent:focus .menu__sub a {
		  font-size: 1.4rem;
		  font-weight: normal;
		  line-height: 1;
    padding: 2rem;
		}
  nav .menu__parent:hover .menu__sub a:hover:not(.current),
  nav .menu__parent:focus .menu__sub a:focus:not(.current) {
   background: #ec7a22;
   color: #fff;
		 cursor: pointer;
   display: block;
   margin: 0;
		}
  nav .menu__parent:hover .menu__sub ul li {
    border-bottom: none;
    color: #888;
    float: none;
    display: list-item;
    margin-right: 0;
		}

nav .menu__parent:hover .menu__sub .current,
nav .menu__parent:focus .menu__sub .current {
    color: #4c4c4e;
    font-weight: 700;
}
nav .menu__parent:hover .menu__sub .current:hover,
nav .menu__parent:focus .menu__sub .current:focus {
 cursor: text;
}

nav .menu__parent-link,
nav .menu__parent-link:after {
 transition: all .3s;
}
nav .menu__parent-link:hover:not(.current),
nav .menu__parent-link:hover:not(.current):after {
 background: #ec7a22;
 color: #fff;
}

 .current__section ul {
  font-size: 1.5rem;
  margin-left: 1rem;
 }
 
 
 #breadcrumb-nav .current {
    width: 400px;
  }
	
 #about-menu {
  margin: 0;
  overflow: auto;
    width: 250px;
}


.nav__local .current,
.nav__local li a:not(.current):hover,
.nav__local li a:focus {
    color: #f57b07;
    background: #fff;
}
.nav__local .current {
    color: #444;
}
 
 
 /** Homepage Adjustments **/
 
 
 .conference__banner {
  margin-right: 2rem;
  min-height: 467px;
 }
 .conference__banner-image {
  clip: rect(0px, 385px, 467px, 0px);
  float: left;
  /* margin-top: 3rem;*/
  position: absolute;
  left: -10%;
  width: auto;
 }
 #conference-details {
  float: right;
  padding: 0;
  position: relative;
  width: 431px;
 }
 .date-loc__pipe {
   color: #0177bc;
  }
 .button--cta {
  right: 0;
 }
 nav .button--cta.current {
  line-height: 40px;
 }
  nav .button--cta.current:after {
   content: '';
  }
  nav .button--cta.current:hover,
  nav .button--cta.current:focus {
    background: #fff;
    border-bottom: 5px solid #ec7a22;
   }
 
  .conference__banner_details-wrap {
   background: rgba(255,255,255,1);
   margin: 0;
   position: static;
   text-align: left;
  }
  .conference__banner-subtitle {
   font-size: 3.2rem;
   line-height: 1.1;
   margin: 24rem 0 0 0;
  }
  .conference__banner-date-loc {
   font-size: 2.6rem;
   margin: 1rem 0;
  }
  
    .conference__banner-title p,
  .conference__banner-title h1 {
  }
  .conference__text-wrap {
   margin: 0 auto;
   text-align: left;
   text-shadow: 1px 1px 5px rgba(0, 0, 0, .3);
   width: 500px;
  }
  .conference__banner_details-wrap {
   background: rgba(255,255,255,1);
   margin: 0;
   position: static;
   text-align: left;
  }
  .conference__banner-subtitle {
   font-size: 3.2rem;
   line-height: 1.1;
   margin: 28rem 0 0 0;
  }
  .conference__banner-dates {
   font-family: "Oswald", Arial, sans-serif;
   font-size: 4.8rem;
  }

   .conference__banner-dates:after {
    content: '';
   }
   
  .conference__overview-container {
   clear: both;
  }

   .conference__banner-dates:after {
    content: '';
   }
   
  .conference__overview-container {
   clear: both;
  }
  /*.conference__overview {
    margin-top: 8rem;
   } */
    
  .overview__heading-container,
  .section__heading-container {
   overflow: auto;
  }
  .section__heading {
   float: left;
   margin-bottom: 0;
  }
  .section__heading {
     margin-top: 0;
    }
  .section__heading-link {
   background: #fff;
   color: #0177bc;
   float: right;
   line-height: 36px;
  }
 .section__heading-link:hover,
 .section__heading-link:focus {
   color: #ec7a22;
   background: #fff;
 }

  .bio {
   display: inline-block;
   width: 21%;
  }
  .bio:not(:first-of-type) {
   margin-left: 4%;
  }
  
  .bio:nth-child(4n-7) {
   margin-left: 0;
  }
  
 .container--large {
  padding-top: 2rem;} 
 .columns {
  float: left;
 }
 .three.columns {
    width: 170px;
 }
  .four.columns {
    width: 30.6666666667%;
 }
 .nine.columns {
    margin-right: 1rem;
    width: calc(70% - 2rem);
 }
 
 
.news__section .first__item {
 margin-left: 0;
}


.link--sponsors {
 display: block;
}
 
#mailing-list-cta {
 padding: 0 2rem 1rem 2rem;
}

.five.columns {
 width: 48%;
}


.image--float-right {
 float: right;
 margin: 0 0 2rem 2rem;
}
.image--float-left {
 float: left;
 margin: 0 2rem 2rem 0;
}


/* Photo Gallery Adjustments
-------------------------------------------- */

.gallery__item {
 display: inline-block;
 width: 21%;
}
.gallery__item:not(:first-of-type) {
    margin-left: 4%;
}
.gallery__item:nth-child(4n-7) {
    margin-left: 0;
}
.gallery__image {
 height: auto;
 margin-bottom: 3rem;
 width: 100%;
}
.gallery__image--vertical {
 max-width: 89px;
}


/* News Adjustments
-------------------------------------------- */

.column.card {
  flex: 0 0 30%;
  max-width: 29%;
}



   
}


@media screen and (min-width: 800px) {
 
 /*** Sponsorship Adjustments ***/
 
 .header__benefits {
  display: none;
 }
 .table__benefits .table__td,
  .table__conference .table__td {
  background: #f1f2f2;
  font-size: 1.6rem;
 }
.table__benefits .table__td:first-child,
.table__conference .table__td:first-child {
    display: table-cell;
}

.table--gs .table__td {
  width: 12.5%;
 }
/* .table--gs .table__tr .table__td:first-of-type {
  text-align: left;
  width: 30%;
 } */

.table__benefits tr th:first-child,
.table__benefits tr td:first-child {
  text-align: left;
  width: 25%;
 }
 
 
 .table__heading {
  display: none;
 }
 
 .table--gs  .table__tr-head--small {
  display: none;
 }
 .table--gs .table__tr-head .table__td:first-of-type,
 .table--agenda .table__tr-head .table__td:first-of-type {
  display: table-cell;
 }
 
 
#break-promos .promo:nth-child(2),
#break-promos .promo:nth-child(4),
#other-promos .promo {
 border-bottom: none;
}
#break-promos .promo:nth-child(3),
#other-promos .promo:nth-child(2) {
 padding-top: 0;
}

/*Agenda Adjustments */
.track__one .table__td {
 background: #c4e0f5;
}
 .track__two .table__td {
 background: #c7e3ad;
}
 .track__three .table__td {
 background: #fee2ac;
}


 
.promo-container {
 column-count: 2;
 column-gap: 10rem;
 margin-top: 4rem;
}



 
 
}



@media screen and (min-width: 769px) and (max-width: 1080px) {

 nav .menu {
  margin: 0 auto;
 }

 .menu > li {
  font-size: 1.5rem;
 }
}
@media screen and (min-width: 769px) and (max-width: 1460px) {
 
 nav {
  text-align: center;
 }
 .menu__sub {
  text-align: left;
 }
 .logo,
 .main__content {
  padding-left: 2rem;
 }
 .menu li:first-child {
  padding-left: 1rem;
 }

 .menu--breadcrumb {
  padding-left: 4rem;
 }
}
 
 @media screen and (min-width: 1460px) {
  .main__content {
   padding: 2rem 0;
  }
 }



}
@media screen and (min-width: 769px) and (max-width: 850px) {
 .menu > li {
    font-size: 1.4rem;
    margin-right: 1rem;
 }
 
 
 
}

@media screen and (min-width: 821px) {
 
 
 
.conference__banner-image {
  clip: rect(0px, 575px, 467px, 0px);
  left: 0;
  max-width: 575px;
 }
 
 
 
}

@media screen and (min-width: 1000px) {

  #mailing-list-cta .button--ghost {
  display: inline-block;
  margin: 2rem 0 0 2rem;
  width: auto;
 }
 #mailing-list-cta p {
  margin-top: 1rem;
 }
 
   #breadcrumb-nav .current {
    max-width: 700px;
  }
}


@media screen and (min-width: 1104px) {
 .conference__banner-image {
  clip: rect(0px, 895px, 467px, 0px);
  left: 0;
  max-width: 895px;
 }
 .main__content {
  min-height: 40rem;
 }
 

 
 
}

@media screen and (min-width: 875px) {
 
 header .button__parent,
 header .button--cta {
  display: inline-block;
  margin: 0;
  width: auto;
 }
 
 .conference__banner_details-wrap {
   padding: 2rem 1rem 1rem 2rem;
  }
 
}



/* Larger than mobile standard */
@media screen and (max-width: 450px) {
 

 #pull {
    background: #177bcc;
    display: inline-block;
    font-size: 1.5rem;
    margin: 2rem 0 2rem 0;
    padding: .5rem 1rem;
    text-align: center;
    vertical-align: top;
}

 nav ul {
  text-align: center;
 }
 nav li { 
  background: #d8dcdb;
  border-bottom: 2px solid #fff;
  list-style: none;  
  width: 100%;
}
nav li a,
nav .current {
 padding: 1rem;
 transition: background-color .6s;
}
header .button--cta {
 padding: 2rem;
}

nav li:hover,
nav li:focus {
  background: #4c4c4e;
}
nav .current {
 background: #ec7a22;
 color: #fff;
}
nav .js-open li a:hover,
nav .js-open li a:focus {
 background: #777;
}
.nav a {
  color: #fff;
  display: block;
  font-size: 14px;
  font-weight: bold;
  line-height: 55px;
  text-align: center;
  text-transform: uppercase;
}


nav .js-dropdown--expanded > ul li {
   display: block;
   width: 100%;
  }
nav .js-open li a {
   background: #666;
  }
  
  .conference__banner-date-loc {
   margin-bottom: 0;
  }
  

.table__tr-head td {
 font-size: 75%;
}

.keynote__inside {
 text-align: center;
}
 
 
}


/* Larger than mobile standard */
@media screen and (min-width: 450px) {
 
.logo {
 overflow: auto;
 text-align: left;
}
.logo__image {
 height: auto;
 max-width: 216px;
 text-align: left;
 width: 80%;
}
.conference__banner-image {
   max-width: 100%;
   width: auto;
}

.conference__banner-logos {
 width: 80%;
 height: auto;
}

.keynote__inside {
 text-align: left;
}

}

@media screen and (min-width: 550px) and (max-width: 769px) {

 
  .logo__link {
  display: flex;
 }
.site__title-container {
    border-left: 1px solid #dcddde;
    display: inline-block;
    height: auto;
    margin: 0 0 0 1.5rem;
    padding: 0 0 0 2rem;
    text-align: left;
    vertical-align: middle;
}
 .site__title,
 .site__tagline {
  display: inline-block;
 }
  .site__title {
   margin-top: 1.5rem;
  }
 .site__tagline {
  padding-right: 2rem;
 }
 
 
}

@media screen and (min-width: 450px) and (max-width: 769px) {
 
 header .container--large {
  padding: 0 0 2rem 2rem;
 }
 .logo {
   overflow: auto;
  }
  
  #pull {
   margin: 2rem 2rem 2rem 0;
  }
  
  figure {
   margin: 0 auto;
   width: 100%;
  }
  
  
}


@media screen and (max-width: 650px) {
 
 header {
  text-align: center;
 }
 .logo {
  width: 100%;
  text-align: center;
 }
}



@media screen and (min-width: 650px) and (max-width: 769px) {
 header .container {
  display: flex;
 }
 .logo {
  margin-right: 2rem;
 }
 #pull {
  height: 44px;
 }
}


/*=========== SMALLER THAN =========== */

@media screen and (max-width: 450px) {
 header .container--large {
  text-align: center;
 }
 .conference__banner-title {
  font-size: 2.6rem;
 }
}

@media screen and (max-width: 550px) {
/* .conference__banner-date-loc span {
  display: block;
 } */

.conference__banner-image {
    margin-top: 15rem;
}

 #footer-main-content {
  display: table;
  text-align: center;
 }
 .social {
  display: inline-block;
  float: none;
 }
 .copyright,
.menu--secondary {
  display: block;
  float: none;
 }
 
 footer #partner-logo {
  display: block;
  float: none;
  margin-bottom: 2rem;
  text-align: center;
 }
 footer #partner-logo * {
  display: inline;
  float: none;
  vertical-align: middle;  
  }
 
 .conference__banner-image {
   height: auto;
  }
  .conference__banner_details-wrap {
   background: #177bcc;
   color: #fff;
   display: block;
   margin: -1rem 0 0 0;
   position: static;
  }
  .conference__banner-subtitle {
   color: #fff;
   font-size: 2rem;
  }
  .conference__banner-date-loc {
   font-size: 1.6rem;
  }
}


@media screen and (max-width: 769px) {
 
 #title-tab {
    border-bottom: 2px solid #fff;
    width: 100%;
    top: 0;
    left: 0;
}
.conference__banner-title {
    top: 58px;
}
.conference__banner_details-wrap {
    top: 255px;
}
 
  .breadcrumb-nav__container {
  display: none;
 }
 
 .logo {
  display: inline-block;
 }
 .logo__image {
   display: inline-block;
 }
 
 .site__title,
 .site__tagline {
  display: block;
 }
 
 
 #pull {
    background: #177bcc;
    display: inline-block;
    font-size: 1.5rem;    
    padding: 1rem 2rem;
    text-align: center;
    vertical-align: top;
}
 #pull::before {
    margin-right: 1rem;
}
#pull::before {
    content: '\f0c9';
    font-family: 'Font Awesome 5 Pro';
    font-size: 1.5rem;
    font-weight: 900;
}
#pull:hover,
#pull:focus {
    background: #ec7a22;
}
#pull.js-open::before {
    content: '\f00d';
}


#global-nav {
 padding: 0;
}

.link--mobile,
.link--mobile a {
 display: block;
}

.menu__parent {
 position: relative;
}
.menu__sub,
.dropdown__column-menu {
    margin: 0;
}
.dropdown__content {
    position: static;
    width: 100%;
}

nav ul .plus::after,
nav ul .minus::after {
    font-family: 'Font Awesome 5 Pro';
    font-weight: 900;
    color: #666;
    content: '\f067';
    position: absolute;
    right: 20px;
    top: 25px;
}
nav ul .current::after {
 color: #fff;
}
nav ul .minus::after {
    content: '\f068';
}

.js-dropdown--expanded {
  top: 100%;
  z-index: 100;
}
nav {
  border-top: none;
  overflow: hidden;
  position: static;
  width: 100%;
}
nav li a {
 transition: none;
}
nav a:hover,
nav a:focus,
.nav__local .current,
.nav__local li a:not(.current):hover,
.nav__local li a:focus {
 transition: none;
}
nav ul {
 text-align: center;
}
nav ul:first-child li a { 
  border-bottom: 2px solid #fff;
  list-style: none;  
  width: 100%;
}

nav li a,
nav .current {
 padding: 1rem;
}
header .button--cta {
 padding: 2rem;
}
nav li:hover,
nav li:focus,
.menu__parent:hover a,
.menu__parent:focus a,
.menu_parent .minus,
.menu__parent:hover .js-open > ul li a:hover,
.menu__parent:hover .js-open > ul li a:focus {
  background: #d1d2d3;
}
.menu__parent:hover a,
.menu__parent:focus a,
.menu__parent:hover .js-open > ul li a:focus,
.menu__parent:hover .js-open > ul li a:hover,
.menu__parent:focus .js-open > ul li a:focus,
.menu__parent:focus .js-open > ul li a:hover{
  background: #c4e0f5;
}
.menu__parent:hover .js-open > ul li
{
 border-bottom: none;
}
.menu_parent .minus,
nav .button--cta:hover, nav .button--cta:focus {
 border-bottom: 2px solid #fff;
}
.menu__parent .current {
 cursor: pointer;
}
.menu__parent .dropdown__group,
nav > ul .menu__parent li,
nav > ul .menu__parent li:hover,
nav > ul .menu__parent li:focus {
 border-bottom: none;
}
nav > ul .menu__parent a,
nav > ul .menu__parent a:hover,
nav > ul .menu__parent a:focus {
 border-bottom: 2px solid #fff;
}
.menu__parent:hover .js-open > ul li a:hover,
.menu__parent:hover .js-open > ul li a:focus {
  border-bottom-color: #fff;
}
nav .current,
nav .current:hover,
nav .current:focus,
.menu__parent:hover .current,
.menu__parent:focus .current {
 background: #888;
 color: #fff;
}

nav a:hover,
nav a:focus {
 background: #c4e0f5;
}

.nav a,
.nav__local a {
  color: #fff;
  display: block;
  line-height: 55px;
  text-align: center;
}
.nav__local a {
 color: #666;
}


nav .js-dropdown--expanded > ul li {
   display: block;
   width: 100%;
  }
 nav a,
 .nav__local a,
 nav .js-open > ul li,
 .menu__parent:hover .js-open > ul li a,
 .menu__parent:focus .js-open > ul li a {
   background: #ccc;
  }
 .menu__sub a:not(.current) {
   background: #fff;
 }
 .menu__parent:hover .js-open .dropdown__column-menu li a,
 .menu__parent:hover .dropdown__column-menu a,
  .menu__parent:focus .js-open .dropdown__column-menu li a,
 .menu__parent:focus .dropdown__column-menu a {
  background: #fff;
 }
 .menu__parent:focus .dropdown__column-menu .current,
 .menu__parent:hover .js-open > ul li .current:hover,
 .menu__parent:hover .js-open .dropdown__column-menu li .current,
 .menu__parent:hover .dropdown__column-menu .current {
  background: #888;,
  
 }
 
 .nav__local li a:not(.current):hover,
 .nav__local li a:not(.current):focus {
  background: #c4e0f5;
  color: #444;
 }
  
header .button__parent,
header .button--cta {
  display: block;
  width: 100%;
 }
  header .button--cta {
  font-size: 1.6rem;
  padding: 2rem;
 }
 
 


 .current__section a,
 .nav__local li:not(.current__section) {
  border-bottom: 2px solid #fff;
 }

  .nav__local li:not(.current__section) {
   border-bottom: none;
  }

 .menu--breadcrumb {
  font-size: 1.2rem;
  padding-left: 2rem;
 }
 
 
 
 .nav__local,
 .nav__local .current__section strong {
    display: none;
}


#pull-local {
    border-left: none;
    border-right: none;
    display: block;
    font-size: 1.8rem;
    height: 66px;
    line-height: 50px;
    margin: 0;
    padding: .5rem 1rem;
    text-align: center;
    width: 100%;
}
#pull-local::after {
    content: "\f107";
}


.main__text-container {
 padding: 4rem 2rem 0 2rem;
 margin-left: 0;
}

.button--cta {
 background: 
}

.conference__banner-date-loc {
 margin-bottom: 0;
}


 /*** Callouts ***/
 .callout__heading-link {
  font-size: 3.3rem;
 }
 
#mailing-list-cta {
 padding: 2rem;
}

.five.columns {
 margin-left: 0;
}
.container--inset {
 padding: 0;
}

.news__item.columns {
 margin-left: 0;
}

.news__link.text--more {
 background: #0177bc;
 color: #fff;
 display: inline-block;
 font-size: 1.8rem;
 padding: .75rem 1.5rem;
 text-align: center;
 transition: all .6s;
}
 .news__link.text--more:hover,
 .news__link.text--more:focus {
  background: #ec7a22;
 }
 
}


@media screen and (min-width: 769px) and (max-width: 1300px) {
  nav li:first-child {
  padding-left: 4rem;
 }

}





/*==============================================/  
	
	7: Print Styles
	
============================================= */


@media print {
  
  
  body,
  .logo__link,
  .callout-text {
      background: #fff !important;
      color: #000;
      font: 13pt Georgia, "Times New Roman", Times, serif;
      letter-spacing: normal;
      line-height: 1.3;
    }
	
   h1, h2, h3, h4, h5, h6 {
     font-weight: bold;
   } 
   h2, h3, h4 {
     color: #000;
     font-size: 14pt;
     margin: 25px 0;
   }
	
   h3 + p {
     margin-top: 50px;
   }
  
   ul li {
     margin: 0;
   }
	
	* {
	  float: none;
	  font-size: 10pt;
	  letter-spacing: normal;
	  line-height: 20pt;
	}
	
    
  img {
    border: none;
    max-width: 100% !important;
  }

  
  
  /*** font sizes ***/
  h1,
	.logo__link {
	  font-size: 16pt;
	}
  
	h3 {
	  font-size: 13pt;
	}

	h4 {
	  font-size: 12pt;
	}	
	.news__subtitle {
	  font-size: 14pt;
	}
  
  
  /* Displaying link color and link behavior */
	a:link, a:visited, a,
	.button {
	  background: transparent;
	  border: none;
	  box-shadow: none;
	  color: #005596;
	  text-align: left;
	  font-weight: bold;
	}
	
	h1 a:link {text-decoration: none;}
	
	a[href^="http"]:after,
	a.button:after
	{
	  content: " (" attr(href) ") ";
	  font-size: 90%;
	}
	
	a[href^="#"]:after {
	 content: "";
   }
   
/* Defining all page breaks */
  a, img, blockquote,
	 h1, h2, h3, h4, h5, h6, form {
   page-break-inside: avoid;
	}
  
  h1, h2, h3, h4, h5, h6,
  img {
	   page-break-after:avoid;
	}
	
	
 a, .button {
	  page-break-inside:avoid
	}
	table, pre { page-break-inside:avoid }
	ul, ol, dl  { page-break-before:avoid }
	
	
	/*** hiding unecessary elements for print ***/
	footer,
 .callout,
 .sidebar {
	  display: none;
	}

	.container::after, .row::after {
	  display: block;
	}
	.container {
	  padding: 0;
	}
	
	.main__content {
	  margin: 25px 0;
	  padding: 0;
	}
	


  
  /*** columns and floats ***/
  .column, .columns {
    margin: 25px 0;
    float: none;
  }
  .main__text-container,
  .nine.columns,
  .container,
  .one-half.column,
  .one-third.column,
  .two-thirds.column,
  .nine.columns
  {
   width: 100%;
  }  
  .u-full-width {
   max-width: 90%;
  }
 

  
 	
	
	
	
  
  
  /*** form print styles ***/
  
	input[type="email"],
	input[type="number"],
	input[type="search"],
	input[type="text"],
	input[type="tel"],
	input[type="url"],
	input[type="password"],
	textarea,
	select {
	  border-bottom: 1px solid #d1d1d1;
	  border-top: none;
	  border-left: none;
	  border-right: none;
	  color: #000;
	  height: auto;
	  padding: 0;
	  width: 90%;
	}
	
	
	

 
/** Setting margins */       
@page { margin: 2cm }
	
	
	
}













