/* 
Site Name: Field Service NEXT Master Rebrand Style Sheet
Office: USA
Year: 2025
URL: All Field Service NEXT Branded Events
----------------------------------------------------------------*/
/********************************
  Navigation - Overrides
********************************/
/* Mobile Nav Width */
body .header-bottom > .container {max-width: 1440px;}

/* Removes Dropdown Carets */
body .header-bottom .navbar .dropdown-toggle::after {display: none;}
/* Logo */
body .header-bottom .navbar .navbar-brand img {display: none;}
body .header-bottom .navbar a.navbar-brand {height:75px!important; width:180px!important;position:absolute!important; top:-15px!important; }
@media(max-width: 990px) {body .header-bottom .navbar a.navbar-brand, body .header-bottom.on-scroll .navbar a.navbar-brand {left:0px!important; height:75px!important; width:180px!important; top:-10px!important;} }

body.front .header-bottom .navbar a.navbar-brand {background: var(--event-logo-knockout);}
body.front .header-bottom.on-scroll .navbar a.navbar-brand {background: var(--event-logo-color); }

body.not-front .header-bottom .navbar a.navbar-brand {background: var(--event-logo-color);}
@media(max-width: 990px) {body .header-bottom {padding-bottom:.25em!important;}}

/* Enables desktop/mobile nav hand off  ??? */
@media (min-width: 1200px) {body .header-bottom .navbar .navbar-toggle {display:none;} body .header-bottom .navbar .navbar-collapse {display: block;} body .header-bottom .navbar ul.nav.navbar-nav {flex-flow: row; align-self: flex-end;} body .header-bottom .navbar ul.nav.navbar-nav a:hover {text-decoration: none;} body .header-bottom .navbar ul.nav.navbar-nav ul.dropdown-menu {position: absolute; margin-top: 0.75em; width: max-content;}}


/* Primary Nav Links */
body .header-bottom .navbar .navbar-nav > li > a{font-weight:900; font-size:1.15em !important;line-height:1em;padding:.55em; font-family: var(--event-font-secondary)!important;}
@media(min-width:768px) and (max-width:1400px){body .header-bottom .navbar .navbar-nav > li > a{font-size:.9em;padding:.5em;}}
body.front .header-bottom .navbar .navbar-nav > li > a{color:#fff;}
body.front .header-bottom .navbar .navbar-nav > li > a:hover,.navbar-nav > li > a:focus,.dropdown-menu > li > a:hover,.dropdown-menu > li > a:hover,.navbar-nav .open .dropdown-menu li a:hover{background:var(--event-color-primary);color:#fff!important;}

/* Primary Nav - Sub Nav Links */
body .header-bottom .navbar .navbar-nav ul.dropdown-menu > li > a{color:#143385; font-size:1em;line-height:1em;padding:1.25em 0.5em;display:block;font-family:var(--event-font-primary);text-transform:uppercase;}
body .header-bottom .navbar .navbar-nav > li.dropdown:hover .dropdown-menu{ }
@media(max-width:990px){body .header-bottom .navbar .navbar-nav > li > a:hover,.navbar-nav > li > a:focus,.dropdown-menu > li > a:hover,.dropdown-menu > li > a:hover,.navbar-nav .open .dropdown-menu li a:hover{background:unset;} body .header-bottom .navbar .navbar-nav > li.dropdown:hover .dropdown-menu{background:unset;}}

/* Primary Nav - Buttons */
.navbar-nav > li:last-child > a{background:var(--event-color-secondary)!important;color:#143385!important;font-family:var(--event-font-secondary);text-shadow:none;}
.navbar-nav > li:last-child > a:hover{background:var(--event-color-secondary)!important; color:#fff !important;}

body.front .header-bottom .collapse.show .navbar-nav > li:nth-last-child(2) > a{color:#143385;outline:1px solid #143385;}
body.front .header-bottom .collapse .navbar-nav > li:nth-last-child(2) > a{border-radius:0.5em;padding:.5em 1.25em!important;margin:0.8em 0 0 1em;color:#143385;outline:1px solid #fff; background:#fff!important;}
body.front .header-bottom .collapse .navbar-nav > li:nth-last-child(2) > a:hover{background:#143385!important;}
@media(max-width:990px){body.front .header-bottom .collapse .navbar-nav > li:nth-last-child(2) > a{margin:0 0 0 .5em;}}

body.front .header-bottom.on-scroll .navbar-nav > li:nth-last-child(2) > a{color:#143385;outline:1px solid #143385;}
body.front .header-bottom.on-scroll .navbar-nav > li:nth-last-child(2) > a:hover{background:#143385;}

body.not-front .navbar-nav > li:nth-last-child(2) > a{border-radius:0.5em;padding:.5em 1.25em!important;margin:0.8em 0 0 0.5em;color:#143385;outline:1px solid #143385;}
body.not-front .navbar-nav > li:nth-last-child(2) > a:hover{background:#143385!important;}

/* Primary Nav - Mobile Dropdown */
@media(max-width:990px){body .header-bottom .navbar .navbar-collapse.collapse.show .navbar-nav,body .header-bottom .navbar .navbar-collapse.collapsing .navbar-nav{background:#fff;width:100%;padding:0 1em 1em 1em;border-radius:calc(.75rem - 1px)!important;} body.front .header-bottom .navbar .navbar-nav > li > a,body .header-bottom .navbar .navbar-collapse.collapse.show li a{color:#2d2c2c!important;}}


/********************************
  Dynamic Header Typography - Overrides
********************************/
body.front .header-top #header-info {
    text-align: unset;
    margin: 0 auto;
    margin-left: .5em;
}

body.front .header-top #header-info p {
    font-size: 1.5em;
    color: #fff;
    font-family: var(--event-font-primary);
    text-align: left;
    margin: 0;
}

body.front .header-top #header-info p:nth-child(1):before,body.front .header-top #header-info p:nth-child(2):before,body.front .header-top #header-info p:nth-child(3):before {
    display: none;
}

body.front .header-top #header-info p:nth-child(1):after {
    content: " \2014";
    margin: 10px;
    color: var(--event-color-secondary)!important;
}

body.front .header-top #header-info p:nth-child(1) {
    font-weight: 400!important;
}

body.front .header-top #header-info p:nth-child(2) {
    font-weight: 200!important;
}

/* Sub Page Header */
.asidecontent {
    margin-top: 4em;
    box-shadow: inset 10000px 0 0 rgba(0,0,0,.15);
    background: var(--event-inner-page-strip);
    background: url(/UploadedFiles/EventPage/1005323/images/FSN-inner-hero-gradient.png),var(--event-inner-page-strip);
    background-position: top bottom,center top;
    background-repeat: no-repeat,no-repeat;
    background-size: cover;
}

/* Hero Divider Image - Overrides */
body.front .header-top,
body.front .header-top .video-container {
    height: 90vh !important;
}

/* FSN hero wave (right side, full height, behind text) */
body.front header:after {
    content: ' ';
    position: absolute;
    top: 0;
    right: -4.5em;                           /* anchor to right edge */
    width: 40%;                         /* how far it covers across */
    height: 100%;                       /* full hero height */
    background: url(/UploadedFiles/EventPage/brands/fieldservice/reff/graphic_elements/waves_new/hero_wave.svg)
                right center / cover no-repeat;
    pointer-events: none;
    z-index: 1;                         /* under copy, over video */
    transition: all 0.3s ease !important;
}

/* width-only tuning by breakpoint (Bootstrap-ish) */
@media (max-width: 1200px) {
    body.front header:after { width: 58%; }
}
@media (max-width: 992px) {
    body.front header:after { width: 64%; }
}
@media (max-width: 768px) {
    body.front header:after { width: 80%; }
}

/********************************
  1-3-hero-shift.css - Overrides
********************************/
body.front #header_top {
    border-left: 2px solid !important;
    border-color: var(--event-color-secondary) !important;
    padding: 0 0 0 1.75em;
}

/* keep hero copy above the wave */
body.front .header-top > .container {
    height: 100vh;
    width: 45vw;
    right: 10vw;
    position: absolute;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    padding-bottom: 6em;
    z-index: 2;                         /* sits above :after wave */
}

body.front .header-top > .container > #header_top > .container {
    width: 45vw;
}

body.front .header-top > .container > #header_top > .container img {
    filter: brightness(0) invert(1);
    -webkit-filter: brightness(0) invert(1);
}

body.front .header-top > .container > #header_top > .container .btn {
    font-size: 1.25em !important;
}

@media (max-width: 990px) {
    body.front .header-top > .container { width: 50vw; }
    body.front .header-top > .container > #header_top > .container { width: 50vw; }
    body.front .header-top > .container > #header_top > .container h1 { font-size: 3em !important; }
    body.front .header-top #header-info p { font-size: .9em; text-align: unset; display: inline; }
}

@media (max-width: 768px) {
    body.front .header-top > .container { width: 100vw; left: 0 !important; }
    body.front .header-top > .container > #header_top > .container { width: 100vw; }
    body.front .header-top > .container > #header_top > .container h1 { font-size: 3em !important; }
    body.front .header-top #header-info p { font-size: .9em; text-align: unset; display: inline; }
}

@media (max-width: 650px){
  body.front header:after{
    display: none !important;
    background: none !important;
  }
}
@media (max-width: 650px){
  body.front .header-top,
  body.front .header-top .video-container{
    height: 100svh !important; /* iOS-safe */
  }
}
/********************************
  event-info-on-scroll.css - Overrides
********************************/



body.front .header-bottom {
    background: none;
    box-shadow: none;
    transition: all 0.4s ease;
}

body.front .header-bottom .navbar-nav > li > a {
    color: #fff;
}

body.front .header-bottom .logo {
    filter: brightness(0) invert(1);
    -webkit-filter: brightness(0) invert(1);
}

/* Top Nav On Scroll */
body.front .header-bottom.on-scroll {
    background-color: #fff;
    outline: 1px #eee solid;
}

body.front .header-bottom.on-scroll .navbar-nav > li > a {
    color: #2d2c2c;
}

body.front .header-bottom.on-scroll .navbar-nav > li:hover {
    color: #2d2c2c;
}

body.front .header-bottom.on-scroll .navbar-nav > li:hover a:hover {
    color: #fff;
}

body.front .header-bottom.on-scroll .navbar-nav > li:last-child > a {
    color: #fff;
}

body.front .header-bottom.on-scroll .logo {
    filter: none;
    -webkit-filter: none;
}

@media(max-width: 990px) {
    body.front .header-bottom.on-scroll .navbar-nav > li:hover a:hover,body.front .header-bottom .navbar-nav > li:hover a:hover {
        color:#2d2c2c!important;
    }
}

/* Primary Nav - Toggle */
body.front .header-bottom .navbar .navbar-toggle {
    border: none!important;
    background: none!important;
}

body.front .header-bottom .navbar .navbar-toggle .icon-bar {
    border-color: #fff!important;
}

body.front .header-bottom.on-scroll .navbar .navbar-toggle {
    border-color: #2d2c2c!important;
    background: none!important;
}

body.front .header-bottom.on-scroll .navbar .navbar-toggle .icon-bar {
    border-color: #2d2c2c!important;
}

body.front .header-bottom .navbar .navbar-toggle,body.not-front .header-bottom .navbar .navbar-toggle {
    border: none!important;
}

/********************************
  Footer FSN rebrand
********************************/
:root { --fsn-blue: #143385; }

/* Base footer background: FSN blue + new wave */
body footer#sb-footer{
  background:
    var(--fsn-blue)
    url(/UploadedFiles/EventPage/brands/fieldservice/reff/graphic_elements/waves_new/footer_wave.svg)
    right bottom / cover no-repeat;
  color:#fff;
}
/* Put the knockout logo on the right over the wave */
body footer#sb-footer > .container{
  /* uses the eventÃ¢â‚¬â„¢s knockout logo token you already set elsewhere */
  background: var(--event-logo-knockout) no-repeat;
  background-position: 99% 85%;   /* right / upper-right area */
  background-size: 150px !important;         /* desktop default */
  padding-top: 2.25rem;
  padding-bottom: 2.75rem;
  /* keep max width consistent with site */
  max-width: 1440px;
}

body footer#sb-footer {
    background-color: #143385!important;
    color: #fff;
    font-family: var(--event-font-primary);
}

/* Footer type color tidy-up */
body footer#sb-footer :is(h4,h5,h6,p,a,li){
  color:#fff;
}
body footer#sb-footer a:hover{
  color: var(--event-color-secondary);
  text-decoration: none;
}

/* Responsive tweaks */


@media (min-width: 1000px){
  body footer#sb-footer > .container{
    background-position: 99% 35%;
    background-size: 200px;
  }
}
@media (max-width: 992px){
  body footer#sb-footer > .container{
    background-position: 99% 40%;
    background-size: 200px;
    padding-bottom: 3.25rem;
  }
}
@media (max-width: 768px){
  body footer#sb-footer > .container{
    background-position: 95% 20%;  /* center near bottom */
    background-size: 200px;
    padding-top: 2rem;
    padding-bottom: 5rem;          /* give space so logo/wave donÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢t overlap copy */
  }
}

@media (max-width: 768px){
  body footer#sb-footer > .container{
    background-position: 95% 20%;  /* center near bottom */
    background-size: 200px;
    padding-top: 2rem;
    padding-bottom: 5rem;          /* give space so logo/wave donÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢t overlap copy */
  }
}
/********************************
  Boostrap Fixes
********************************/
.rounded-xl {
    border-radius: calc(.75rem - 1px)!important;
}


.btn-accordion, .btn:focus{border:none !important; box-shadow:none !important;}

/********************************
  Utility Classes
********************************/

/* https://getbootstrap.com/docs/5.3/utilities/text/#line-height */
.lh-0 { line-height: 0 !important; }
.lh-1 { line-height: 1 !important; }
.lh-sm {line-height: 1.25 !important;}
.lh-base { line-height: 1.5 !important; }
.lh-lg { line-height: 2 !important; }

.font-primary{font-family: var(--event-font-primary)!important;}
.font-secondary {font-family: var(--event-font-secondary)!important;}
.font-tertiary {font-family: var(--event-font-tertiary)!important;}

.bg-grey { background: #fafafa!important;}
.bg-color-primary{background:var(--event-color-primary) !important;}
.text-color-primary{color: var(--event-color-primary) !important;}
.text-color-secondary{color:var(--event-color-secondary) !important;}
.text-color-tertiary{color:var(--event-color-tertiary) !important;}
.text-color-accent{color:var(--event-color-accent) !important;}
.text-color-header{color:var(--event-header-color) !important;}

.object-fit-cover {object-fit:cover;}
.object-fit-contain {object-fit:cover;}

.gradient-event { background: var(--gradient-event); background-size: 180% 180%; animation: gradient-animation 19s ease infinite;}

/* Carousel Indicators  */
.carousel-indicators li {background-color:var(--event-color-primary)!important;}
.carousel-indicators li.active {background-color:var(--event-color-secondary)!important;}

/* Carousel Arrows  */
[class^="carousel-control-"] {background-color:none!important;width:4em;height:4em;padding:1em;border-radius:50%;align-self: center;}


/********************************
  Border
********************************/
.border-event {
  border-color:var(--event-color-primary) !important;
  border-top: 1.5px solid #143385 !important;
}

/********************************
  Typography
********************************/
body h1,body h2,body h3,body h4,body h5,body h6 {
    font-weight: 900!important;
    color: var(--event-header-color);
    font-family: var(--event-font-primary);
}


.font-extra-light {font-weight: 200 !important;}

.font-primary,.novel-sans-pro {
    font-family: var(--event-font-primary)!important;
}

.font-secondary,.oso-sans-condensed {
    font-family: var(--event-font-secondary)!important;
}

.bg-blue {
    background: #476BB5!important;
}

.text-blue {
    color: #143385!important;
}

/* Link Color fixes */
body #sb-page-content a:not(.btn) {
    color: var(--event-color-secondary);
    font-weight: 700;
}

body #sb-page-content a:not(.btn):hover,body #sb-page-content a:not(.btn):focus {
    color: var(--event-color-primary);
}

/********************************
    Buttons
********************************/
.btn {
    font-family: var(--event-font-secondary);
    font-weight: 400;
    text-shadow: none;
}

.btn-event,.btn-inverse {
    font-weight: 400;
}

.btn-warning {
     background-color: var(--event-color-secondary)!important;
}

.btn-warning:hover {
    background-color: var(--event-color-accent)!important;
}

.btn-outline-event {
    color: var(--event-color-primary);
    border-color: var(--event-color-primary);
}

.btn-outline-event:hover {
    color: #fff;
    background: var(--event-color-primary);
    border-color: var(--event-color-primary);
}

.btn-outline-inverse {
    color: #fff;
    border-color: var(--event-color-secondary)!important;
}

.btn-outline-inverse:hover {
    background: var(--event-color-secondary)!important;
    border-color: var(--event-color-secondary)!important;
}

.gradient-event .btn-inverse {
    border: solid 1px transparent!important;
}

.gradient-event .btn-inverse:hover {
    border: solid 1px var(--event-color-secondary)!important;
}

/* Pill Nav .active fixes */
.nav.nav-pills {
    border-color: #829cfa66!important;
    border-style: solid;
    border-radius: calc(.2rem - 1px)!important;
}

.nav.nav-pills .nav-link.btn-outline-event {
    border-right: #829cfa66!important;
    border-style: solid!important;
    border-width-left: 2px!important;
    border-radius-left: unset!important;
}

.nav.nav-pills .nav-link.btn-outline-event:hover {
    color: var(--event-color-primary)!important;
}

.nav.nav-pills .nav-link.btn-outline-event.active {
    color: #fff!important;
    background: var(--event-color-primary);
    border-color: var(--event-color-primary);
}

.nav.nav-pills .nav-link.btn-outline-event-2.active {
    color: #fff!important;
    background: var(--event-color-secondary)!important;
    border-color: var(--event-color-secondary)!important;
}

/* Tabbed Nav .active fixes */
.nav.nav-tabs li a.nav-link {
    color: var(--event-color-primary)!important;
}

.nav.nav-tabs li a.nav-link.active {
    color: var(--event-color-secondary)!important;
}

/* Carousel Indicators */
.carousel-indicators li.active {
    background-color: var(--event-color-secondary)!important;
}

/********************************
  Container styles
********************************/
.gradient-speaker::before {
  content: "";
  z-index: 10;
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  background: linear-gradient(to top, rgba(20,51,133,0.55) 20%, rgba(0,0,0,0) 45%);
}



.gradient-event {
    background: var(--gradient-event);
    background-size: 180% 180%;
    animation: gradient-animation 19s ease infinite;
}

.gradient-event h2.fa-3x.text-white {
    font-weight: 200 !important;
}

@keyframes gradient-animation {
    0% {
        background-position: 0% 50%;
    }

    50% {
        background-position: 100% 50%;
    }

    100% {
        background-position: 0% 50%;
    }
}

/* Global <hr/> line break styles */
#sb-page-content hr {
    border-color: #143385!important;
}

/* Video Containers */
.video-container {
    position: relative;
}

.video-container .video-container {
    position: absolute!important;
    top: 0!important;
    left: 0!important;
    right: 0!important;
    width: 100%!important;
    height: 100%!important;
    overflow: hidden!important;
    z-index: -999!important;
}

.video-container video {
    min-height: 100%!important;
    min-width: 100%!important;
}

.video-container video[poster] {
    object-fit: cover!important;
}

/********************************
  Speaker Listing Page
********************************/
body.speakers #speaker-listing .col-md-3.col-6.text-center {
    margin-bottom: 1rem;
    margin-top: 1rem;
}

body.speakers #speaker-listing h4 a {
    font-weight: 400!important;
    font-size: 24px!important;
    font-family: var(--event-font-primary);
    margin-top: 0!important;
    margin-bottom: 0!important;
    color: var(--event-header-color)!important;
}

body.speakers #speaker-listing p {
    line-height: 1.25em;
    margin-top: 0!important;
    margin-bottom: 0!important;
}

body.speakers #speaker-listing .speaker-image-block {
    overflow: visible;
    margin-bottom: 1em;
}

body.speakers #speaker-listing .speaker-image-block.noHover {
    pointer-events: all;
}

body.speakers #speaker-listing .speaker-image-block::before {
    content: url("data:image/svg+xml,%3Csvg%20class%3D%22d-block%20mx-auto%22%20viewBox%3D%220%200%201168%201168%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20stroke-linejoin%3D%22round%22%20stroke-miterlimit%3D%222%22%3E%3Cpath%20d%3D%22M1071.3%20814.3A545%20545%200%200%201%20754%201100.1a547.5%20547.5%200%200%201-560.7-128.3%2012%2012%200%201%201%2016.7-17%20527%20527%200%200%200%20375.7%20157c7.4-.2%2016.4%200%2023.7-.4%205.7-.4%2018.2-1.1%2023.7-1.6l23.6-2.6a609%20609%200%200%200%2046.7-8.6c4.5-.8%2011-2.7%2015.4-3.8%2012-2.8%2026.3-7.5%2038-11.2a537.1%20537.1%200%200%200%20120.7-59.5%20531.8%20531.8%200%200%200%20186.2-213.3%204.2%204.2%200%200%201%207.6%203.5%22%20fill%3D%22%23001440%22%20fill-rule%3D%22nonzero%22%2F%3E%3Cpath%20d%3D%22M129.4%20285.8a544.6%20544.6%200%200%201%20695-192c1.8%201%209.5%204.5%2011.5%205.6%203.5%201.7%2015.5%208.5%2019%2010.3a542.1%20542.1%200%200%201%2043.6%2027.7l7%204.9%207%205.2c18.1%2013.6%2036.1%2029%2052.4%2044.7%2033.2%2031.8%2062.3%2068%2086.5%20107.3A12%2012%200%200%201%201031%20312a521.5%20521.5%200%200%200-131.4-147.8l-6.5-5.1-6.7-4.8a553.4%20553.4%200%200%200-59.7-37.5l-18.6-9.3c-4.6-2.5-17.5-8-22.6-10.4a562.6%20562.6%200%200%200-54.6-20l-24-6.6a533%20533%200%200%200-372.8%2043.2%20537.9%20537.9%200%200%200-197.8%20176.8%204.2%204.2%200%200%201-5.8%201.1%204.2%204.2%200%200%201-1.2-5.8%22%20fill%3D%22%23001440%22%20fill-rule%3D%22nonzero%22%2F%3E%3Cpath%20d%3D%22M300.8%201091.4C9.3%20932.2-88.5%20554.9%2088.3%20273.9A583%20583%200%200%201%20261%2096.6a584.8%20584.8%200%200%201%20658.5%2010C1177%20285.3%201245%20648.4%201070.1%20908.4a587.1%20587.1%200%200%201-315.3%20237%2012%2012%200%201%201-7-22.8%20564.2%20564.2%200%200%200%20304-226.3c191.6-284.2%2083.3-677.5-226-824.7a568.5%20568.5%200%200%200-471.4-9.2C72.4%20183.8-62.2%20510.8%2051.7%20795.8A572%20572%200%200%200%20304.9%201084a4.2%204.2%200%201%201-4.1%207.4%22%20fill%3D%22%23082dee%22%20fill-rule%3D%22nonzero%22%2F%3E%3Cpath%20d%3D%22M315.8%201008.6a504.4%20504.4%200%200%201-229-327.9%20507%20507%200%200%201%20256-546.5c14-7%2025.1%2012.8%2011.4%2021a489.1%20489.1%200%200%200-241.5%20293.3l-5.3%2019.2c-2.4%2010.6-5.7%2024.5-7.3%2035.2a497%20497%200%200%200-6.6%2055.5c-.4%205.2-.6%2018.6-.8%2024l.3%2024%201.5%2024%202.7%2023.8a487.1%20487.1%200%200%200%20114%20252.5%20483%20483%200%200%200%20109.1%2094.7%204.2%204.2%200%200%201-4.5%207.2%22%20fill%3D%22%23829bf9%22%20fill-rule%3D%22nonzero%22%2F%3E%3Cpath%20d%3D%22M943.7%20237.5C1116.9%20411%201134.2%20700%20984.4%20894.2a12%2012%200%201%201-18.8-14.5c149-185%20136-464.8-28-636.4a4.2%204.2%200%200%201%206-5.8%22%20fill%3D%22%23829bf9%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E");
    z-index: 11;
    width: 110%;
    height: 110%;
    display: block;
    position: absolute;
    top: -5%;
    left: -5%;
    opacity: 0;
    transition: all 0.6s ease;
}

body.speakers #speaker-listing .speaker-image-block:hover::before {
    opacity: 1;
    transform: rotate(270deg);
}

body.speakers #speaker-listing .speaker-image-block img:last-of-type {
    display: none !important;
}

body.speakers #sb-page-content .speaker-image-block > img:first-of-type {
    border-radius: 50%;
    display: block !important;
    z-index: 9;
}

body.speakers #sb-page-content .speaker-image-block:hover > img:first-of-type {
    margin-top: 0;
}

body.speakers #speaker-listing .speaker-image-block::after {
    content: '';
    z-index: 10;
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    background: linear-gradient(-30deg,rgba(8,46,237,40%) 23%,rgba(0,0,0,0) 50%);
    border-radius: 50%;
}

body.speakers #speaker-listing svg path:nth-child(3) {
    fill: var(--event-color-secondary)!important;
}

body.speakers #speaker-listing .speaker-image-block img[src=""],body.speakers #speaker-listing .speaker-image-block:not(:has(img)) {
    background: #fff var(--event-logo-color) no-repeat;
    background-size: 70%;
    font-size: 0;
}

/********************************
  Agenda
********************************/
/* Typography */
#agenda-app :is(h3.grouphead, div[class*="track-"] > h3, .card.session .badge-primary) {
    font-family: var(--event-font-primary);
}

#agenda-app div[class*="track-"] > h3 {
    font-weight: 500 !important;
    font-size: 1.5rem;
}

/* Buttons */
body #agenda-app .agenda-app-button .btn {
    font-weight: 400 !important;
    text-shadow: none !important;
    font-family: var(--event-font-primary);
    border: solid 1px #ccc !important;
}

body #agenda-app .agenda-app-button .btn-light {
    background-color: #f6f7fa;
    color: #333 !important;
}

body #agenda-app .agenda-app-button .btn-light:hover {
    background-color: #e6e7ea !important;
}

body #agenda-app .agenda-app-button .btn-primary {
    background-color: #333;
    font-weight: 400!important;
    border-color: #333;
}

/* Sessions */
body #agenda-app .card.session h4.name > div:first-child:has(.badge-primary) {
    padding-bottom: 0.4em;
    margin-bottom: 0.4em!important;
    border-bottom: solid 1px #ddd;
}

body #agenda-app .card.session .badge-primary {
    background-color: #333;
    font-weight: 400;
    padding: 0 !important;
    border-radius: 0.4em;
}

body #agenda-app .card.session .badge-primary .custom-date {
    padding: 0.4em;
    display: inline-block;
}

body #agenda-app .card.session .badge-primary .custom-start-time, .card.session .badge-primary .custome-time-range {
    background-color: #eee;
    color: #333;
    padding: 0.4em;
    display: inline-block;
}

body #agenda-app .card.session {
    background-color: #f6f7fa;
    background: linear-gradient(90deg,#eef2ffff 0%,#ffffffff 25%);
    border-color: #ccc !important;
}

/* PDF Download Button */
#agenda-app .agenda-search > div:has(a.pdf-download-text) {
    align-self: start;
    margin-top: 0.25em;
}

#agenda-app .agenda-search a.pdf-download-text {
    color: #888;
    padding: 0.4em;
}

#agenda-app .agenda-search a.pdf-download-text:hover, #agenda-app .agenda-search a.pdf-download-text:hover i {
    color: #333;
    border-bottom: solid 1px #333;
}

/* Sessions */
#agenda-app .session-filters {
    background: #f6f7fa;
    border-radius: 0.4em;
    padding-top: 0.4em;
    margin-bottom: 1em;
}

#agenda-app .session-filters .badge {
    background: transparent !important;
    color: #333;
    border: none !important;
    font-weight: normal;
}

#agenda-app .session-filters span.cursor {
    float: right;
    background: transparent;
    text-decoration: underline;
    margin-top: 0;
}

#agenda-app .session-filters span.cursor small {
    font-weight: bold !important;
}

#agenda-app .session-tags .badge,.modal-body .badge {
    background: #f6f7fa !important;
    border: solid 1px #bbb;
    padding: 0.4em !important;
    border-radius: 0.4em;
}

#agenda-app .session-tags .badge .badge-text,.modal-body .badge .badge-text {
    color: #333;
    font-family: var(--event-font-primary);
    font-size: 0.85rem;
    font-weight: normal;
}

body #agenda-app .card.session:not(:has(.description)) .hr-description {
    display: none;
}

/* Session Speakers */
#agenda-app .session h4.name a {
    vertical-align: top !important;
    color: var(--event-color-primary);
    font-family: var(--event-font-primary);
    font-weight: 500 !important;
}

#agenda-app .session .speaker a.name,.modal-body .speaker a.name {
    color: var(--event-color-primary);
}

#agenda-app .session .speaker .company {
    font-size: 0.85em !important;
}

#agenda-app .session .speaker .d-flex img,.modal-dialog .speaker img {
    border-radius: 100%;
}

/* Custom Day Description Links */
#agenda-app .agenda-summit-links {
    margin-top: 1em;
    padding-left: 0;
}

#agenda-app .agenda-summit-links a {
    color: #999999ff !important;
    font-family: var(--event-font-primary);
    font-size: 1.2rem;
    font-weight: normal !important;
    margin-right: 1rem;
    padding-bottom: 0.3em;
    border-bottom: solid 1px #99999944;
}

#agenda-app .agenda-summit-links a:hover, #agenda-app .agenda-summit-links a:active, #agenda-app .agenda-summit-links a:focus {
    color: #000 !important;
    border-color: #000;
    text-decoration: none;
}

/********************************
  Agenda Sidebar
********************************/
#sb-page-content.container:has(#agenda-app),#agenda-app .container-sidebar .bg-white > .container {
    max-width: 100%;
}

#agenda-app #sidebar-no-header {
    background-color: transparent !important;
}

#agenda-app #filter-container #collapseFilters {
    background: transparent;
    padding-bottom: 8em;
}

#agenda-app #sidebar-no-header #collapseFilters > .filter-topic {
    background-color: #f5f5f5;
    border-radius: 0.4em;
    padding: 1em;
    margin-bottom: 1em;
}

#agenda-app #filter-container > .container-fluid > .row {
    margin-right: 0;
}

#agenda-app .session-filters .badge.badge-light {
    color: #000 !important;
}

#agenda-app #filter-container :is(.filter-heading h4, .filter-topic, .form-check-label) {
    font-family: var(--event-font-primary);
}

#agenda-app #filter-container .filter-heading h4 {
    text-transform: uppercase;
    font-weight: 300;
}

#agenda-app #filter-container .filter-topic button {
    color: #000 !important;
    font-weight: 300 !important;
    font-size: 1.1em;
}

#agenda-app #filter-container .filter-topic button strong::after {
    content: url(/UploadedFiles/EventPage/brands/etail/icon-chevron.png);
    display: inline-block;
    padding-left: 3px;
}

#agenda-app #filter-container .filter-topic button.collapsed strong::after {
    transform: scaleY(-1);
}

#agenda-app #filter-container .filter-topic button i {
    display: none;
}

#agenda-app .container-sidebar .bg-white {
    top: unset !important;
}

@media screen and (max-width: 768px) {
    #agenda-app #close-button {
        font-family:var(--event-font-primary);
        font-width: 2em !important;
    }
}

@media screen and (min-width: 769px) {
    #agenda-app #filter-container {
        top:100px !important;
    }
}

@media screen and (max-width: 768px) {
    #sb-page-content.container:has(#agenda-app) {
        padding:0;
    }
}

#agenda-app {
    padding-right: 15px;
}

#agenda-app div[class*="day"] div[class*="group-"] {
    padding-right: 15px;
    max-width: 100%;
}

#agenda-app #filter-container #collapseFilters {
    background: transparent;
}

#agenda-app #filter-container {
    z-index: 5 !important;
}

#agenda-app #filter-container:not(:has(#collapseFilters.show)) #sidebar-no-header {
    margin-left: 15px;
}

#agenda-app #filter-container:not(:has(#collapseFilters.show)) #sidebar-no-header hr {
    display: none !important;
}

#agenda-app #sidebar-no-header:has(#collapseFilters.show) {
    border-radius: 0.5em;
    margin-right: 5px;
}

@media screen and (max-width: 768px) {
    #agenda-app #filter-container .container-fluid:has(> .filter-heading) {
        background:#f5f5f5;
        border-radius: 0.4em;
    }

    #agenda-app #filter-container:has(#collapseFilters.show) {
        z-index: 999 !important;
        padding: 1em;
        background: #829CFACC;
        width: 100%;
    }

    #agenda-app #sidebar-no-header #collapseFilters > .filter-topic {
        padding: 0;
        margin-bottom: 0;
    }
}

/********************************
  Modal Popup
********************************/
/* General */
.modal-dialog,.modal-content,.modal-body {
    min-height: 80vh;
    border-radius: 0.5em !important;
}

.modal-dialog {
    position: absolute !important;
    right: 0;
    top: 0 !important;
    padding-right: 1em;
    max-width: 50vw;
}

.modal-backdrop {
    background: #829CFA !important;
    opacity: 0.8 !important;
}

.modal-content {
    background-image: unset !important;
}

.modal-dialog .fa-times {
    margin-top: 2em;
    z-index: 1;
}

.modal-dialog .fa-times:before {
    font-size: 1.7em;
    background: #fff;
    padding: 0.4rem 0.6rem;
    border-radius: 0.2rem;
}

body .modal-body h4 {
    font-family: var(--event-font-primary);
    font-weight: 500;
}

/* Agenda & Speakers */
.modal-dialog .speaker .flex-column .flex-column {
    justify-content: center;
    font-size: 1.2em;
}

.modal-dialog .card-body .speaker .flex-column .flex-column {
    font-size: 1em;
}

.modal-dialog .card-header {
    background: #e6e7ea;
    font-size: 1.2rem;
}

body:has(#agenda-app) .modal-body > .p-2 > div:nth-child(3) {
    font-size: 1.1rem;
    font-weight: 300;
}

/* Day/Time Badge */
body:has(#agenda-app) .modal-body > .p-2 > .mb-3 em {
    font-family: var(--event-font-primary);
    font-style: normal;
    font-weight: 300;
}

body:has(#agenda-app) .modal-body > .p-2 > .mb-3 em span {
    background: var(--event-color-primary);
    color: #fff;
    padding: 0.4em;
    border-top-left-radius: 0.4em;
    border-bottom-left-radius: 0.4em;
}

body:has(#agenda-app) .modal-body > .p-2 > .mb-3 em strong {
    background: #e6e7ea;
    padding: 0.4em;
    border-top-right-radius: 0.4em;
    border-bottom-right-radius: 0.4em;
    margin-left: -5px;
}

@media screen and (max-width: 1068px) {
    body:has(#agenda-app) .modal-body > .p-2 > .mb-3 em > * {
        display:block;
        max-width: 75%;
        text-indent: 0.4em;
    }

    body:has(#agenda-app) .modal-body > .p-2 > .mb-3 em span {
        border-top-left-radius: 0.4em;
        border-top-right-radius: 0.4em;
        border-bottom-left-radius: 0;
    }

    body:has(#agenda-app) .modal-body > .p-2 > .mb-3 em strong {
        border-top-right-radius: 0;
        border-bottom-left-radius: 0.4em;
        border-bottom-right-radius: 0.4em;
        margin-left: 0;
    }
}

/* Customize Close Button */
body:has(#agenda-app) .modal-body > .text-white {
    top: 1em;
    bottom: unset!important;
    color: #000!important;
}

body:has(#agenda-app) .modal-body > .text-white::before {
    content: url(/UploadedFiles/EventPage/brands/etail/icon-close.png);
    padding: 0.2em;
}

body:has(#agenda-app) .modal-body > .text-white i {
    visibility: hidden;
}

/* Downloads */
.modal .form .form-header {
    background: url(/UploadedFiles/EventPage/brands/etail/modal-bg.jpg) bottom center no-repeat;
    background-size: cover;
    min-height: 250px;
    margin-bottom: 9em;
    padding: 1em 2em;
    align-content: end;
    border-top-left-radius: 0.5em;
    border-top-right-radius: 0.5em;
    position: relative;
}

.modal .form .form-header h2 {
    color: #fff;
    font-size: 3rem;
    font-weight: 100 !important;
}

.modal .form .form-header p {
    position: absolute;
    bottom: -8em;
    font-family: var(--event-font-primary);
    font-size: 1.2em;
    font-weight: 100;
    text-align: left;
    left: 0;
    padding-left: 1rem;
    line-height: 1.3em;
    color: #777;
}

.modal .modal-body:has(.form),.modal .modal-body:has(.form) > div {
    padding: 0 !important;
}

.modal .form button.btn-secondary {
    background-color: var(--event-color-primary);
    text-transform: uppercase;
    padding: 0.75em 1.5em;
}

.modal .gdpr {
    max-width: 90%;
    margin: auto;
    color: #777;
    font-size: 0.8rem;
}

.modal .gdpr .mt-5 {
    border-top: solid 1px #ccc;
    padding-top: 1.5rem;
}

.modal .gdpr a {
    color: var(--event-color-primary) !important;
    text-decoration: underline;
}

@media screen and (max-width: 1024px) {
    .modal-dialog {
        max-width:100vw !important;
    }
}

/********************************
  SRS3 Billing Info/Payment Pages 
********************************/
#pricing-v3 .iqpc-srs-package-checkout-container {
    font-family: var(--event-font-primary) !important;
}

#pricing-v3 #tiers-tabs.nav.nav-pills {
    border: 0!important;
}

/* Button styling for secondary buttons,form dark buttons,and discount code buttons */
#pricing-v3 .iqpc-srs-secondary-btn,#pricing-v3 .iqpc-srs-form .form-group .btn-dark,#pricing-v3 .iqpc-srs-discount-code button {
    font-weight: 200;
    background-color: #212529 !important;
    padding: 0.3rem 1rem;
    font-size: 1.25rem;
    line-height: 1.5;
    border-radius: 0.3rem;
    border: 2px solid #212529 !important;
}

#pricing-v3 .iqpc-srs-secondary-btn:hover,#pricing-v3 .iqpc-srs-form .form-group .btn-dark:hover,#pricing-v3 .iqpc-srs-discount-code button:hover {
    background-color: #21252999 !important;
    border-color: transparent !important;
    color: #fff;
}

/* Override for secondary buttons within a form group */
#pricing-v3 .iqpc-srs-form .form-group .iqpc-srs-secondary-btn {
    background-color: #fff !important;
    color: #212529 !important;
}

/* Override discount code button font size */
#pricing-v3 .iqpc-srs-discount-code button {
    font-size: 1em;
}

/********************************
  Media Center & Blog Listings 
********************************/
/* Downloads */
.pagecontent .media/*Downloads*/
,#sb-page-content > .media/*Categories*/
{
    align-items: flex-end;
    padding-bottom: 3rem;
    border-bottom: solid 1px #829CFA66;
}

.pagecontent .media > a, #sb-page-content > .media > a {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
    border-radius: 1em;
}

.pagecontent .media > a {
    background: url(/UploadedFiles/EventPage/brands/etail/rc-bg.png) center bottom no-repeat;
    background-size: cover;
    padding: 2rem;
}

.pagecontent .media > a img {
    margin: 0 auto !important;
    display: block;
    max-width: 80% !important;
}

#sb-page-content > .media > a img {
    max-width: 100% !important;
    border-radius: 1em;
}

.pagecontent .media .media-body, #sb-page-content > .media .media-body {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
    padding-left: 1em;
}

body #sb-page-content .media .media-body h4.media-heading {
    font-size: 2rem;
    font-family: var(--event-font-primary);
}

body #sb-page-content .media .media-body :is(dev,p,li) {
    font-size: 1.3rem;
    line-height: 1.8rem;
    font-weight: 200;
}

@media (max-width: 990px) {
    .pagecontent .media {
        display:flex;
        max-width: 100%;
        flex: 0 0 100%;
        flex-direction: column;
        align-items: center;
    }

    .pagecontent .media > a {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }

    .pagecontent .media .media-body,#sb-page-content > .media .media-body {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
        margin: 1em 0 !important;
        padding: 1em;
        font-size: 1.3rem !important;
    }

    #sb-page-content .pagecontent .media .media-body p {
        font-size: 1.3rem !important;
        font-weight: 200;
    }
}

/* Fix if there is no Thumbnail */
#sb-page-content > .media:not(:has(a img)) .media-body {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
    padding-left: 0;
    align-self: flex-start;
}

#sb-page-content > .media .media-body .media-heading,.media .media-body .title a,.blog .title a {
    color: var(--event-color-primary) !important;
    font-family: var(--event-font-primary);
    font-weight: 400 !important;
    font-size: 1.8rem;
}

#sb-page-content > .media .media-body p:last-child {
    margin-bottom: auto;
}
