/*
  Black Hat Bootstrap theme derived from:
  https://startbootstrap.com/themes/
  https://startbootstrap.com/templates/modern-business/
  https://blackrockdigital.github.io/startbootstrap-modern-business/
  
  --

  Import Web-fonts:
  //@import url('fonts-2020.css'); -- includes Changeling Neo & Play

  (Should main fonts need changing in future, create new file like 'fonts-yyyy.css', put new font declarations in there, and @import below.  That will update all extant non-event pages and sub-directories)
*/

@import url('fonts-2024.css'); /* Includes Bai Jamuree & Inter */
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css'); /* Used in SecTor Presentations (html/sector-presentations.html) */

a,
.action,
.blue-bottom h3,
h6,
.link-box h2,
main .toggle h2,
.portal-footer a,
.toggle .speaker-front-page,
.view-more {
  color: #33ceff;
}

a {
  text-decoration: none;
  transition: all .2s ease-in;
}
a:hover, a:active, a:focus {
  color: #36daff;
  text-decoration: underline;
}

a.light, 
a.light:hover, a.light:active, a.light:focus {
  color: #fff;
}
a.light:hover, a.light:active, a.light:focus {
  text-decoration: none;
}

html, body {
  height: 100%;
}

body {
  background: #000 url(https://www.blackhat.com/images/page-graphics-18/BH_BodyBG.jpg) no-repeat top right;
  color: #fff;
  font-family: sans-serif;
  font-size: 13px;
  /*line-height: 1.9em;*/
}

/* Used on call-for-papers.html and similar to dim closed listings, brightening them again on hover/focus, so they compete less with live listings */
.cfp-closed {
  opacity: .66;
  transition: all .2s ease-in;
}
.cfp-closed:focus, 
.cfp-closed:hover {
  opacity: 1;
}

h1, h2, h3, h4, h5, 
main fieldset legend, 
nav.main,
.left-col-anchors, 
.page-anchors,
.price-box,
.price-box-wrapper a .left, 
#site-footer .links p strong {
  text-transform: uppercase;
}
h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover,
h1 a:active, h2 a:active, h3 a:active, h4 a:active, h5 a:active, h6 a:active {
  text-decoration: none;
}
h1 {
  background: rgba(4,18,27,.75);
  background: linear-gradient(to right, rgba(4,18,27,.75), transparent);
  font-size: 34px;
  font-weight: bold;
  letter-spacing: -1px;
  margin: 2px 0 40px;
}
h2, h3, h4 {
  font-weight: normal;
}
h2, h3 {
  margin: .33em 0;
}
h2 {
  font-size: 1.7em;
}
h3  {
  font-size: 1.5em;
}
h4 {
  color: #ccc;
  font-size: 1.1em;
  letter-spacing: 1px;
}
h5 {
  letter-spacing: 1px;
}
h2, h3, h4, p {
  text-shadow: 0 2px 1px rgba(0,0,0,.9); /* Background contrast makes this necessary for legibility */
}
h6 {
  font-size: 1.1em;
  margin: 0 0 2.5% 0;
}
hr {
  background: #33ceff;
  border: none;
  height: 1px;
}
hr.grey-hr {
  background: #444;
}
main hr {
  margin: 30px auto;
}

img {
  border: none;
  height: auto;
  -ms-interpolation-mode: bicubic;
  max-width: 100%;
  width: 100%;
}
/* Where a non-responsive image is needed, wrap in or class as: */
.img-not-fluid img, 
img.img-not-fluid {
  width: auto;
}

large {
  font-size: 1.25em;
}

main h2 {
  margin-bottom: 15px;
}

main ol {
  margin-bottom: 0;
}
main ol li {
  padding-bottom: .75em;
}

main p {
  line-height: 1.8em;
  margin-bottom: 20px;
}

main ul, 
.training-short-abstract ul {
  list-style-type: none;
  list-style-image: url(../images/page-graphics-asia-18/bullet.png);
  margin: 0 0 15px 0;
  padding: 0 0 0 16px;
}

.training-short-abstract {
  margin-top: 15px;
}

.alert {
  background: url(../images/page-graphics-18/BH_BodyBG.jpg) no-repeat top right;
  background-size: cover;
  border: 1px solid #fff;
  border-radius: 4px;
  box-shadow: 0 0 15px 5px rgba(51,206,255,.35); /* RGB for hex: #33ceff */
  display: block;
  margin: 0 auto 2em;
  padding: .5em 1em 1em 7em;
  position: relative;
}
.alert:after {
  background: #33ceff url(../images/icons/alert.png) no-repeat center 1em;
  background-size: 50% 50%;
  border-radius: 50%;
  content: ' ';
  display: block;
  height: 5em;
  position: absolute;
  top: 1.5em;
  left: 1em;
  width: 5em;
}
.alert h2 {
  font-size: 2.3em;
  margin: .5em 0 .5em 0;
  position: relative;
  text-shadow: 4px 4px 5px rgba(0,0,0,.8);
}
.alert h2:after {
  background: #33ceff;
  background: linear-gradient(to right, #33ceff, rgba(255,0,0,0));
  content: ' ';
  display: block;
  height: 1px;
  position: absolute;
  bottom: -7px;
  left: 0;
  width: 100%;
}
.alert p {
  font-size: 1.2em;
  margin: 0 0 0 .25em;
  padding-bottom: .05em;
}

.banners {
  margin: 0 0 30px 0;
}
.banners, .banners img {
  max-width: 100%;
}
.banners a img {
  border: 1px dotted #222;
  padding: 8px;
}

.center {
  margin: 0 auto;
  text-align: center;
  vertical-align: middle;
}

/* Used for instance on the available-webcasts page. */
.dated {
  font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif;
  margin: 0 0 15px 0;
}
.dated h2 {
  color: #33ceff;
}
.dated .month {
  border-bottom: 1px solid #444;
  padding: 15px 0;
}
.dated .month:first-of-type {
  border-top: 1px solid #444;
}
.dated .month .day, .dated .month p {
  display: inline-block;
  vertical-align: middle;
}
.dated .month .day {
  background: #bbb;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  line-height: 1;
  margin: 0 15px 0 0;
  padding: 0 auto;
  height: 60px;
  width: 60px;
  text-align: center;
  text-transform: uppercase;
  vertical-align: middle;
}
.dated .month .day strong {
  display: inline-block;
  font-size: 1.6em;
  margin: 13px auto 0 auto;
  vertical-align: middle;
}
.dated .month .day strong span {
  display: block;
}
.dated .month p {
  font-size: 1.3em;
  font-weight: bold;
  line-height: 1.5;
}
.dated .month p span {
  color: red;
  display: inline-block;
  padding: 0 0 0 15px;
  position: relative;
  text-transform: uppercase;
}
.dated .month p span:before {
  color: #fff;
  content: "-";
  display: block;
  position: absolute;
  top: 0;
  left: 1px;
}

.grayscale, .greyscale {
  filter: grayscale(100%);
  transition: all .2s ease-in;
}
.grayscale:focus, .grayscale:hover, 
.greyscale:focus, .greyscale:hover {
  filter: none;
}

.line-through {
  text-decoration: line-through;
  text-decoration-thickness: .1rem;
}

/* Link Box is intended as a block display anchor in which the whole box and all its text content are linked, for example see Features page IE us-23/features.html. On pages like us-23/community.html we may have some boxes that are not anchors but spans, so multiple links can be included. */
.link-box {
  background: rgba(0,0,0,.66);
  border: 1px solid #1f668d;
  border-radius: .25em;
  display: block;
  height: 100%;
  padding: 10px 20px;
  position: relative;
  width: 100%;
}
.link-box::after {
  background-image: url(../images/silhouette-01.png);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  content: " ";
  display: block;
  filter: grayscale(100%);
  height: 100%;
  margin: auto;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: -1;
}
/*
.link-box.arsenal::after {
  background-image: url(../images/slides/general/stage-with-lighting.jpg);
}
.link-box.business-hall::after {
  background-image: url(../images/slides/europe/2019/photos-flickr.png);
}
.link-box.business-hall-sessions::after {
  background-image: url(../images/slides/general/stage-with-lighting-02.jpg);
}
.link-box.community::after {
  background-image: url(../images/silhouette-01.png);
}
.link-box.noc::after {
  background-image: url(../images/general/noc.png);
}
.link-box.parties::after {
  background-image: url(../images/slides/mea/stage-and-audience-01.jpg);
}
.link-box.omdia::after {
  background-image: url(../images/slides/trainings/2021/talking.jpg);
}
*/
a.link-box p {
  color: white;
}
a.link-box:hover, a.link-box:active, a.link-box:focus {
  border-color: #33ceff;
  text-decoration: none;
}
a.link-box:hover:after, a.link-box:active:after, a.link-box:focus:after {
  filter: grayscale(0);
}

.margin-bottom {
  margin-bottom: 3em;
}

/* Nav-pills: tab styling, as used on code-of-conduct.html */
.nav-pills {
  background: rgba(31,102,141,.3);
  padding: .5em 0;
}
.nav-pills .nav-item .nav-link {
  color: #33ceff;
}
.nav-pills .nav-item .nav-link.active {
  background: #33ceff;
  color: #fff;
}

.normal-text {
  color: #fff;
  font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Verdana, sans-serif;
  font-size: 13px;
  font-weight: normal;
  line-height: 25px;
  text-transform: none;
}

.photo-splash {
  margin: 0 auto 30px auto;
  position: relative;
}
.photo-splash .caption {
  background: rgba(0,0,0,.66);
  max-height: 100%;
  min-height: 20%;
  padding: 10px 20px;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}
.photo-splash .caption h2 {
  margin-bottom: 5px;
}

/* Presentations segment tab styles (used on IE html/sector-presentations.html) */
.nav.nav-tabs.presentations {
  border-bottom: none;
}
.nav.nav-tabs.presentations li a {
  background: rgba(0,0,0,.33);
  border: 1px solid #33ceff;
  border-radius: 0;
  display: inline-block;
  font-size: 1.33em;
  font-weight: 600;
  margin: 0 .2em .4em 0;
  padding: .5em 2em;
}
.nav.nav-tabs.presentations li a:active, 
.nav.nav-tabs.presentations li a:focus, 
.nav.nav-tabs.presentations li a:hover {
  background: rgba(0,0,0,.66);
  color: #fff;
  text-decoration: none;
}
.nav.nav-tabs.presentations li.intro a {
  color: #fff;
}

.toggle .action, .toggle .thumb {
  cursor: pointer;
  font-weight: bold;
}
.toggle .hide {
  display: none;
}
/* For .toggle nested in .questions, we use a pseudo-element positioned to the left that includes a plus / minus sign, and adjust margins to accommodate. Used for instance on FAQ pages. Relies on /js/scripts.js to toggle .alt class. */
.questions .toggle {
  margin-left: 2.1em;
  position: relative;
  z-index: 1;
}
.questions .toggle:before {
  color: #33ceff;
  content: '+';
  display: block;
  font-size: 2em;
  height: 2em;
  position: absolute;
  top: -.25em;
  left: -1.1em;
  width: 2em;
  z-index: -1;
}
.questions .toggle.alt:before {
  content: '-';
}
.questions .toggle h2.section-title, 
.questions .toggle h3.section-title {
  padding-left: .1em;
}
.questions .toggle .action {
  font-size: 1.2em;
}

.audio, .doc, .email, .pdf, .xls {
  display: inline-block;
  min-height: 32px;
  padding: 15px 0 15px 35px;
}
.audio {
  background: url('../images/page-graphics-usa13/audio-icon.png') no-repeat left;
}
.doc {
  background: url('../images/page-graphics-usa13/doc-icon.png') no-repeat left;
}
.email {
  background: url('../images/page-graphics/email-icon.png') no-repeat left;
}
.pdf {
  background: url('../images/page-graphics-usa13/pdf-icon.png') no-repeat left;
}
.xls {
  background: url('../images/page-graphics-usa13/xls-icon.png') no-repeat left;
}

.travel-icon {
  background-position: center bottom;
  background-repeat: no-repeat;
  content: ' ';
  display: inline-block;
  height: 20px;
  margin: auto;
  width: 20px;
}
.travel-icon.parking {
  background-image: url('../images/icons/parking.png');
}
.travel-icon.pick-up-drop-off {
  background-image: url('../images/icons/pick-up-drop-off.png');
}

/* Site Menu, Event Menu - default small-screen styles - removed for Event Menu for larger screens (below) */
#top-bar-container, 
#main-menu-wrapper {
  background: rgba(0,0,0,.66);
  border-bottom: 1px solid #777;
}

/* Social Icons in top-bar area */
#top-bar-social .container {
  position: relative;
}
#top-bar-social .container .icons {
  position: absolute;
  top: -33px;
  right: 0;
}
#top-bar-social a {
  background-color: #000;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: auto 15px;
  border: 1px solid #555;
  border-radius: 50%;
  display: inline-block;
  height: 29px;
  margin: 0 0 0 .25em;
  transition: all .2s ease-in;
  width: 29px;
}
#top-bar-social a:active, 
#top-bar-social a:hover {
  filter: invert(1);
}
#top-bar-social a.facebook {
  background-image: url(../images/icons/facebook.png);
}
#top-bar-social a.flickr {
  background-image: url(../images/icons/flickr.png);
}
#top-bar-social a.instagram {
  background-image: url(../images/icons/instagram.png);
}
#top-bar-social a.linkedin {
  background-image: url(../images/icons/linkedin.png);
}
#top-bar-social a.mailing-list {
  background-image: url(../images/icons/email.png);
}
#top-bar-social a.twitter {
  background-image: url(../images/icons/x.png);
}
#top-bar-social a.youtube {
  background-image: url(../images/icons/youtube.png);
}
#top-bar-social a.x {
  background-image: url(../images/icons/x.png);
}



/*
#top-bar-social a {
  background-position: center center;
  background-repeat: no-repeat;
  display: inline-block;
  height: 29px;
  transition: all .2s ease-in;
  width: 29px;
}
#top-bar-social a.mailing-list {
  background-image: url(../images/page-graphics/social-email.png);
}
#top-bar-social a.mailing-list:focus, 
#top-bar-social a.mailing-list:hover {
  background-image: url(../images/page-graphics/social-email.png);
}

#top-bar-social a.mailing-list {
  background-image: url(../images/page-graphics/social-email.png);
}
#top-bar-social a.mailing-list:focus, 
#top-bar-social a.mailing-list:hover {
  background-image: url(../images/page-graphics/social-email-over.png);
}

#top-bar-social a.facebook {
  background-image: url(../images/page-graphics/social-fb.png);
}
#top-bar-social a.facebook:focus, 
#top-bar-social a.facebook:hover {
  background-image: url(../images/page-graphics/social-fb-over.png);
}

#top-bar-social a.twitter {
  background-image: url(../images/page-graphics/social-tw.png);
}
#top-bar-social a.twitter:focus, 
#top-bar-social a.twitter:hover {
  background-image: url(../images/page-graphics/social-tw-over.png);
}

#top-bar-social a.linkedin {
  background-image: url(../images/page-graphics/social-in.png);
}
#top-bar-social a.linkedin:focus, 
#top-bar-social a.linkedin:hover {
  background-image: url(../images/page-graphics/social-in-over.png);
}

#top-bar-social a.youtube {
  background-image: url(../images/page-graphics/social-youtube.png);
}
#top-bar-social a.youtube:focus, 
#top-bar-social a.youtube:hover {
  background-image: url(../images/page-graphics/social-youtube-over.png);
}

#top-bar-social a.flickr {
  background-image: url(../images/page-graphics/social-fk.png);
}
#top-bar-social a.flickr:focus, 
#top-bar-social a.flickr:hover {
  background-image: url(../images/page-graphics/social-fk-over.png);
}

#top-bar-social a.x {
  background-image: url(../images/page-graphics/social-x.png);
}
#top-bar-social a.x:focus, 
#top-bar-social a.x:hover {
  background-image: url(../images/page-graphics/social-x-over.png);
}
*/



/* Top Bar - Sub-menu items (default font-size and text-align are for mobile / small screens) */
ul.navbar-nav img {
  width: auto;
}
#top-bar ul.navbar-nav li.nav-item.dropdown {}
#top-bar ul.navbar-nav li.nav-item.dropdown .dropdown-menu {
  background: transparent;
  border-radius: 0;
  font-size: 1.1em;
  margin: 0;
  padding: 0;
}
#top-bar ul.navbar-nav li.nav-item.dropdown a.dropdown-item {
  background: #1f668d;
  border-bottom: 1px solid #000;
  color: #fff;
  padding: 10px 15px;
  text-align: center;
}
#top-bar ul.navbar-nav li.nav-item.dropdown a.dropdown-item:focus,
#top-bar ul.navbar-nav li.nav-item.dropdown a.dropdown-item:hover {
  background: #104a6a;
}
#top-bar ul.navbar-nav li.nav-item.dropdown a.dropdown-item:last-of-type {
  border: none;
}

/* Main Menu - Sub-menu items */
#main-menu .dropdown-menu {
  background: #1f668d;
  border-radius: 0;
  margin: 0;
  min-width: 180px;
  padding: 0;
}
#main-menu .dropdown-menu a.dropdown-item {
  border-bottom: 1px solid rgba(0,0,0,.66);
  color: #fff;
  font-size: 1.1em;
  padding: 7px 7px 7px 15px;
  text-align: center;
  transition-timing-function: ease-out;
  transition: .5s;
}
#main-menu .dropdown-menu a.dropdown-item:last-of-type {
  border-bottom: none;
}
#main-menu .dropdown-menu a.dropdown-item:hover,
#main-menu .dropdown-menu a.dropdown-item:focus {
  background: #104a6a;
  text-shadow: 0 0 5px rgba(255,255,255,.5);
}

/*
  Pop-up 'modal' window styles, used for example on ciso-summit.html pages in event site sub-directories.
  Respectfully adapted from https://codepen.io/sahil4test/pen/xERYvX
*/
.launch-popup .small {
  color: #fff;
}
.launch-popup:hover {
  text-decoration: none;
}
.launch-popup .action {
  margin: 5px 0 15px;
}
.overlay {
  background: rgba(0, 0, 0, .7);
  max-height: 95%; /* some content will be very long, don't let container become taller than screen */
  opacity: 0;
  overflow-y: auto; /* for very large popup content, allow user to vertically scroll */
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  visibility: hidden;
  z-index: 2;
}
.overlay:target {
  visibility: visible;
  opacity: 1;
}
.popup {
  background: #13272e;
  background: linear-gradient(#13272e, #111, #13272e);
  border-radius: 5px;
  margin: 70px auto 35px auto;
  padding: 20px;
  position: relative;
  transition: all 5s ease-in-out;
  width: 50%;
}
.popup:before {
  background: #333;
  background: linear-gradient(#777, 10%, #333);
  border-radius: 5px;
  content: ' ';
  display: block;
  height: calc(100% + 2px);
  position: absolute;
  top: -1px;
  left: -1px;
  width: calc(100% + 2px);
  z-index: -1;
}
.popup h2 {
  margin-top: 0;
}
.popup .close {
  color: #ccc;
  font-size: 30px;
  font-weight: bold;
  position: absolute;
  top: 20px;
  right: 30px;
  text-decoration: none;
  transition: all 200ms;
}
.popup .close:hover {
  color: #fff;
}
.popup .content {
  max-height: 30%;
  overflow: auto;
}
@media screen and (max-width: 700px) {
  .popup {
    width: 70%;
  }
}
/* End pop-up window styles */

/* schedule.html CONFERENCE AT A GLANCE table */
.conference-table table {
  border-collapse: separate;
  width: 100%;
}
.conference-table table tr:first-of-type {
  background-color: transparent;
}
.conference-table table tr th {
  border-bottom: 1px solid #33ceff;
  padding: 0 0 10px 0;
  text-align: center;
}
.conference-table table th span {
  font-size: 15px;
  text-transform: uppercase;
}
/*  Define the background color for all the ODD table columns  */
.conference-table tr td:nth-child(odd){
  background: #122a33;
}
/*  Define the background color for all the EVEN table columns  */
.conference-table tr td:nth-child(even){
  background: #173540;
}
.conference-table tr td {
  border-bottom: 1px dotted #3d94ba;
  padding: 10px 0 10px 4px;
}
.conference-table tr:last-of-type td {
  border-bottom: none;
}
.conference-table a, .conference-table a:hover, .conference-table a:focus {
  background-color: blue;
  background: linear-gradient(to right, #1a658f , #54b4d7);
  border-radius: 10px;
  color: white;
  display: block;
  /*line-height: 70px;*/
  padding-top: 2em;
  padding-bottom: 2em;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  width: 99%;
}
/* In nested table, remove some styles intended only for non-nested items */
.conference-table tr td:nth-child(odd) td, 
.conference-table tr td:nth-child(even) td {
  background: transparent;
  border: none;
}

/* Begin Sponsor News, Latest Intel layout */
.list-by-year ul {
  list-style-image: none;
}
.list-by-year ul li {
  margin-bottom: 2.75em;
}
.list-by-year .description ul li {
  display: table-row;
  margin-bottom: 0;
}
.list-by-year .description ul li a,
.list-by-year .description ul li span {
  display: table-cell;
}
.list-by-year .description ul li a {
  position: relative;
}
.list-by-year .description ul li a:before {
  color: #777;
  content: '-';
  display: block;
  position: absolute;
  top: 0;
  left: -10px;
}
.list-by-year .description ul li span {
  color: #ccc;
  padding: 0 15px 0 0;
  text-align: right;
  white-space: nowrap;
}
/* End of Sponsor News, Latest Intel layout */

/* Used for instance on the Features pages in USA, Asia, et al */
.special-features-header,
.special-features-header small,
.special-features-header span,
.special-features-header strong {
  color: #33ceff;
}
.special-features-header {
  background: rgba(0,0,0,.66) url(../images/silhouette-01.png) no-repeat 0 -25px;
  border: 2px solid #33ceff;
  border-radius: 2px;
  display: block;
  font-size: 25px;
  line-height: 22px;
  margin: 0 0 20px 0;
  min-height: 99px;
  position: relative;
  text-transform: uppercase;
}
.special-features-header img {
  max-height: 70%;
  max-width: 70%;
}
.special-features-header span {
  position: absolute;
  bottom: 5px;
  left: 130px;
  text-align: left;
}
.special-features-header span small {
  display: block;
  font-size: 16px;
  line-height: 16px;
}
.special-features-header span strong { /* Use 'strong' for large text. */
  display: block;
  font-size: 34px;
  font-weight: normal;
  line-height: 26px;
}
.special-features-header .regular-wide {
  font-size: 23px;
}
/* For the 'Features' section on the Business Hall page in event sites: */
.special-features-header.centered {
  background-position: center center;
  background-size: contain;
  display: flex;
  justify-content: center;
  align-items: center;
}
.special-features-header.centered span {
  font-weight: bold;
  position: static;
  text-align: center;
  text-shadow: 0 1px #000;
}


/* special callout for Know Before You Go, on the landing page */
.special-callout {
  background: #000 url(https://www.blackhat.com/images/backgrounds/2020.jpg) left no-repeat; /* Default background image; individual events may have overrides for this in their respective local css/theme.css files. SecTor's default background is in bootstrap/theme-sector.css */
  background-size: cover;
  border-radius: 2px;
  margin: 0 auto 50px;
}
.special-callout div {
  padding: 5px 20px;
}
.special-callout .large {
  font-size: 2.5em;
  line-height: 1em;
}
.special-callout .large a {
  color: #fff;
}
.special-callout a:focus, 
.special-callout a:hover {
  text-decoration: none;
}
.special-callout .fading-bg {
  background: linear-gradient(to bottom, #000, rgba(255,0,0,0));
}
@media (min-width: 576px) {
  .special-callout .fading-bg {

  }
}
@media (min-width: 768px) {
  .special-callout .fading-bg {

  }
}
@media (min-width: 992px) {
  .special-callout .fading-bg {
    background: linear-gradient(to left, #000, rgba(255,0,0,0));
  }
  .special-callout .large {
    font-size: 1.5em;
  }
}
@media (min-width: 1200px) {
  .special-callout .large {
    font-size: 2.5em;
  }
}

/* Special Notification creates a box you can use to draw attention to special messaging. See us-20/scholarships.html for use example. */
.special-notification {
  background-color: rgba(0,0,0,.8);
  border: 1px solid #5bc2e7;
  border-radius: 5px;
  box-shadow: 0 0 10px rgba(51,206,255,.33); /* #33ceff */
  margin: 0 0 2em 0;
  padding: 2em 2em 2em 7.75em;
  position: relative;
}
.special-notification p {
  font-size: 1.2em;
  margin-bottom: 0;
}
.special-notification:before {
  background: #33ceff;
  background: transparent url(../images/portraits/default.png) no-repeat center center;
  background-size: cover;
  border: 1px solid #33ceff;
  border-radius: 50%;
  box-shadow: 0 0 15px 5px rgba(51,206,255,.35); /* RGB for hex: #33ceff */
  color: #000;
  content: ' ';
  display: block;
  font-size: 3em;
  height: 1.5em;
  line-height: 1.5em;
  margin: -.75em 0 0 0;
  position: absolute;
  top: 50%;
  left: .6em;
  text-align: center;
  width: 1.5em;
}

.uppercase {
  text-transform: uppercase;
}

/* Site-wide messaging */
.siteWideMessage {
  background: rgba(0, 0, 0, .7);
  display: block;
  height: 100%;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 99998;
}
.siteWideMessage .innerMessage {
  background: #13272e;
  background: linear-gradient(#13272e, #111, #13272e);
  border: 1px solid lime;
  border-radius: 5px;
  padding: 20px;
  position: relative;
  top: 5%;
  left: 50%;
  margin: 70px auto 5px calc(-25%);
  transition: all 5s ease-in-out;
  width: 50%;
  z-index: 100000;
}

.siteWideMessage .innerMessage .close {
  color: #ccc;
  font-size: 30px;
  font-weight: bold;
  position: absolute;
  top: 20px;
  right: 30px;
  text-decoration: none;
  transition: all 200ms;
}
.siteWideMessage .innerMessage .close:hover {
  color: #fff;
}
/* End: site-wide messaging */

/* Header: wrapper */
.event-reg {
  margin: 20px auto;
  text-align: center;
  text-transform: uppercase;
}

/* Header: event name beneath the logo */

/* Event site header - For the logo + event name */
.event-header-logo {
  color: rgba(255,255,255,.8);
  display: inline-block;
  font-size: 44px;
  letter-spacing: .025em;
  line-height: 32px;
  margin: 0 auto;
  text-transform: uppercase;
  text-shadow: 0 0 2px #000;
}
.event-header-logo,
.event-header-logo:active,
.event-header-logo:focus,
.event-header-logo:hover, 
.event-header-logo a {
  text-decoration: none;
}
.event-header-logo span {
  color: #fff;
  display: block;
  margin: .3em 0;
}
.event-header-info {
  text-align: center;
}

/* Header: 'Register Now' button */
.main-action-button {
  background: #e4e9ec;
  background: linear-gradient(to bottom, #f6f8f9 0%, #f6f8f9 50%, #f6f8f9 50%, #e4e9ec 50%, #e4e9ec 100%);
  border: 1px solid #e4e9ec;
  border-radius: 2px;
  box-shadow: 0 0 15px 5px rgba(51,206,255,.35); /* RGB for hex: #33ceff */
  color: #666;
  display: inline-block;
  font-size: 24px;
  line-height: normal;
  margin: 0 auto 15px;
  padding: 15px 50px;
  position: relative;
  text-shadow: 0 2px #fff;
  transition-timing-function: ease-out;
  transition: .5s;
}
.main-action-button:after {
  clear: both;
  content: "";
  display: table;

}
.main-action-button:active,
.main-action-button:focus,
.main-action-button:hover {
  box-shadow: 0 0 15px 5px rgba(255,255,255,.3);
  color: #555;
  text-decoration: none;
}
.main-action-button span {
  line-height: .75em;
  position: relative;
  bottom: -.02em;
}

/* Header: Date / location information beneath the 'Register Now' button */
.event-date-location {
  background: rgba(0,0,0,.5);
  box-shadow: 0 0 25px 10px rgba(0,0,0,.5);
  color: #fff;
  color: rgba(255,255,255,.9);
  display: block;
  font-size: 26px;
  letter-spacing: .075em;
  line-height: 22px;
  margin: 0 auto;
  padding: 0;
  text-shadow: 0 0 2px #000, 0 0 10px #000;
}
.event-date-location span {
  display: block;
  font-size: 16px;
}
.event-date-location hr {
  background: transparent;
  border: none;
  height: 3px;
  margin: 4px auto;
  padding: 0;
  position: relative;
}
.event-date-location hr:before, .event-date-location hr:after {
  background: #33ceff;
  content: ' ';
  display: inline-block;
  height: 3px;
  position: absolute;
  top: 0;
  width: 50.5%;
}
.event-date-location hr:before {
  background: linear-gradient(to left, #33ceff 70%, rgba(255,0,0,0));
  left: 0;
}
.event-date-location hr:after {
  background: linear-gradient(to right, #33ceff 70%, rgba(255,0,0,0));
  right: 0;
}
/* End - event site header */

/* Event homepage layout */
.event-intro {
  background: rgba(9,31,42,.66); /* Hex: 091f2a */
  border: 1px solid #1f668d;
  border-radius: 2px;
  margin: 30px auto 50px;
  padding: 20px;
}
.event-intro h1 {
  font-size: 2em;
  margin-bottom: 2px;
  text-shadow: 4px 4px 5px rgba(0,0,0,.8);
}
.event-intro hr {
  background: #33ceff;
  background: linear-gradient(to right, #33ceff, rgba(255,0,0,0));
  height: 1px;
  margin: 10px 0 15px 0;
  width: 100%;
}
.event-intro p {
  font-size: 1.2em;
}

/* Buttons */
.btn, 
.course-preview-button {
  /* Note - Some btn attributes need !important, to work consistently on pages with bootstrap-modal CSS, which itself overrides some btn-specific styles and loads after the main theme. */
  background: #1f668d !important;
  border: 1px solid #33ceff !important;
  border-radius: 2px !important;
  display: inline-block;
  font-size: 1em !important;
  line-height: inherit !important;
  margin: 0 0 1em 0;
  padding: .5em 1.5em .5em 1em !important;
  position: relative;
  text-shadow: 2px 2px 2px rgba(0,0,0,.66);
  touch-action: manipulation;
  user-select: none;
  vertical-align: middle;
  white-space: nowrap;
}
.btn:after, 
.view-more:after {
  content:"\00a0\00bb"; /* append &nbsp; then &raquo; - See http://www.evotech.net/blog/2007/04/named-html-entities-in-numeric-order/ */
  display: block;
  margin: 0;
  position: absolute;
  top: .49em;
  right: .5em;
}
.btn, 
.btn:active, 
.btn:focus, 
.btn:hover, 
.course-preview-button, 
.course-preview-button:active, 
.course-preview-button:focus, 
.course-preview-button:hover {
  color: #fff;
}
.btn:hover, 
.course-preview-button:hover {
  background: #33ceff !important;
  cursor: pointer;
  text-shadow: 2px 2px 2px rgba(0,0,0,.9);
}
form input[type=submit].btn {
  height: auto;
}
.view-more {
  display: inline-block;
  margin: 0 0 3em 0;
  padding: 0 .9em 0 0;
  position: relative;
}
.view-more:after {
  top: 0;
  right: 0;
}

/* Featured - event site homepage, 3 boxes across + news items. */
.featured {
  background: #2e2e2e;
  background: linear-gradient(#2e2e2e, #111);
  border-radius: 4px;
  display: block;
  margin: 0 0 1.5em 0;
  padding: 10px 20px 90px;
  position: relative;
}
.featured:before {
  background: #333;
  background: linear-gradient(#777, 10%, #333);
  border-radius: 5px;
  content: ' ';
  display: block;
  height: calc(100% + 2px);
  position: absolute;
  top: -1px;
  left: -1px;
  width: calc(100% + 2px);
  z-index: -1;
}
.featured.highlight {
  background: #f5f5f5;
  background: linear-gradient(#f5f5f5, #b0b0b0);
  color: #444;
}
.featured.highlight a.btn {
  color: #fff;
}
.featured.news {
  border-radius: 1px;
  padding-bottom: 10px;
}
.featured.news:before {
  border-radius: 2px;
}
.featured h2 {
  font-size: 1.4em;
  margin: 0 0 10px 0;
  text-shadow: 0 1px 1px rgba(0,0,0,.66);
}
.featured hr {
  background: transparent;
  margin: 17px auto 20px;
  position: relative;
}
.featured hr:before, .featured hr:after {
  background: #444;
  content: ' ';
  display: inline-block;
  height: 2px;
  position: absolute;
  top: 0;
  width: 50%;
}
.featured hr:before {
  background: linear-gradient(to left, #444, rgba(255,0,0,0));
  left: 0;
}
.featured hr:after {
  background: linear-gradient(to right, #444, rgba(255,0,0,0));
  right: 0;
}
.featured.highlight hr:before {
  background: linear-gradient(to left, #fff, rgba(255,0,0,0));
}
.featured.highlight hr:after {
  background: linear-gradient(to right, #fff, rgba(255,0,0,0));
}
.featured footer {
  height: auto;
  position: absolute;
  bottom: 10px;
  left: 20px;
  width: calc(100% - 40px);
}
.featured p {
  text-shadow: none;
}


/* Section Title - applied to H1/H2/H3/etc to give a linear-bottom border, with a small gradient flourish beneath and towards the left-hand side. */
.section-title {
  border-bottom: 1px solid #33ceff;
  margin: 0 0 20px 0;
  padding: 0 0 0 20px;
  position: relative;
}
.section-title:after {
  background-image: radial-gradient(rgba(255,255,255,.66) 5%, rgba(51,206,255,.5) 30%, transparent 65%);
  content: ' ';
  display: block;
  height: 12px;
  margin: -4px 0 0 0;
  position: absolute;
  top: 100%;
  left: 0;
  width: 164px;
  z-index: -1;
}

/* Useage example: see html/sponsors.html */
.small-logo-lockup {
  display: block;
  padding: 2em 0 3em;
}
.small-logo-lockup.light .special-font-light {
  font-size: .6em;
}
@media (min-width: 576px) {
  .small-logo-lockup.light .special-font-light {
    font-size: .7em;
  }
}
@media (min-width: 768px) {
  .small-logo-lockup.light .special-font-light {
    font-size: .9em;
  }
}
@media (min-width: 992px) {
  .small-logo-lockup.light .special-font-light {
    font-size: .7em;
  }
}
@media (min-width: 1200px) {
  .small-logo-lockup.light .special-font-light {
    font-size: .9em;
  }
}
/* End: .small-logo-lockup */

.thumb {
  border: 2px solid #33ceff;
  display: block;
  margin: 0 auto 5px;
}
.thumb, 
.thumb img {
  width: 100%;
}
.thumb span {
  display: block;
}

/*
  For example of .callout-icon in use, please see root homepage - Webcast and Archive sections
*/
a.callout-icon {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: auto 66%;
  margin: 0 auto 1em auto;
  min-height: 10em;
  position: relative;
  text-align: center;
  width: 100%;
}
a.callout-icon, 
a.callout-icon:before {
  display: block;
}
a.callout-icon:before {
  background: url(../images/callout-bg.png) repeat-y center center;
  background-size: cover;
  border: 1px solid #1d79a0;
  border-radius: 3px;
  content: ' ';
  height: calc(100% + 2px);
  position: absolute;
  top: -1px;
  left: -1px;
  width: calc(100% + 2px);
  z-index: -1;
}
a.callout-icon.play {
  background-image: url(../images/icons/play.png);
}
a.callout-icon.webcast {
  background-image: url(../images/icons/webcast.png);
}

/* Pricing boxes */
.price-box:hover, 
a.price-box-active, 
a.price-box-inactive {
  text-decoration: none;
}
.price-box span, 
a.price-box-active, 
a.price-box-inactive {
  background: #091f2a;
  background: linear-gradient(#091f2a, #000, #091f2a);
  border-radius: 5px;
  color: #333;
  display: block;
  font-size: 1.4em;
  font-weight: bold;
  line-height: normal;
  margin: 0 auto 10px;
  min-height: 120px;
  padding: 0 0 10px 0;
  position: relative;
  text-align: center;
  text-decoration: none !important;
  transition: all .2s ease-in;
}
a.price-box-active h2, 
a.price-box-inactive h2 {
  font-weight: bold;
}
a.price-box-active h2, 
a.price-box-active h3, 
a.price-box-inactive h2, 
a.price-box-inactive h3 {
  line-height: normal;
  margin: 0;
  text-shadow: none;
}
a.price-box-active h3, 
a.price-box-inactive h3 {
  font-size: 1em;
  font-weight: normal;
}
/* For gradient border, layer pseudo-element 'before' behind parent, increasing size by 1px all around */
.price-box span:before, 
a.price-box-active:before, 
a.price-box-inactive:before {
  background: #4ea6c6;
  background: linear-gradient(#4ea6c6, #000, #1a658f);
  border-radius: 5px;
  content: ' ';
  display: block;
  height: calc(100% + 2px);
  position: absolute;
  top: -1px;
  left: -1px;
  width: calc(100% + 2px);
  z-index: -1;
}
.price-box span.current:before, 
a.price-box-active:before {
  background: #b6b6b6;
}
.price-box span header, 
a.price-box-active .left, 
a.price-box-active:hover .left, 
a.price-box-inactive .left, 
a.price-box-inactive:hover .left {
  border-bottom: 1px solid #234455;
  color: #eee;
  font-size: .8em;
  padding: 5px 10px;
  text-align: left;
}
.price-box span:hover,
.price-box span:hover header, 
a.price-box-active:hover, 
a.price-box-active:hover .left, 
a.price-box-inactive:hover, 
a.price-box-inactive:hover .left {
  color: #fff;
  text-shadow: 0 0 5px rgba(255,255,255,.5);
}
.price-box span strong, 
a.price-box-active h2, 
a.price-box-inactive h2 {
  display: block;
  font-size: 2.2em;
}
.price-box span.current, 
a.price-box-active {
  background: #f5f5f5;
  background: linear-gradient(#f5f5f5, #b0b0b0);
  color: #333;
}
.price-box span.current:hover, 
a.price-box-active:hover {
  box-shadow: 0 0 20px 0 rgba(255,255,255,.66);
}
.price-box span.current header, 
a.price-box-active h2 {
  border-color: #b6b6b6;
  box-shadow: 0 5px 10px rgba(124,124,124,.1);
  color: #333;
}
.price-box:hover span.current,
.price-box:hover span.current hover, 
a.price-box-active, 
a.price-box-active:hover {
  color: #111;
  text-shadow: 0 0 5px rgba(255,255,255,.5);
}
a.price-box-active .left, 
a.price-box-active:hover .left {
  color: #333;
}
a.price-box-active br, 
a.price-box-inactive br {
  display: none;
  height: 0;
  width: 0;
}
/* Price boxes for group registration */
.price-box span.group {
  background: #24688c;
  background: linear-gradient(#24688c, #263744, #24688c);
  color: #fff;
}
.price-box span.group header {
  box-shadow: 0 5px 10px rgba(0,0,0,.15);
}
.price-box span.group h2,
.price-box span.group h3 {
  color: #eee;
}
.price-box span.group:hover,
.price-box span.group:hover h2,
.price-box span.group:hover h3 {
  color: #fff;
  text-shadow: 0 0 2px rgba(255,255,255,.5);
}
/* End: Price boxes for group registration */
/* Price boxes & status bars for canceled courses */
.training-data .course-progress-bar.canceled {
  background: #333;
  border-radius: 5px;
  box-shadow: inset -1px -1px 3px #8B0000;
  text-transform: uppercase;
}
.training-data .course-progress-bar-fill.canceled {
  background: none;
}
.price-box-active.canceled, 
.price-box-inactive.canceled {
  background: #565656;
  background: linear-gradient(#565656, #343434);
}
.price-box-active.canceled:before,
.price-box-inactive.canceled:before {
  background: #111;
}
.price-box-active.canceled .left, 
.price-box-inactive.canceled .left {
  border-color: #222;
  box-shadow: 0 5px 10px rgba(0,0,0,.1);
}
.price-box-active.canceled:hover, 
.price-box-inactive.canceled:hover {
  box-shadow: none;
  cursor: auto;
}
.price-box-active.canceled:hover h2,
.price-box-active.canceled:hover h3, 
.price-box-inactive.canceled, 
.price-box-inactive.canceled h2,
.price-box-inactive.canceled h3, 
.price-box-inactive.canceled:hover, 
.price-box-inactive.canceled:hover h2,
.price-box-inactive.canceled:hover h3 {
  color: #333;
  text-shadow: none;
}
.text-muted .price-box {
  opacity: .66;
}
/* End: Price boxes & status bars for canceled courses */
/* End pricing boxes */

.left-col-link-uptri {
  list-style: none;
  margin: 0 0 20px 0;
  padding: 0;
  width: 100%;
}
.left-col-link-uptri li {
  display: table;
  margin: 0;
  padding: 0 0 20px 0;
  width: 100%;
}
.left-col-link-uptri li a {
  background: #20678e;
  border: 1px solid #36daff;
  border-radius: 2px;
  color: #fff;
  display: table-cell;
  font-size: 1.1em;
  font-weight: bold;
  margin: 0 auto 20px;
  min-height: 55px;
  padding: 15px 10px 15px 55px;
  position: relative;
  text-decoration: none;
  text-shadow: 1px 1px 2px #333;
  text-transform: uppercase;
  vertical-align: middle;
  width: 100%;
}
.left-col-link-uptri li a:active,
.left-col-link-uptri li a:hover {
  text-decoration: none;
}
.left-col-link-uptri li a:before {
  background: #263745;
  border-radius: 50px;
  color: #36daff;
  content: '\00a0\25B6';
  display: block;
  height: 35px;
  line-height: 36px;
  text-align: center;
  width: 35px;
  position: absolute;
  top: 50%;
  left: 10px;
  margin-top: -18px;
}
.left-col-link-uptri li a:hover span:before,
.left-col-link-uptri li a:active span:before {
  color: #9cedff;
  text-shadow: 0 0 25px #000;
}

.right-col-anchors {
  list-style: none;
  margin: 0;
  padding: 0;
}
.right-col-anchors li a {
  background: #175681;
  background: linear-gradient(to bottom, rgba(23,86,129,1) 0%, rgba(0,26,45,1) 100%); /* #175681 to #001a29 */
  border: 1px solid #1c6ca2;
  color: #fff;
  display: block;
  font-size: 1.3em;
  font-weight: 700;
  line-height: 1.5em;
  margin: 0 0 .5em 0;
  padding: .5em .5em .5em 3.33em;
  position: relative;
  text-decoration: none;
  text-transform: uppercase;
  transition: none;
  width: 100%;
}
.right-col-anchors li:last-of-type a {
  margin-bottom: 2em;
}
.right-col-anchors li a:active, 
.right-col-anchors li a:focus, 
.right-col-anchors li a:hover {
  background: #195f8e;
}
.right-col-anchors li a:after {
  content: '';
  display: block;
  height: 90%;
  width: 2em;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: .66em;
}
.right-col-anchors li a.email:after {
  background: url(../images/page-graphics/email-icon.png) no-repeat left center;
  background-size: contain;
}
.right-col-anchors li a.pdf:after {
  background: url(../images/page-graphics-usa13/pdf-icon.png) no-repeat left center;
  background-size: contain;
}


/* Button to link to sub-section - used in side column */
.subsection-button {
  background: #20678e;
  border: 1px solid #36daff;
  border-radius: 2px;
  display: table;
  margin: 0 auto 20px;
  min-height: 55px;
  padding: 10px;
  position: relative;
  text-decoration: none;
  text-shadow: 1px 1px 2px #333;
  text-transform: uppercase;
  width: 100%;
}
.subsection-button:active,
.subsection-button:hover {
  text-decoration: none;
}
.subsection-button span {
  color: #fff;
  display: table-cell;
  font-size: 1.1em;
  font-weight: bold;
  padding-left: 46px;
  vertical-align: middle;
}
.subsection-button span:before {
  background: #263745;
  border-radius: 50px;
  color: #36daff;
  content: '\00a0\25B6';
  display: block;
  height: 35px;
  line-height: 36px;
  text-align: center;
  width: 35px;
  position: absolute;
  top: 50%;
  left: 10px;
  margin-top: -18px;
}
.subsection-button:hover span:before,
.subsection-button:active span:before {
  color: #9cedff;
  text-shadow: 0 0 25px #000;
}

/* For use at the top of pages like /trainings/index.html, /briefings/index.html, et al */
.subsection-header {
  background: #000 url(../images/subsection-header-bg.png) no-repeat center right;
  background-size: cover;
  border: 1px solid #6acdec;
  margin: 0 0 20px 0;
  min-height: 123px;
  text-transform: uppercase;
  width: 100%;
}
.subsection-header div {
  color: #fff;
  margin: 15px auto 0 30px;
  max-width: 230px;
  text-align: right;
}
.subsection-header img {
  width: 100%;
}
.subsection-header span {
  color: rgba(255,255,255,.9);
  display: inline-block;
  font-size: 2em;
  line-height: .75em;
  margin: 5px 3px 5px 0;
}
.subsection-header span small {
  font-size: .75em;
  line-height: .55em;
}
/* SecTor variant for non-event pages, like ../html/tracks-sector.html */
.subsection-header.sector {
  background-image: url(../images/venues/sector_cityscape_bwr1.jpg);
  background-image: url(../images/backgrounds/sector-b.jpg);
  border-color: #777;
}
.subsection-header.sector:hover {
  border-color: #EF3B39;
}
.subsection-header.sector span {
  margin-top: -.1em;
  padding-bottom: .25em;
}

/*
  Item Box is used for instance on /briefings/index.html.
  It is similar to the treatment used on /trainings/index.html but not identical.  See trainings-2018.css for styles used there.
  Item Box is intended to be used for generic non-linked containers which may or may not contain links themselves, whereas the Trainings layout is itself a single linked box.
  If presented inside a container with class 'd-flex' applied, Item Box siblings will use Flex.
*/
.item-box {
  background: linear-gradient(#002938, #000);
  color: #fff;
  display: inline-block;
  max-width: 100%;
  min-height: 200px;
  min-width: 100%;
  padding: 15px 20px;
}
.item-box:hover {
  text-decoration: none;
}
.item-box,
.item-box .event-name {
  border: 1px solid #6acdec;
}
.item-box .event-name {
  background: #000;
  padding: 10px;
  margin: 0 auto 10px auto;
  text-align: center;
}
.item-box .event-name div {
  font-size: 14px;
  line-height: 16px;
  margin: 4% 4% 0 0;
  text-align: right;
  text-transform: uppercase;
}
.item-box .event-name img {
  margin: 0 auto;
  max-width: 95%;
}
.item-box strong {
  font-size: 1.2em;
  font-weight: normal;
  text-transform: uppercase;
}

/*
  Responsive iframes for Youtube, courtesy of:
  https://www.itsupportguides.com/knowledge-base/website-tips/how-to-make-embed-youtube-iframe-mobile-responsive/
*/
iframe[src*=youtube] {
  display: block;
  margin: 0 auto;
  max-width: 100%;
}

/* Page anchors (left col in-page anchor links) */
.left-col-anchors {
  list-style-image: none;
  list-style-type: none;
  margin: 1em auto 3em auto;
  padding: 0;
}
.left-col-anchors li {
  border: 1px solid #36daff;
  border-top: none;
  font-size: 1.2em;
  font-weight: bold;
  line-height: 1.1em;
  padding: 0;
}
.left-col-anchors li:first-of-type {
  border-top: 1px solid #36daff;
}
.left-col-anchors a {
  background: rgba(0,0,0,.66);
  color: #fff;
  display: block;
  padding: 10px;
}
.left-col-anchors a:active, .left-col-anchors a:hover {
  background: rgba(0,0,0,.9);
  text-decoration: none;
}

/* Basic table styles */
table {
  width: 100%;
}
table thead tr th {
  background: #3d96d0;
  font-size: 1.2em;
}
table thead tr th, 
table tbody tr td {
  border: 2px solid #000;
  padding: 5px 10px;
}
table tbody tr td img {
  width: auto;
}
table tbody tr:nth-child(odd) td {
  background: #444;
}
table tbody tr:nth-child(even) td {
  background: #333;
}
/* Pass Comparison, other 'generic' tables */
table.generic, 
.field-item table {
  border-collapse: separate;
  border-spacing: 2px;
  margin: 0 auto 3em auto;
  width: 100%;
}
table.generic th, 
.field-item table th {
  background-color: #333;
  min-width: 15%;
  padding: 5px;
  text-align: left;
}
table.generic thead tr th, 
table.generic tbody tr td {
  border: none;
}
/* Use for any row of THs that is not the very first */
table.generic tr.subheader th, 
.field-item table thead tr th {
  border-top: 1px solid #3d96d0;
  padding-top: 45px;
}
table.generic tbody tr:first-child td, 
.field-item table tr:first-child td {
  border-top: 0;
}
table.generic tbody tr:last-child td, 
.field-item table tr:last-child td {
  border-bottom: 1px solid #1a658f;
}
table.generic tbody tr:nth-child(odd) td, 
.field-item table tr:nth-child(odd) td {
  background-color: #191919;
}
table.generic tbody tr:nth-child(even) td, 
.field-item table tr:nth-child(even) td {
  background-color: #000;
}
table.generic tbody tr td, 
.field-item table tr td {
  padding: 8px;
  border-top: 1px solid #1a658f;
  vertical-align: top;
}
table.generic tbody tr td:nth-child(1), 
.field-item table tr td:nth-child(1) {
  border-left: none;
}
/* .whos-hiring variant used on event pages like whos-hiring.html. Styles here are for handling an assumed image in the first table data cell. */
table.whos-hiring tr td:first-child {
  text-align: center;
  vertical-align: middle;
}
table.whos-hiring tr td:first-child {
  max-height: 90%;
  max-width:  90%;
}

/* Pass Comparison-specific table styles, for use example see us-22/pass-comparison.html */
table.pass-comparison tbody tr:nth-child(odd) td, 
table.pass-comparison tbody tr:nth-child(even) td {
  background-color: transparent;
}
table.pass-comparison tbody tr td, 
table.pass-comparison tbody tr:last-child td {
  border: none;
}
table.pass-comparison th {
  min-width: 0%;
  text-transform: uppercase;
}
table.pass-comparison td, 
table.pass-comparison th {
  text-align: center;
  vertical-align: middle;
}
table.pass-comparison td.booth-staff, 
table.pass-comparison th.booth-staff, 
table.pass-comparison tr:nth-child(odd) td.booth-staff, 
table.pass-comparison tr:nth-child(even) td.booth-staff {
  background-color: #3468d7;
}
table.pass-comparison td.in-person, 
table.pass-comparison th.in-person, 
table.pass-comparison tr:nth-child(odd) td.in-person, 
table.pass-comparison tr:nth-child(even) td.in-person {
  background-color: #4da5e9;
}
table.pass-comparison td.virtual, 
table.pass-comparison th.virtual, 
table.pass-comparison tr:nth-child(odd) td.virtual, 
table.pass-comparison tr:nth-child(even) td.virtual {
  background-color: #c63fa7;
}

/* Styles for breakdowns and stats on Sponsors pages */
.breakdown {
  border: 1px solid #222;
  border-left: none;
  display: flex;
  margin: 0 0 10px 0;
}
.breakdown header {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
  min-height: 5em;
  padding: 5px 10px;
  width: 35%;
}
.breakdown header strong {
  display: block;
  font-size: 3.5em;
  line-height: .75em;
}
.breakdown header strong sup {
  font-size: .4em;
}
.breakdown header span {
  position: static;
  text-align: center;
}
.breakdown ul, .top-industries ul {
  list-style-image: none;
  margin-bottom: 0;
  padding-bottom: 0;
}
.breakdown ul {
  display: inline-block;
  margin: 0;
  padding: 5px 10px 5px 25px;
}
.breakdown ul li, .top-industries ul li {
  position: relative;
}
.breakdown ul li::before, .top-industries ul li::before {
  content: "\2192"; /* Right arrow. See http://www.evotech.net/blog/2007/04/named-html-entities-in-numeric-order/ */
  display: inline-block;
  position: absolute;
  top: 0;
  left: -17px;
}
.breakdown header, .top-industries header {
  color: #fff;
  text-transform: uppercase;
}

.breakdown.dark header {
  background: #941681;
}
.breakdown.dark ul li::before {
  color: #941681;
}
.breakdown.light header {
  background: #2cc9e8;
}
.breakdown.light ul li::before {
  color: #2cc9e8;
}
.breakdown.medium header {
  background: #00c257;
}
.breakdown.medium ul li::before {
  color: #00c257;
}

.graph-h {/* Horizontal Graph, for use IE on html/become-a-sponsor.html */
  background: #333;
  border: 1px solid #555;
  border-radius: 3px;
  display: block;
  font-size: 1.1em;
  height: 1.75em;
  margin-top: -3px;
  padding: 1px;
  text-align: center;
  width: 100%;
}
.graph-h div {
  border-radius: 2px;
  display: block;
  height: 100%;
  min-width: 1em;
  padding: 1px 0;
}

table.invitee-breakdown {
  margin-bottom: 2em;
}
table.invitee-breakdown tbody tr td {
  background-color: #4da5e9;
  text-align: center;
  width: 50%;
}
table.invitee-breakdown tbody tr td h3, 
table.invitee-breakdown tbody tr td p {
  margin: 0;
  padding: 0;
}
table.invitee-breakdown tbody tr td h3 large {
  font-weight: bold;
}

ul.chart-legend li {
  list-style-image: none;
  list-style-type: none;
  padding-left: .75em;
  position: relative;
}
ul.chart-legend li::before {
  background-color: gray;
  content: " ";
  display: block;
  height: 10px;
  position: absolute;
  top: .25em;
  left: -.75em;
  width: 10px;
}

ul.chart-legend li.green::before, .graph-h .green {
  background-color: #54bb5d;
}
ul.chart-legend li.mustard::before, .graph-h .mustard {
  background-color: #faa61d;
}
ul.chart-legend li.purple::before, .graph-h .purple {
  background-color: #903b83;
}
ul.chart-legend li.sky::before, .graph-h .sky {
  background-color: #58c4eb;
}
ul.chart-legend li.teal::before, .graph-h .teal {
  background-color: #1b6791;
}

/* Top Industries */
.top-industries ul {
  border: 1px solid #222;
  border-top: none;
  padding: 15px 0 10px 22px;
}
.top-industries header {
  background-color: #606060; /* Default */
  background-position: right 10px center;
  background-repeat: no-repeat;
  background-size: 20px 20px;
  font-size: 14px;
  line-height: normal;
  margin: 0;
  padding: 10px;
}
.top-industries header span {
  display: block;
  font-size: 11px;
}
/* Top Industries - Financial */
.top-industries .financial header {
  background-color: #2cc9e8;
  background-image: url(../images/icons/financial.png);
}
.top-industries .financial ul li::before {
  color: #2cc9e8;
}
/* Top Industries - Government */
.top-industries .government header {
  background-color: #00c257;
  background-image: url(../images/icons/government.png);
}
.top-industries .government ul li::before {
  color: #00c257;
}
/* Top Industries - Healthcare */
.top-industries .healthcare header {
  background-color: #941681;
  background-image: url(../images/icons/healthcare.png);
}
.top-industries .healthcare ul li::before {
  color: #941681;
}
/* Top Industries - Manufacturer */
.top-industries .manufacturer header {
  background-color: #9168b4;
  background-image: url(../images/icons/manufacturer.png);
}
.top-industries .manufacturer ul li::before {
  color: #9168b4;
}
/* Top Industries - Military */
.top-industries .military header {
  background-color: #f9a61a;
  background-image: url(../images/icons/military.png);
}
.top-industries .military ul li::before {
  color: #f9a61a;
}
/* Top Industries - Security */
.top-industries .security header {
  background-color: #008194;
  background-image: url(../images/icons/security.png);
}
.top-industries .security ul li::before {
  color: #008194;
}
/* Top Industries - Telecom */
.top-industries .telecom header {
  background-color: #676767;
  background-image: url(../images/icons/telecom.png);
}
.top-industries .telecom ul li::before {
  color: #676767;
}
/* Top Industries - Transportation */
.top-industries .transportation header {
  background-color: #672f90;
  background-image: url(../images/icons/transportation.png);
}
.top-industries .transportation ul li::before {
  color: #672f90;
}
.top-industries ul {
  margin: 0 0 15px 0;
}
/* End - Sponsors page graph styles */

/*
  Time-zone Banner
  On some events, we insert a banner to denote time-zone or other special messaging after the event menu.
  This is appended to the menu via navAppendMsg() in ../[event-name]/js/scripts.js
*/
#event-main-nav-append {
  background: #1a658f;
  display: block;
  height: auto;
  margin: 0 auto;
  overflow-x: hidden;
  text-align: center;
  width: 100%;
}
#event-main-nav-append p {
  margin: 0;
}
/* Larger screens/devices only, as the Time-zone banner can otherwise cause horizontal overflow on small screens */
@media (min-width: 576px) {
  #event-main-nav-append {
    overflow-x: visible;
    position: relative;
    width: 300px;
  }
  #event-main-nav-append:before, 
  #event-main-nav-append:after {
    content: ' ';
    display: block;
    height: 100%;
    position: absolute;
    top: 0;
    width: 33%;
  }
  #event-main-nav-append:before {
    background: linear-gradient(to left, #1a658f, transparent);
    left: -33%;
  }
  #event-main-nav-append:after {
    background: linear-gradient(to right, #1a658f, transparent);
    right: -33%;
  }
}
/* End - Time-zone Banner */

/* Partner logos across bottom of certain pages */
.partners {
  /*background: rgba(19,39,46,.9);*/ /* #13272e */
  background: linear-gradient(#13272e, #111, #13272e);
  border-bottom: 1px solid #444;
  border-radius: 2px;
  margin: 0 auto 3em auto;
  position: relative;
  text-align: center;
}
.partners a {
  background: #222;
  border: 1px solid #33ceff;
  border-radius: 2px;
  display: inline-block;
  line-height: 90px;
  margin: 10px;
  min-height: 90px;
  padding: 0 20px;
}
.partners a:active,
.partners a:focus,
.partners a:hover {
  box-shadow: 0 0 10px rgba(51,206,255,.33); /* #33ceff */
  text-decoration: none;
}
.partners a img {
  max-height: 80px;
  max-width: 110px;
  opacity: .9;
}
.partners a:hover img {
  opacity: 1;
}
.partners.landing { /* to use the horizontal version on an events landing page */
  background: linear-gradient(#13272e, transparent);
  border: none;
  margin: 0 auto;
}
/* Partners - tall version */
.home-sponsor-anchor a, 
.sponsor-anchor a/*, 
.exhibitor-logo*/ {
  background: #091f2a;
  background: linear-gradient(#091f2a, #000, #091f2a);
  border-radius: 3px;
  border-top: 1px solid #51a4c2;
  border-bottom: 1px solid #2f6174;
  display: block;
  margin: 0 auto 20px;
  min-height: 7.5em;
  padding: 0;
  position: relative;
  text-align: center;
}
.home-sponsor-anchor img, 
.sponsor-anchor img {
  height: auto;
  margin: auto;
  max-height: 5em;
  max-width: 12em;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: .9;
  width: auto;
}
.home-sponsor-anchor a:hover, 
.sponsor-anchor a:hover {
  text-decoration: none;
}
.home-sponsor-anchor a:active img, .home-sponsor-anchor a:hover img, 
.sponsor-anchor a:active img, .sponsor-anchor a:hover img {
  opacity: 1;
}

/* event-sponsors page */
.exhibitor-logo {
  display: table-cell;
  float: right;
  line-height: 20px;
  margin-left: 20px;
  max-height: 80px;
  max-width: 140px;
  min-height: auto;
  padding: 10px;
  vertical-align: middle;
}
.turnbuckle_plus img {
  visibility: hidden;
}
.turnbuckle_plus.img {
  background: url('../images/turnbuckle-plus.png') no-repeat top left;
  padding-bottom: 1px;
}
.turnbuckle_plus.img.selected {
  background: url('../images/turnbuckle-minus.png') no-repeat top left;
}
table.exhibitorList img.social-icon {
  display: inline-block;
  margin: 0 .5em 0 0;
}

/* Right sidebar */
.sidebar h2 {
  background: linear-gradient(to right, #13272e, rgba(0,0,0,0));
  font-size: 1.2em;
  margin: 0 0 5px 0;
  padding: 5px 10px;
}
h2 span {
  color: #33ceff;
}

.sidebar article {
  background: rgba(31,102,141,.3); /* Hex: #1f668d */
  font-size: .9em;
  margin: 0 auto 3em auto;
  padding: 10px 10px 1px 10px;
}
.sidebar article ul li {
  border-bottom: 1px solid #01536d;
  padding: 10px 0;
}

main article ul li {
  min-height: 20px;
}
main article ul li:last-of-type {
  border: none;
}

main ul.articles li { /* Used for example on /html/press.html */
  border-bottom: 1px solid #333;
  list-style-image: none;
  padding: 2em 0;
}

/* Fieldset is used for example on /sponsor-news.html in the Sponsor Posts section */
main fieldset {
  border-radius: 3px;
  margin: 0 auto .75em;
  position: relative;
}
main fieldset:before {
  background: #13272e;
  background: linear-gradient(transparent, #111, #13272e);
  border-bottom: 1px solid #444;
  border-radius: 5px;
  content: ' ';
  display: block;
  height: calc(100% + 2px);
  position: absolute;
  top: -1px;
  left: -1px;
  width: calc(100% + 2px);
  z-index: -1;
}
main fieldset legend {
  font-size: 1.3em;
  font-weight: bold;
  margin:  0 .25em .5em;
  padding: 0 0 0 .5em;
}
main fieldset ul {
  margin: 0 0 .75em;
}

main .interview blockquote {
  border: none;
  font-size: inherit;
  margin: 0 0 3em;
  padding: 0 0 0 2em;
}
main .interview .circle { /* Use for images in interviews, to give a 'chat'-style interface */
  border: 2px solid #33ceff;
  border-radius: 50%;
  box-shadow: 0 0 15px 5px rgba(51,206,255,.35); /* RGB for hex: #33ceff */
  margin: -.25em auto 3em auto;
}

/*
  Social icons within main content area (see: review-board.html for instance)
*/
main .social-icon {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  cursor: pointer;
  display: block;
  height: 35px;
  margin: auto auto auto 10px;
  position: relative;
  text-decoration: none;
  transition: all .5s ease-in;
  width: 35px;
}
main .social-icon:before {
  background: rgba(31,102,141,.66);;
  content: ' ';
  border-radius: 50%;
  display: block;
  height: calc(100% + 20px);
  padding: 5%;
  position: absolute;
  top: -10px;
  right: 0;
  bottom: 0;
  left: -10px;
  width: calc(100% + 20px);
  z-index: -1;
}
main .social-icon:active:before, 
main .social-icon:focus:before, 
main .social-icon:hover:before {
  background: rgba(31,102,141,.9);;
  opacity: 1;
}
main .social-icon.facebook {
  background-image: url(../images/icons/facebook.png);
}
main .social-icon.flickr {
  background-image: url(../images/icons/flickr.png);
}
main .social-icon.instagram {
  background-image: url(../images/icons/instagram.png);
}
main .social-icon.linkedin {
  background-image: url(../images/icons/linkedin.png);
}
main .social-icon.twitter {
  background-image: url(../images/icons/twitter.png);
}
main .social-icon.youtube {
  background-image: url(../images/icons/youtube.png);
}
main .social-icon.x {
  background-image: url(../images/icons/x.png);
}


/*
  Informa footer styles
*/
#informa-footer {
  border-top: 1px solid #5d8da3;
  clear: both;
  font-size: 18px;
  line-height: 28px;
  margin: 30px 0 0 0;
}
#informa-footer *, 
#informa-footer *:before, #informa-footer *:after {
  box-sizing: border-box;
}
#informa-footer ol, 
#informa-footer ul {
  margin-top: 0;
  margin-bottom: 0;
}
#informa-footer .divisional-footer-container {
  margin: 0 auto;
  max-width: 1400px;
  padding-right: 100px;
  padding-left: 100px;
  overflow-x: unset;
}
#informa-footer .divisional-footer {
  background: linear-gradient(to bottom, rgba(0,0,0,.5), 10%, #13242c);
}
#informa-footer .divisional-footer.color {
  background: rgba(20,41,50,.66);
  position: relative;
}
#informa-footer .divisional-footer.color:before {
  background: transparent url(../images/page-graphics-18/BH_BodyBG.jpg) no-repeat center top;
  background-size: cover;
  content: ' ';
  display: block;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: -1;
}
#informa-footer .divisional-footer .row {
  margin: 0 auto;
  overflow: hidden;
}
#informa-footer .row:before, #informa-footer .row:after {
  content: " ";
  display: table;
}
#informa-footer .row:after {
  clear: both;
}

#informa-footer .divisional-footer .divisional-footer-container .discover, 
#informa-footer .divisional-footer .divisional-footer-container .working {
  padding-bottom: 30px;
}
#informa-footer .divisional-footer .divisional-footer-container .heading {
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  padding: 35px 0 25px;
  text-transform: uppercase;
}
#informa-footer .divisional-footer .divisional-footer-container .brand-name > * {
  padding-left: 20px;
}
#informa-footer > div[class*='col-'] {
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}
#informa-footer .divisional-footer .divisional-footer-container .discover ul {
  padding: 0;
}
#informa-footer .divisional-footer .divisional-footer-container .discover ul li {
  padding-bottom: 10px;
  vertical-align: top;
  width: 42%;/* Note: was 43% when more than 4 items were in 'Discover more...' column. */
}
#informa-footer .divisional-footer .divisional-footer-container .working ul {
  border-right: 1px solid #5d8da3;
  height: auto;
  padding: 0;
}
#informa-footer .divisional-footer .divisional-footer-container .working ul li {
  padding-right: 0;
  padding-bottom: 10px;
  vertical-align: top;
}
#informa-footer .divisional-footer .divisional-footer-container ul.list-unstyled, 
#informa-footer .divisional-footer .divisional-footer-container ul.list-inline {
  display: block;
  list-style: none;
  list-style-type: disc;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 0;
  margin-inline-end: 0;
  padding-inline-start: 40px;
  padding-left: 0;
}
#informa-footer .divisional-footer .divisional-footer-container ul.list-inline {
  float: right;
  font-size: 0;
  margin-left: -15px;
  margin-right: -15px;
}
#informa-footer .divisional-footer:not(.color) .divisional-footer-container ul.list-inline {
  margin-top: 20px;
}
#informa-footer .divisional-footer .divisional-footer-container ul.list-inline > li {
  display: inline-block;
  font-size: 1rem;
  margin-left: 15px;
  margin-right: 15px;
  padding: 10px 0;
  word-break: break-word;
}
#informa-footer .divisional-footer .divisional-footer-container ul.list-inline li a {
  color: #fff;
  font-size: 14px;
}
#informa-footer .divisional-footer .divisional-footer-container ul.list-inline.social-icons {
  float: none;
  margin-right: -12.5px;
  margin-left: -12.5px;
  margin-left: 8px;
}
#informa-footer .divisional-footer .divisional-footer-container ul.list-inline.social-icons li a i.trigger-sc-event {
  cursor: pointer;
  display: block;
  height: 35px;
  position: relative;
  text-decoration: none;
  width: 35px;
}
#informa-footer .divisional-footer .divisional-footer-container ul.list-inline.social-icons li a i.trigger-sc-event:before {
  background: #fff;
  background: rgba(255,255,255,.9);
  border-radius: 35px;
  content: ' ';
  display: block;
  height: 100%;
  transition: all .2s ease-in;
  width: 100%;
  z-index: -1;
}
#informa-footer .divisional-footer .divisional-footer-container ul.list-inline.social-icons li a i.trigger-sc-event:hover:before, 
#informa-footer .divisional-footer .divisional-footer-container ul.list-inline.social-icons li a i.trigger-sc-event:active:before {
  background: #fff;
  box-shadow: 0 0 15px rgba(51,206,255,.66);
}
#informa-footer .divisional-footer .divisional-footer-container ul.list-inline.social-icons li a i.trigger-sc-event:after {
  content: ' ';
  display: block;
  filter: invert(1);
  height: 100%;
  margin: auto;
  max-height: 50%;
  max-width: 50%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
}
#informa-footer .divisional-footer .divisional-footer-container ul.list-inline.social-icons li a i.trigger-sc-event.email-white:after {
  background: url(../images/icons/email.png) no-repeat center center;
  background-size: contain;
}
#informa-footer .divisional-footer .divisional-footer-container ul.list-inline.social-icons li a i.trigger-sc-event.facebook-white:after {
  background: url(../images/icons/facebook.png) no-repeat center center;
  background-size: contain;
}
#informa-footer .divisional-footer .divisional-footer-container ul.list-inline.social-icons li a i.trigger-sc-event.flickr-white:after {
  background: url(../images/icons/flickr.png) no-repeat center center;
  background-size: contain;
}
#informa-footer .divisional-footer .divisional-footer-container ul.list-inline.social-icons li a i.trigger-sc-event.instagram-white:after {
  background: url(../images/icons/instagram.png) no-repeat center center;
  background-size: contain;
}
#informa-footer .divisional-footer .divisional-footer-container ul.list-inline.social-icons li a i.trigger-sc-event.linkedin-white:after {
  background: url(../images/icons/linkedin.png) no-repeat center center;
  background-size: contain;
}
#informa-footer .divisional-footer .divisional-footer-container ul.list-inline.social-icons li a i.trigger-sc-event.twitter-white:after {
  background: url(../images/icons/x.png) no-repeat center center;
  background-size: contain;
}
#informa-footer .divisional-footer .divisional-footer-container ul.list-inline.social-icons li a i.trigger-sc-event.youtube-white:after {
  background: url(../images/icons/youtube.png) no-repeat center center;
  background-size: contain;
}
#informa-footer .divisional-footer .divisional-footer-container ul.list-inline.social-icons li a i.trigger-sc-event.x-white:after {
  background: url(../images/icons/x.png) no-repeat center center;
  background-size: contain;
}

#informa-footer .divisional-footer .divisional-footer-container .footer-icons .logo {
  padding-right: 0;
  padding-left: 0;
}
#informa-footer .divisional-footer .divisional-footer-container .footer-icons .logo img {
  margin: 0;
  max-width: 240px;
  vertical-align: middle;
}
#informa-footer .divisional-footer .divisional-footer-container .footer-icons > * {
  display: inline-block;
  float: none;
  font-size: 1rem;
  vertical-align: middle;
}
#informa-footer .divisional-footer .divisional-footer-container .privacy-policy {
  border-top: 1px solid #5d8da3;
  font-size: 14px;
  max-width: 1200px;
  padding: 35px 15px;
  text-align: right;
}
#informa-footer .divisional-footer .divisional-footer-container .privacy-policy .col-md-12 {
  padding-left: 0;
  padding-right: 0;
}
#informa-footer .divisional-footer .divisional-footer-container .privacy-policy p {
  padding: 0 0 0 18%;
}

@media only screen and (max-width: 768px) {
  #informa-footer .divisional-footer-container {
    padding-right: 0;
    padding-left: 0;
    text-align: center;
  }
  #informa-footer .divisional-footer {
    padding-left: 15px;
    padding-right: 15px;
  }
  #informa-footer .row div[class*='col-'] {
    padding: 0 15px;
  }
  #informa-footer .divisional-footer .divisional-footer-container ul.list-inline {
    float: none;
    text-align: center;
  }
  #informa-footer .divisional-footer:not(.color) .divisional-footer-container ul.list-inline {
    margin-top: 0;
  }
  #informa-footer .divisional-footer .divisional-footer-container .footer-icons .logo img {
    margin: 0;
    max-width: auto;
  }
  #informa-footer .divisional-footer .divisional-footer-container .privacy-policy {
    padding: 15px;
  }
  #informa-footer .divisional-footer .divisional-footer-container .privacy-policy p {
    padding: 0;
  }
}
@media screen and (max-width: 992px) {
  #informa-footer .divisional-footer .divisional-footer-container {
    text-align: center;
  }
  #informa-footer .divisional-footer .divisional-footer-container ul.list-inline {
    float: none;
  }
  #informa-footer .divisional-footer .divisional-footer-container .privacy-policy {
    text-align: center;
    padding: 35px 10px;
  }
  #informa-footer .divisional-footer .divisional-footer-container .privacy-policy p {
    padding: 0;
  }
  #informa-footer .divisional-footer .divisional-footer-container .privacy-policy.marketing {
    padding: 22px 10px;
    text-align: center;
  }
  #informa-footer .divisional-footer .divisional-footer-container .footer-icons > * {
    display: block;
    padding-bottom: 30px;
  }
  #informa-footer .divisional-footer .divisional-footer-container .footer-icons {
    padding: 0;
  }
  #informa-footer .divisional-footer .divisional-footer-container .footer-icons .logo {
    padding: 40px 0;
  }
  #informa-footer .divisional-footer .divisional-footer-container .discover ul li {
    display: block;
    width: auto;
  }
  #informa-footer .divisional-footer .divisional-footer-container .working ul {
    border-right: none;
  }
  #informa-footer .divisional-footer .divisional-footer-container .working ul li {
    display: block;
    width: auto;
  }
  #informa-footer .divisional-footer .divisional-footer-container .brand-name > * {
    padding-left: 0;
  }
}
@media (min-width: 993px) {
  #informa-footer .col-md-1, #informa-footer .col-md-2, #informa-footer .col-md-3, #informa-footer .col-md-4, #informa-footer .col-md-5, #informa-footer .col-md-6, #informa-footer .col-md-7, #informa-footer .col-md-8, #informa-footer .col-md-9, #informa-footer .col-md-10, #informa-footer .col-md-11, #informa-footer .col-md-12 {
    float: left;
  }
  #informa-footer .col-md-2 {
    width: 16.66667%;
  }
  #informa-footer .col-md-3 {
    width: 24%;
  }
  #informa-footer .col-md-5 {
    width: 41.66667%;
  }
  #informa-footer .col-md-6 {
    width: 50%;
  }
  #informa-footer .col-md-12 {
    width: 100%;
  }
  #informa-footer .divisional-footer .divisional-footer-container .footer-icons {
    max-width: 100%;
    padding: 35px 20px;
  }
  #informa-footer .divisional-footer .divisional-footer-container ul.list-inline.social-icons {
    margin-left: 8px;
  }
  #informa-footer .divisional-footer .divisional-footer-container ul.list-inline li:last-child {
    margin-right: 0;
    padding-right: 0;
  }
}
/* End Informa footer styles */




/* EU cookie law container.  Inserted into pages via /js/scripts.js */
#eucookielawcontainer {
  display: block;
  position: fixed;
  left: auto;
  right: auto;
  bottom: 0;
  width: 100%;
  z-index: 10000;
}
#eucookielawcontainer .eucookiebanner {
  font-size: 1.2em;
  margin: 0 auto;
  max-width: 90%;
}
#eucookielawcontainer .padding {
  background: #000;
  background: rgba(0,0,0,.66);
  border: 5px solid #75c1e3;
  color: #fff;
  overflow: hidden;
  padding: 1.25rem;
  text-align: center;
}
#eucookielawcontainer .button {
  margin: 2em 0 0 0;
  white-space: nowrap;
}
@media (min-width: 992px) {
  #eucookielawcontainer .eucookiebanner {
    max-width: 65%;
  }
  #eucookielawcontainer p {
    margin-bottom: 0;
  }
  #eucookielawcontainer .cookieblock {
    display: table-cell;
    padding: 0 1.25rem 0 0;
    vertical-align: middle;
  }
  #eucookielawcontainer .button {
    margin-bottom: 2em;
  }
}
/* End: EU cookie law container */

/* Gen-only styles */
blockquote {
  padding: 10.5px 21px;
  margin: 0 0 21px;
  font-size: inherit;
  border-left: 5px solid #222;
}
.element-invisible {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
.field-name-field-paragraph-headline {
  font-size: 1.5em;
  text-shadow: 0 2px 2px #000;
}
.paragraph-item-row {
  padding: 2em 0;
}
.main-container.edge-to-edge .paragraph-bg-dark {
  background: #282560;
  background-size: cover;
}
.main-container.edge-to-edge .paragraph-bg-light {
  background: #00B5BE;
  background-size: cover;
}
/* End Gen-only styles */

/* SB overrides */
/* Attempt to reset trainings, features, briefings, and other schedule viewers */
/* Override for SB styles, hopefully helps legibility of top row in SB */
.sb-header-search-day-tabs-wrapper {
  background: linear-gradient(rgba(0,0,0,.66), rgba(0,0,0,.33));
}
.schedule-wrapper {
  margin-bottom: 30px;
}
.schedule-time, 
.schedule-info {
  display: inline-block;
}
.schedule-time {
  min-width: 153px;
  margin-right: 15px;
}
.schedule-time, 
.schedule-info {
  min-height: 40px;
}
.schedule-info-description {
  min-width: 135px;
  margin: 0 10px 10px 0;
}
.schedule_wrapper {
  background: linear-gradient(rgba(0,0,0,.55), transparent);
  border-radius: 5px;
}
.schedule_wrapper .last {
  margin: auto;
}
.schedule_wrapper ol, 
.schedule_wrapper ul {
  margin: 0 !important;
  padding: 0 !important;
}
.display_mode_buttons_wrapper, 
.tools_wrapper, 
#tools_sidebar, 
.filter_header_background_hidden, 
.filter_header_background_shown, 
.sessions, 
.checkbox_label_wrapper {
  width: auto !important;
}
main .alpha-tab, 
main .day-tab, 
.day-tabs-wrapper li .day-tab:first-child, 
#tools_sidebar > .sb_button, 
.sb-header-search-day-tabs-wrapper, 
.filter_header_background_hidden, 
.filter_header_background_shown {
  height: auto !important;
}
#tools_sidebar {
  margin-right: 2% !important;
  max-width: 18% !important;
  min-width: 18% !important;
}
#tools_sidebar > .sb_button {
  min-height: 30px;
}
.announce_header, .anounce_header { /* For unscheduled but announced lists on Briefings SV. 2nd selector is due to misspelling in original */
  background-color: rgb(27, 102, 144);
  display: block;
  font-size: 1.1em;
  font-weight: bold;
  margin: 16px 0;
  text-transform: uppercase;
  width: 100%;
}
.features-tools-sidebar h3.filter_header { /* Text 'FORMAT' in left sidebar on Features Schedule Viewer is inserted by Schedule Viewer CSS in the h3::after element.  The below attempts to remove padding from bottom/top of the empty parent (original text is hidden) to reduce appearance of over-tall bottom margin. */
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.sb_button.active#all_sessions_btn {
  background-position: auto !important;
}
.filters_wrapper ul, 
.filters_wrapper ul li {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
}
.filter_header_background_hidden, 
.filter_header_background_shown {
  min-height: 15px;
}
.filters_wrapper ul li .checkbox_wrapper, 
.filters_wrapper ul li .checkbox_wrapper input[type='checkbox'], 
.filters_wrapper ul li .track_type_icon, 
.filters_wrapper ul li .track_type_checkbox_label span {
  float: left;
}
.filters_wrapper ul li .checkbox_wrapper, 
.filters_wrapper ul li .track_type_icon, 
.filters_wrapper ul li .skill_level_icon, 
.filters_wrapper ul li label span {
  /*max-width: auto !important;*/
}
.filters_wrapper > * {
  hyphens: auto;
  word-wrap: break-word;
  overflow-wrap: break-word;
}
main .alpha-tab, 
main .day-tab, 
.day-tabs-wrapper li .day-tab:first-child {
  border-height: auto;
  border-right: none !important;
  min-height: 25px !important;
}
.sessions {
  max-width: 79% !important;
}
.sessions.features-description {
  width: 100% !important; /* Features Schedule Viewer main area needs this to stretch to full width of parent. */
}
.sb-header-search-day-tabs-wrapper {
  min-height: 65px;
}
.speaker_letter, 
.start_time_wrapper, 
.sb-header-search-day-tabs-wrapper, 
.calendar-cell.calendar-row {
  width: 100% !important;
}
.calendar-cell.calendar-row {
  max-width: 100% !important;
  padding-right: 0 !important;
}
.calendar-cell.calendar-row div.data-container, 
.calendar-cell.calendar-row div.training-data {
  float: left;
  width: 100% !important;
}
.calendar-cell.calendar-row div.data-container {
}
.calendar-cell.calendar-row div.business-hall-image {
  display: none;
}
.calendar-cell.calendar-row div.training-data {
  margin: 0;
  padding: 50px 0 0 0;
  position: relative;
}
.calendar-cell.calendar-row div.training-data div.course-progress-bar {
  background: #333;
  border-right: 1px solid #777;
  border-bottom: 1px solid #777;
  border-radius: 5px;
  box-shadow: inset -1px -1px 3px #777;
  margin: 10px auto 15px;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
}
.calendar-cell.calendar-row div > .span-4 {
  margin: 0 !important;
  width: 100% !important;
}
ul#cal_content_Day li.cal_row_content {
  width: 100% !important;
}
.course-sold-out-graphic { /* Attempt to replace static 2014 'sold out' graphic in Schedule Viewers with text + CSS */
  background: linear-gradient(to bottom, #e70010 0, #770007 50%, #e70010 100%) !important;
  color: white;
  display: block;
  font-size: 1.2em;
  font-weight: bold;
  line-height: 2em;
  margin: .5em auto 1em auto !important;
  height: 3em !important;
  position: relative;
  text-align: center;
  text-shadow: 0 0 5px rgba(000,000,000,.5);
  text-transform: uppercase;
  width: 97% !important;
}
.course-sold-out-graphic::after {
  content: 'Sold Out';
  display: block;
  padding: .5em 0;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.course-sold-out-graphic::before {
  border: 3px solid #000;
  content: ' ';
  display: block;
  height: auto;
  width: auto;
  position: absolute;
  top: 2px;
  right: 2px;
  bottom: 2px;
  left: 2px;
  z-index: 5;
}
.speaker-bio-wrapper .speaker-headshot {
  float: left;
  margin: 0 22px 10px 0;
}
/* SB override - media queries */
main > div.container:last-child::after {
  content: "";
  clear: both;
  display: table;
}
/* Smallest screens/devices only */
@media (max-width: 576px) {
  /* Schedule Viewer - left column wrappers / containers */
  ul#alpha-wrapper, 
  ul#date_wrapper {
    float: none !important;
    display: block !important;
    table-layout: auto !important;
    width: auto !important;
  }
  .sb-header-search-day-tabs-wrapper {
    min-height: auto !important;
  }
  .search_form_wrapper {
    float: none !important;
    margin: 0 !important;
  }
  ul#alpha-wrapper li, 
  ul#date_wrapper li.li2 {
    display: inline-block !important;
    height: auto !important;
    text-align: center !important;
  }
  .alpha-tabs-wrapper li a, 
  .day-tabs-wrapper li a {
    display: inline-block !important;
    padding: 1em !important;
  }
  /* Schedule Viewer - remove padding around buttons at top of left column */
  main #tools_sidebar > .sb_button {
    margin: 0 0 1em;
  }
  /* Schedule Viewer - left column sub-headers & 'select / clear' links */
  .filter_header_background_hidden, 
  .filter_header_background_shown, 
  .filters_wrapper .select_clear_all_link {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .filters_wrapper .select_clear_all_link {
    max-width: 90%;
    padding-bottom: 1em !important;
  }
  /* Reset right/left padding/margins and with for left col container & all children EXCEPT .track_type_icon and .skill_level_icon */
  .filters_wrapper > ul, 
  .filters_wrapper > ul > li, 
  .filters_wrapper ul li div.checkbox_wrapper, 
  .filters_wrapper ul li div.checkbox_wrapper input[type='checkbox'], 
  .filters_wrapper ul li div.checkbox_wrapper div.checkbox_label_wrapper, 
  .filters_wrapper ul li div.checkbox_wrapper label, 
  .filters_wrapper ul li div.checkbox_wrapper label span {
    margin-right: 0 !important;
    margin-left: 0 !important;
    max-width: auto !important;
    min-width: auto !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    width: auto !important;
  }
  .filters_wrapper > ul {
    width: calc(100% - 10px);
  }
  .filters_wrapper > ul > li {
    width: 100%;
  }
  .filters_wrapper ul, 
  .filters_wrapper ul li {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
}
@media (min-width: 576px) and (max-width: 991px) {
  main .container {
    max-width: 100% !important;
  }
}
/* Small screens/devices only */
@media (max-width: 991px) {
  .schedule_wrapper {
    width: 100% !important;
  }
  .sessions {
    border: none !important;
  }
  .track_type_checkbox_label span, 
  .skill_level_checkbox_label span {
    margin-left: 0 !important;
    width: auto !important;
  }
}
/* Extra-small and small screens only */
@media (max-width: 991px) {
  main #tools_sidebar > .sb_button {
    font-size: .9em !important;
    line-height: 1.2em !important;
    min-height: auto !important;
    padding: 10px 5px !important;
  }
}
/* Large screens/devices only */
@media (min-width: 992px) and (max-width: 1199px) {
  .sessions {
    border: none !important;
  }
  .tools_wrapper {
    max-width: 194px;
  }
  main #tools_sidebar {
    margin-right: 0;
    min-width: 18%;
  }
  .filter_header_background_hidden, 
  .filter_header_background_shown {
    max-width: 180px;
  }
}
@media (min-width: 992px) {
  .tools_wrapper, 
  #tools_sidebar {
    width: 100% !important; /* On large screens, ensure the left column takes up the maximum allotted horizontal space, to prevent line-breaking where possible. */
  }
  .schedule_wrapper ul {
    padding-left: 1% !important;
  }
  .calendar-cell.calendar-row div.data-container, 
  .calendar-cell.calendar-row div.training-data {
    float: left;
  }
  .calendar-cell.calendar-row div.data-container {
    padding-right: 2%;
    width: 73% !important;
  }
  .calendar-cell.calendar-row div.training-data {
    width: 25% !important;
  }
}
@media (min-width: 1200px) {
  .container {
    max-width: 1199.98px !important;
  }
}
/* End SB overrides */

/* Media queries */
/* Small screens/devices only */
@media (max-width: 991px) {
  main .container, 
  main .container > * {
    overflow-x: hidden;
  }
  main .container > .section-title {
    overflow-x: visible;
  }
  main .container .table-wrapper {
    overflow-x: auto;
  }
  main p, 
  main ol,
  main ul {
    hyphens: auto;
    overflow-wrap: break-word;
    word-wrap: break-word;
  }
  #top-bar ul.navbar-nav,
  #main-menu ul.navbar-nav {
    padding: 0;
  }
  #top-bar li.nav-item a.nav-link,
  #main-menu li.nav-item a.nav-link,
  .navbar-brand {
    color: #fff;
    text-transform: uppercase;
  }
  .navbar-brand img {
    max-width: auto;
    width: auto;
  }
  #top-bar li.nav-item a.nav-link,
  #main-menu li.nav-item a.nav-link {
    font-size: 1.5em;
    text-align: center;
  }
  #top-bar li.nav-item,
  #main-menu li.nav-item {
    background: linear-gradient(to right, transparent, rgba(31,102,141,.5), transparent);
    border-bottom: 1px solid #33ceff;
  }
  #top-bar li.nav-item:last-child,
  #main-menu li.nav-item:last-child {
    border-bottom: none;
  }
  #top-bar li.nav-item a.nav-link span.home {
    display: inline-block;
    position: relative;
  }
  #top-bar li.nav-item a.nav-link span.home, 
  #top-bar li.nav-item a.nav-link span.home:after {
    height: 100%;
    width: 100%;
  }
  #top-bar li.nav-item a.nav-link span.home:after {
    content: 'Home';
    display: block;
    margin: 0 auto;
    position: absolute;
    top: -1em;
    right: 0;
    bottom: 0;
    left: 0;
  }
}

/* Large screens/devices only */
@media (min-width: 992px) {
  .event-reg.sitewide {
    padding-bottom: 2em;
  }
  .event-header-logo span {
    text-align: right;
  }
  /* Event Menu - remove background and border for larger screens */
  #main-menu-wrapper {
    background: none;
    border: none;
  }
  /* Main menu styles for large screens only */
  .main-action-button {
    display: block;
    max-width: 80%;
    white-space: nowrap;
  }
  .navbar .navbar-brand {
    display: none;
  }

  /* Site Menu */
  #top-bar ul.navbar-nav li.nav-item {
    position: relative;
  }
  #top-bar ul.navbar-nav li.nav-item:not(:first-child):before {
    background: linear-gradient(#777 5%, #999 30%, #777 15%, #000);
    content: ' ';
    display: block;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
  }
  #top-bar ul.navbar-nav li.nav-item a.nav-link {
    background: rgba(0,0,0,.5);
    color: #fff;
    font-size: .9em;
    padding: 10px 25px;
  }
  #top-bar ul.navbar-nav li.nav-item:first-of-type a.nav-link {
    background: linear-gradient(to left, rgba(0,0,0,.5), transparent);
  }
  #top-bar ul.navbar-nav li.nav-item:last-of-type a.nav-link {
    background: linear-gradient(to right, rgba(0,0,0,.5), transparent);
  }
  #top-bar ul.navbar-nav li.nav-item a.nav-link:focus,
  #top-bar ul.navbar-nav li.nav-item a.nav-link:hover {
    background: linear-gradient(#053c50, #000);
    outline: none;
  }
  #top-bar li.nav-item a.nav-link .home {
    background: url(../images/page-graphics/home.png) no-repeat center center;
    background-size: cover;
    content: ' ';
    display: block;
    height: 15px;
    width: 15px;
  }
  #top-bar li.nav-item a.nav-link span.home:after {
    display: none;
  }

  /* Site Menu - Sub-menu items - large screens only */
  #top-bar ul.navbar-nav li.nav-item.dropdown {}
  #top-bar ul.navbar-nav li.nav-item.dropdown .dropdown-menu {
    font-size: .9em;
  }
  #top-bar ul.navbar-nav li.nav-item.dropdown a.dropdown-item {
    text-align: left;
  }
  /* Show sub-menu items on hover over parent */
  #top-bar li.dropdown:hover > .dropdown-menu {
    display: block;
  }

  /* Event Menu */
  #main-menu {
    background: none;
    display: block;
    margin: 0;
    padding: 0;
    text-transform: uppercase;
  }
  #main-menu ul.navbar-nav {
    display: flex;
    width: 100%;
  }
  #main-menu li.nav-item {
    flex: 1 0 auto;
    padding: 0;
  }
  #main-menu li.nav-item a.nav-link {
    background: #000;
    background: rgba(0,0,0,.8) url(../images/main-menu/main-nav-parent-link-bg.png) no-repeat center center;
    border-top: 1px solid #777;
    border-bottom: 1px solid #777;
    border-left: 1px solid #777;
    color: #fff;
    display: block;
    font-size: 14px;
    font-weight: bold;
    line-height: 57px;
    padding: 0 7px;
    text-align: center;
    text-shadow: 1px 1px 2px #000, 1px 1px 25px #5bc2e7;
    transition-timing-function: ease-out;
    transition: .5s;
    white-space: nowrap;
  }
  #main-menu li.nav-item:first-child a.nav-link {
    border-left: none;
  }
  
  #main-menu li.nav-item a.nav-link:focus,
  #main-menu li.nav-item a.nav-link:hover {
    background: #10374b;
    background: rgba(16,55,75,.9) url(../images/main-menu/main-nav-parent-link-bg-active.png) no-repeat center 25px;
    position: relative;
  }

  /* Turn off down arrows to right of top-menu items with dropdown sub-menus. */
  #main-menu .dropdown-toggle:after {
    /*border: 0;*/
    color: #33ceff;
  }
  #main-menu li.nav-item.dropdown a.nav-link:focus {
    outline: none;
  }

  /* The Sub-menu items */
  /* Show sub-menu items on hover over parent */
  #main-menu li.dropdown:hover > .dropdown-menu {
    display: block;
  }
  #main-menu .dropdown-menu a.dropdown-item {
    font-size: .7em;
    position: relative;
    text-align: left;
    transition-timing-function: ease-out;
    transition: .5s;
  }
  #main-menu .dropdown-menu a.dropdown-item:before {
    content: '\203A\00a0'; /* &rsaquo; + &nbsp; */
    display: block;
    position: absolute;
    top: 17%;
    left: 3%;
  }
}
/* End of large-screens/devices */

/* Very large screens only */
@media (min-width: 1200px) {
  /* -----------------------------------------------------------------------
    
    Adapted from Blueprint, to handle mark-up that cannot be brought into Bootstrap

   Blueprint CSS Framework 1.0
   http://blueprintcss.org

     * Copyright (c) 2007-Present. See LICENSE for more info.
     * See README for instructions on how to use Blueprint.
     * For credits and origins, see AUTHORS.
     * This is a compressed file. See the sources in the 'src' directory.

  ----------------------------------------------------------------------- */
  .span-1, 
  .span-2, 
  .span-3, 
  .span-4, 
  .span-5, 
  .span-6, 
  .span-7, 
  .span-8, 
  .span-9, 
  .span-10, 
  .span-11, 
  .span-12, 
  .span-13, 
  .span-14, 
  .span-15, 
  .span-16, 
  .span-17, 
  .span-18, 
  .span-19, 
  .span-20, 
  .span-21, 
  .span-22, 
  .span-23, 
  .span-24 {
    float: left;
    margin-right: 15px;
  }
  .last {margin-right: 0;}

  .span-1 {
    min-width: 27px;
    width: 2.7%;
  }
  .span-2 {
    min-width: 69px;
    width: 6.9%;
  }
  .span-3 {
    min-width: 111px;
    width: 11.2%;
  }
  .span-4 {
    min-width: 153px;
    width: 15.4%;
  }
  .span-5 {
    min-width: 195px;
    width: 19.6%;
  }
  .span-6 {
    min-width: 237px;
    width: 23.9%;
  }
  .span-7 {
    min-width: 279px;
    width: 28.1%;
  }
  .span-8 {
    min-width: 321px;
    width: 32.3%;
  }
  .span-9 {
    min-width: 363px;
    width: 36.6%;
  }
  .span-10 {
    min-width: 405px;
    width: 40.8%;
  }
  .span-11 {
    min-width: 447px;
    width: 45%;
  }
  .span-12 {
    min-width: 489px;
    width: 49.2%;
  }
  .span-13 {
    min-width: 531px;
    width: 53.5%;
  }
  .span-14 {
    min-width: 573px;
    width: 57.7%;
  }
  .span-15 {
    min-width: 615px;
    width: 61.9%;
  }
  .span-16 {
    min-width: 657px;
    width: 66.2%;
  }
  .span-17 {
    min-width: 699px;
    width: 70.4%;
  }
  .span-18 {
    min-width: 741px;
    width: 74.6%;
  }
  .span-19 {
    min-width: 783px;
    width: 78.9%;
  }
  .span-20 {
    min-width: 825px;
    width: 83.1%;
  }
  .span-21 {
    min-width: 867px;
    width: 87.3%;
  }
  .span-22 {
    min-width: 909px;
    width: 91.5%;
  }
  .span-23 {
    min-width: 951px;
    width: 95.8%;
  }
  .span-24 {
    margin-right: 0;
    min-width: 993px;
    width: 100%;
  }
  .border {padding-right:6px;margin-right:7px;border-right:1px solid #ddd;}
  .colborder {padding-right:28px;margin-right:28px;border-right:1px solid #ddd;}
  /* End: Blueprint adaptation */
}

/*!
  * Start Bootstrap - Full Slider (https://startbootstrap.com/template-overviews/full-slider)
  * Copyright 2013-2017 Start Bootstrap
  * Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap-full-slider/blob/master/LICENSE)
  */
 main .carousel .carousel-inner .carousel-item {
   min-height: 35em;
   background: no-repeat center center scroll;
   -webkit-background-size: cover;
   -moz-background-size: cover;
   -o-background-size: cover;
   background-size: cover;
 }
 main .carousel .carousel-inner .carousel-item .carousel-caption {
  background: #fff;
  background: rgba(255,255,255,.8);
  color: #000;
  font-size: 1.3em;
  margin-bottom: 20px;
  min-height: 5em;
  padding: 5px 20px 0 20px;
  position: absolute;
    bottom: 1.1em;
    left: 0;
  text-align: left;
  width: 100%;
}
main .carousel .carousel-inner .carousel-item .carousel-caption, 
main .carousel .carousel-inner .carousel-item .carousel-caption h3, 
main .carousel .carousel-inner .carousel-item .carousel-caption p {
  text-shadow: none;
}
main .carousel .carousel-inner .carousel-item .carousel-caption h3 {
  font-size: 1.2em;
  font-weight: bold;
  line-height: auto;
  margin: 0;
  text-transform: none;
}
main .carousel .carousel-inner .carousel-item .carousel-caption h3, 
main .carousel .carousel-inner .carousel-item .carousel-caption p .more {
  color: #1A658F;
}
main .carousel .carousel-inner .carousel-item .carousel-caption img {
  height: auto;
  width: auto;
}
main .carousel .carousel-inner .carousel-item .carousel-caption p {
  line-height: 1.2em;
}
main .carousel .carousel-inner .carousel-item .carousel-caption p .more {
  display: inline-block;
  position: relative;
  text-align: right;
}
main .carousel .carousel-inner .carousel-item .carousel-caption p .more:active, 
main .carousel .carousel-inner .carousel-item .carousel-caption p .more:focus, 
main .carousel .carousel-inner .carousel-item .carousel-caption p .more:hover {
  text-decoration: underline;
}
main .carousel .carousel-inner .carousel-item .carousel-caption p .more:after {
  background: url('../images/slides/arrow_right_black.png') no-repeat right center;
  content: ' ';
  display: block;
  height: 13px;
  position: absolute;
  top: 4px;
  right: -20px;
  width: 14px;
}
main .carousel .carousel-indicators {
  margin-bottom: .8em;
}
main .carousel .carousel-indicators li {
  border: 1px solid #33ceff;
  border-radius: 50%;
  box-shadow: 0 0 15px 5px rgba(51,206,255,.35); /* RGB for hex: #33ceff */
  height: 1em;
  padding: 0;
  width: 1em;
}
main .carousel .carousel-item {
  min-height: 30em;
}
/* End slider */
