@import url(https://fonts.googleapis.com/css2?family=Aleo:ital,wght@0,100..900;1,100..900&family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap);

@font-face {
  font-family: 'Black Hat Druk Web';
  src: url(https://www.blackhat.com/fonts/BlackHatDruk-Medium-Web.woff2) format('woff2'),
       url(https://www.blackhat.com/fonts/BlackHatDruk-Medium-Web.woff) format('woff');
  font-weight: 300 900;
  font-stretch: 100%;
  font-display: swap;
}

body[class*=profile] div[unique_id=OgsVML95]:not([style*=none]), body[class*=profile] div[unique_id=RkEcmT01]:not([style*=none]), 
body[class*=profile] div[unique_id=YMHALB09]:not([style*=none]), body[class*=profile] div[unique_id=PmLvSM32]:not([style*=none]), 
body[class*=profile] div[unique_id=brjKsl73]:not([style*=none]), body[class*=profile] div[unique_id=yXYhyY64]:not([style*=none]) {
  display: grid !important;
  grid-template: auto/10.5rem auto;
  margin-bottom: 0;
}
@media screen and (max-width: 768px) {
  body[class*=profile] div[unique_id=OgsVML95]:not([style*=none]), body[class*=profile] div[unique_id=RkEcmT01]:not([style*=none]), 
  body[class*=profile] div[unique_id=YMHALB09]:not([style*=none]), body[class*=profile] div[unique_id=PmLvSM32]:not([style*=none]),
  body[class*=profile] div[unique_id=brjKsl73]:not([style*=none]), body[class*=profile] div[unique_id=yXYhyY64]:not([style*=none]) {
    grid-template: auto/6.5rem auto;
  }
}

/* Box sizing reset */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

/* Remove default list styles */
ul, ol {
  list-style: none;
}

/* Remove default link styles */
a {
  color: inherit;
  text-decoration: none;
}

/* Remove default button styles */
button {
  background: none;
  border: none;
  color: inherit;
  cursor: pointer;
  font: inherit;
}

/* Remove default input styles */
input, textarea, select {
  background: none;
  border: none;
  color: inherit;
  font: inherit;
  outline: none;
}

/* Remove default table spacing */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* Remove default image spacing */
img {
  display: block;
  height: auto;
  max-width: 100%;
}

/* Set core body defaults */
body {
  background: #fff;
  color: #000;
  font-family: "Open Sans", sans-serif;
  font-size: 1rem;
  font-weight: 400;
  height: 100%;
  line-height: 1.5;
  margin: 0;
}

/* Form elements inherit font */
label, input, button, select, textarea {
  font-family: inherit;
  font-size: inherit;
}

/* Optional: HTML5 elements block display */
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
  display: block;
}

/*  Base document styles   */
html {
  background: #fff;
  box-sizing: border-box;
  color: #222;
  font-family: "Open Sans", sans-serif;
  font-optical-sizing: auto;
  font-size: 1rem;
  font-style: normal;
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

*, *::before, *::after {
  box-sizing: inherit;
}

/*  Headings   */
h1, h2, h3, h4, h5, h6 {
  color: #222;
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 700;
  line-height: 1.2;
  margin: 0 0 1rem;
}

h1 { font-size: 2rem; }
h2 { font-size: 1.5rem; }
h3 { font-size: 1.25rem; }
h4 { font-size: 1.125rem; }
h5 { font-size: 1rem; }
h6 { font-size: 0.875rem; }

/*   Text elements   */
p {
  font-family: "Open Sans", sans-serif;
  margin: 0 0 1rem;
}

small {
  font-size: 0.875rem;
}

b, strong {
  font-weight: 900;
}

/*  Links   */
a {
  color: #5bc2e7;
  cursor: pointer;
  font-family: "Open Sans", sans-serif;
  font-size: inherit;
  text-decoration: none;
}
a:hover, a:focus {
  text-decoration: underline;
}

/*   Lists */
ul, ol {
  margin: 0 0 1rem;
  padding-left: 1.5rem;
}

/*   Images & media   */
img, svg, video {
  display: block;
  height: auto;
  max-width: 100%;
}

/*  Form base (very light)   */
button, input, select, textarea {
  font-family: inherit;
  font-optical-sizing: auto;
  font-size: inherit;
  line-height: inherit;
}

.ip-buttonBar .btn.btn-default.btn-submit, 
.ip-buttonBar .btn.btn-default.btn-success, 
.ip-buttonBar .btn.btn-default.btn-add, 
.ip-buttonBar .btn.btn-default, 
.ip-buttonBar a, .ip-buttonBar .btn, .ip-buttonBar input, .btn {
  background: #5bc2e7;
  border: 1px solid #5bc2e7;
  border-radius: 0px;
  color: #000;
  cursor: pointer;
  transition: all 0.2s ease;
  font-family: "Open Sans", sans-serif;
  font-size: inherit;
  font-weight: 600;
  padding: 10px 25px;
  text-transform: none;
}

.ip-buttonBar a:hover, .ip-buttonBar .btn.btn-default:hover, 
.ip-buttonBar input:hover, .btn:hover, .ip-buttonBar a:focus, 
.ip-buttonBar .btn.btn-default:focus, .ip-buttonBar input:focus, .btn:focus {
  background: #02021d;
  color: #fff;
  border-color: rgb(46.5106382979, 177.4521276596, 224.4893617021);
}

.ip-buttonBar .btn.btn-default.btn-cancel {
  background: transparent;
  border: 1px solid transparent;
  border-radius: 0px;
  color: #000;
  cursor: pointer;
  transition: all 0.2s ease;
  font-family: "Open Sans", sans-serif;
  font-size: inherit;
  font-weight: 600;
  padding: 10px 20px;
  text-transform: uppercase;
  margin-right: 1rem;
}

.ip-buttonBar .btn.btn-default[disabled], 
.ip-buttonBar .btn[disabled], .btn[disabled] {
  background: transparent;
  border: 1px solid transparent;
  border-radius: 0px;
  color: #111;
  cursor: pointer;
  transition: all 0.2s ease;
  font-family: "Open Sans", sans-serif;
  font-size: inherit;
  font-weight: 600;
  padding: 10px 20px;
  text-transform: none;
}

.ip-buttonBar .btn.btn-default.btn-cancel:hover, 
.ip-buttonBar .btn.btn-default.btn-cancel:focus,
.ip-buttonBar .btn.btn-default[disabled]:hover, .btn[disabled]:hover, 
.ip-buttonBar .btn.btn-default[disabled]:focus, .btn[disabled]:focus {
  background: #02021d;
  color: #fff;
  border-color: hsla(0, 0%, -10%, 0);
}

.ip-buttonBar a {
  margin-right: 1rem;
}

.ip-elm-html ~ .ip-elm-checkbox-multi .ip-elementLabel[isrequired="1"]:before {
  top: 0;
}

.ip-group-col:nth-child(2) .ip-elm-radio-multi {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}
.ip-group-col:nth-child(2) .ip-elm-radio-multi .ip-elementContent {
  display: flex;
  margin-left: 1rem;
}
.ip-group-col:nth-child(2) .ip-elm-radio-multi .ip-elementContent .questionResponse {
  position: relative;
  padding: 0 10px;
  left: -1.435rem;
}
.ip-group-col:nth-child(2) .ip-elm-radio-multi .ip-elementContent .questionResponse input[type=radio] {
  margin-top: 0;
}
.ip-group-col:nth-child(2) .ip-elm-radio-multi .ip-elementContent .questionResponse label {
  font-weight: 400;
}
.ip-group-col:nth-child(2) .ip-elm-radio-multi .ip-elementLabel[isrequired="1"]:before {
  top: 0;
  transform: translateX(-1rem) translateY(-20%);
}

.ip-elm-radio-multi {
  display: flex;
  flex-direction: row;
}
.ip-elm-radio-multi .ip-elementContent .questionResponse {
  position: relative;
  padding: 0;
}
.ip-elm-radio-multi .ip-elementContent .questionResponse input[type=radio] {
  margin-top: 0;
}
.ip-elm-radio-multi .ip-elementContent .questionResponse label [isrequired="1"] {
  font-weight: 400;
}
.ip-elm-radio-multi .ip-elementLabel[isrequired="1"]:before {
  top: 0;
  transform: translateX(-16px) translateY(-5%);
}

.index_registrations_demographics .ip-elm-radio-multi {
  flex-direction: column;
}
.index_registrations_demographics .ip-group-col:nth-child(2) .ip-elm-radio-multi {
  display: inline-block;
}
.index_registrations_demographics .ip-group-col:nth-child(2) .ip-elm-radio-multi .ip-elementContent {
  display: inline-block;
}
.index_registrations_demographics .ip-group-col:nth-child(2) .ip-elm-radio-multi .ip-elementContent .questionResponse{
    left: 0;
}
.index_registrations_demographics .landing_layout-v1 main .login-box form div[unique_id="GAqofp06"] div.questionResponse label {
    font-weight: normal;
}

.IP_PageBuilder_Registration .ip-group-col .ip-elm-textbox {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.ip-formText {
  border: 1px solid #e1dada;
  color: #222;
  height: 2rem;
  padding: 0.625rem;
  width: 100%;
}

input[name*=writeInResponse], input[type=text], input[type=password] {
  background-color: #fff;
  border: 1px solid #e1dada;
  color: #222;
  height: 2rem;
  padding: 0.625rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  input[name*=writeInResponse], input[type=text], input[type=password] {
    width: 100%;
  }
}

.iti, .iti input {
  width: 100%;
}

.index_forgot-password_index input[type=text], .index_forgot-password_index input[type=password], 
.index_forgot-password_passwordreset input[type=text], .index_forgot-password_passwordreset input[type=password] {
  width: 50%;
}

label {
  display: unset;
  font-weight: 700;
  line-height: 1.5;
  max-width: 100%;
  margin-bottom: 0.5rem;
  color: #000;
  position: relative;
}
label::before {
  position: absolute;
  left: 0;
  transform: translateX(-1rem) translateY(-20%);
}

label[for=rememberMe] {
  top: 1.5rem;
  left: .5rem;
}

label[for=eBmSlM37] {
  display: block !important;
}

.questionResponseCheckbox label {
  color: #000;
}

.ip-elm-checkbox-multi {
  display: flex;
}
.ip-elm-checkbox-multi:has(.clearfix):has(.questionResponseCheckbox:nth-child(2)),
.ip-elm-checkbox-multi:has(label) {
  flex-direction: column;
}
.ip-elm-checkbox-multi .questionResponse.questionResponseCheckbox {
  align-items: flex-start;
  display: flex;
}
.ip-elm-checkbox-multi .questionResponse.questionResponseCheckbox label {
  font-weight: 400;
  width: auto;
}
.ip-elm-checkbox-multi input[type=checkbox],
.ip-elm-checkbox-multi input[type=radio] {
  float: left;
  margin-left: -0.25rem;
  margin-right: 0.5rem;
  scale: 1.25;
}

.index_registrations_profile .ip-group-col:nth-child(2) .ip-elm-checkbox-multi,
.index_registrations_profile .ip-group-col:nth-child(2) .ip-elm-checkbox-multi .ip-elementContent {
  display: inline-block;
}

.index_registrations_section_2 .ip-elm-checkbox-multi, .index_registrations_packages .ip-elm-checkbox-multi {
  flex-direction: column;
}

.ip-elementLabel[isrequired="1"]:has(.requiredSymbolClass)::before, 
.ip-elementLabel:has([isrequired="1"]):has(.requiredSymbolClass)::before, 
label[isrequired="1"]:has(.requiredSymbolClass)::before, 
label:has([isrequired="1"]):has(.requiredSymbolClass)::before,
.eportal main .login-box form label[for="BHiBTA36"]::before {
  color: #5bc2e7;
  content: "*";
  display: inline-block;
  font-size: 1rem;
  padding-right: 0.5rem;
}
.eportal main .login-box form input#BHiBTA36 {
    width: 80%;
}
.ip-elementLabel .requiredSymbolClass, .ip-elementLabel .notRequiredSymbolClass,
label .requiredSymbolClass, label .notRequiredSymbolClass {
  display: none;
}

span.inlineSymbol.requiredSymbolClass {
  color: red;
  display: inline-block;
  font-size: 1rem;
}

div:has(select[disabled], input[type=text][disabled]) label[isrequired="1"]:has(.notRequiredSymbolClass),
select.ip-formSelect[disabled], select[disabled], input[type=text][disabled] {
  color: #ccc;
}

label[for=meDegE94-80]:before {
  color: red;
  content: "*";
  display: inline-block;
  font-size: 1rem;
  padding-right: 0.5rem;
  transform: translateX(-31px) translateY(-9px);
}

select.ip-formSelect, select {
  border: 1px solid #e1dada;
  color: #222;
  height: 2rem;
  padding: 0.325rem;
  width: 100%;
}

select[multiple="1"] {
  min-height: 2rem;
}

.iti_country, .iti__flag-container, .iti__dial-code {
  color: #111;
}

.iti {
  width: 100%;
}

.chosen-container {
  width: 100% !important;
}

select[disabled] {
  background-color: #eeeeee;
}

.questionResponse.questionResponseCheckbox {
  display: inline-flex;
  align-items: start;
  justify-content: space-evenly;
}
.questionResponse.questionResponseCheckbox input[type=checkbox] {
  margin: 4px;
}

table.financialSummary,
body[class*=payment] table.financialSummary {
  width: 75%;
}
body[class*=review] table.financialSummary {
    width: 100%;
}

table.financialSummary tbody tr.chargesHeaderRow td {
  display: none;
}
table.financialSummary tbody tr.chargesDescriptionHeaderRow.headerRow td {
  background: #5bc2e7;
  border: 0;
  color: #fff;
  font-family: Open Sans, sans-serif;
  font-size: 1rem;
  font-weight: 500;
  text-align: left;
}
table.financialSummary tbody tr.chargesDescriptionHeaderRow.headerRow td strong {
  font-weight: 500;
}
table.financialSummary tbody tr.chargesDescriptionHeaderRow.headerRow td:last-child, table.financialSummary tbody tr.even td, 
table.financialSummary tbody tr.odd td, table.financialSummary tbody tr.chargeRow td, table.financialSummary tbody tr.subtotalRow td, 
table.financialSummary tbody tr.even td:last-child, table.financialSummary tbody tr.odd td:last-child, 
table.financialSummary tbody tr.chargeRow td:last-child, table.financialSummary tbody tr.subtotalRow td:last-child {
  text-align: left;
}
table.financialSummary tbody tr.even td a img[src*="famfamfam/delete"], table.financialSummary tbody tr.odd td a img[src*="famfamfam/delete"], table.financialSummary tbody tr.chargeRow td a img[src*="famfamfam/delete"], table.financialSummary tbody tr.subtotalRow td a img[src*="famfamfam/delete"] {
  display: block;
  filter: saturate(1.5);
  height: 1.25rem;
  image-rendering: auto;
  width: 1.25rem;
}
table.financialSummary tbody tr:has([src*="famfamfam/delete"]) td {
    width: 2.5rem;
}
table.financialSummary tbody tr td.financialAmount {
    width: 30%;
}
table.financialSummary tbody tr td.chargeButtons {
  padding: 8px 0px !important;
  display: none;
}
table.financialSummary tbody tr td.buttons.chargesButtonsHeader {
  display: none;
}

.ui-dialog-content a {
  color: #5bc2e7;
  text-decoration: none;
  cursor: pointer;
}
.ui-dialog-content a:hover, .ui-dialog-content a:focus {
  text-decoration: underline;
}
.ui-dialog-content form .ip-buttonBar a:not(.btn-cancel) {
  background: #5bc2e7;
  border: 1px solid #5bc2e7;
  border-radius: 0px;
  color: #fff;
  cursor: pointer;
  transition: all 0.2s ease;
  font-family: "Open Sans", sans-serif;
  font-size: inherit;
  font-weight: 600;
  padding: 10px 25px;
  text-transform: none;
  margin-left: 1.5rem;
  padding: 9px 20px;
}
.ui-dialog-content form .ip-buttonBar a:not(.btn-cancel):hover, .ui-dialog-content form .ip-buttonBar a:not(.btn-cancel):focus {
  background: #02021d;
  color: #fff;
  border-color: rgb(46.5106382979, 177.4521276596, 224.4893617021);
}
.ui-dialog-content label {
  color: #000;
}

@media (max-width: 767px) {
  .ui-dialog {
    width: 100%;
    left: 4%;
  }
}

body[class^=index_registrations] main .IP_Messages {
  font-family: "Open Sans", sans-serif;
  margin: 2rem 0 -1rem;
}
body[class^=index_registrations] main .IP_Messages:has(.cybersource-error) {
  background-color: #f2dede;
  border-color: #ebccd1;
  color: #a94442;
}
body[class^=index_registrations] main .IP_Messages:not(:empty) {
  padding: 0 0 1rem;
  margin: 0;
  width: auto;
}
body[class^=index_registrations] main .IP_Messages .message {
    margin-bottom: 0;
}
body[class^=index_registrations] main .IP_Messages .message i.fa {
  margin-right: 0.5rem;
}
body[class^=index_registrations] main .IP_Messages .message ul li {
  display: list-item;
  list-style-type: disc;
}

.ip-elementPackages {
  display: grid !important;
  grid-template: auto/auto auto auto;
  gap: 5px;
  width: 100%;
}
@media screen and (max-width: 991px) {
  .ip-elementPackages {
    grid-template: auto/auto auto;
  }
}
@media screen and (max-width: 767px) {
  .ip-elementPackages {
    gap: 1rem;
    grid-template: auto/auto;
  }
}
.ip-elementPackages .ip-elementPackage {
  background: #fff;
  border: 0.0625rem solid #333;
  margin: 0.25rem;
  padding: 0.25rem;
  vertical-align: top;
  padding: 0;
  margin: auto;
}
.ip-elementPackages .ip-elementPackage label {
  background: #b425bb;
  color: #fff;
  display: block;
  line-height: 1.5;
  padding: 0.625rem 0.94rem;
  width: 100%;
}
.ip-elementPackages .ip-elementPackage label input {
  margin-right: 0.5rem;
}
.ip-elementPackages .ip-elementPackage .ip-elementPackageDescriptionContainer {
  padding: 1rem;
}
.ip-elementPackages .ip-elementPackage .ip-elementPackageDescriptionContainer .ip-elementPackageDescriptionContainerTitle {
  font-weight: 700;
}
.ip-elementPackages .ip-elementPackage .ip-elementPackageDescription ul, .ip-elementPackages .ip-elementPackage .ip-elementPackageDescription ol {
  list-style: disc;
  list-style-position: outside;
  padding: 1rem;
}

.element-SingleAncillaryPackage {
  display: flex;
  flex-direction: column;
  width: fit-content;
}
.element-SingleAncillaryPackage .ancillaryPackageName {
  margin-left: 25px;
  display: none;
}
.element-SingleAncillaryPackage label [type=checkbox], .element-SingleAncillaryPackage label input[type=radio] {
  position: unset;
}
.element-SingleAncillaryPackage input[type=checkbox], .element-SingleAncillaryPackage input[type=radio] {
  position: relative;
  top: -20px;
}
body[class*="select_your_package"] main .login-box form table.ip-elementContentTable tr td.packageRadio {
  vertical-align: top;
}
#ip-workshops-element table.ip-elementContentTable tr.waitListCheckbox:has(:empty) {
  display: none;
}
#ip-workshops-element table.ip-elementContentTable tr td {
  padding: 0 0 10px 2px;
  vertical-align: top;
}
#ip-workshops-element table.ip-elementContentTable tr td.workshopCheckbox {
  width: 1.5rem;
}

#ip-workshops-element table.ip-elementContentTable tr td.workshopName {
  display: flex;
  justify-content: space-between;
}
#ip-workshops-element table.ip-elementContentTable tr td.workshopName span.ip-workshopTitle {
    display: inline-block;
    width: 82%;
}
body[class*=payment] #payments-wrapper {
  margin: 0 -22px 0 -15px;
}
body[class*=payment] #payments-wrapper h3 {
  color: #222;
}
@media (max-width: 768px) {
  body[class*=payment] #payments-wrapper {
    width: 100%;
  }
}
body[class*=payment] #creditCardForm .ip-element:has(#paymentNonce, #cybersourceCaptureContext, #deviceData, #browserLanguage) {
  display: none;
}
body[class*=payment] #creditCardForm .ip-element:has([class*=cybersource]) {
  display: block;
  width: 80%;
}
body[class*=payment] #creditCardForm .ip-element:has([class*=cybersource]) .ip-formText {
  padding: 0 0.625rem;
}
body[class*=payment] #creditCardForm span.form-control:has(.ip-copyAddressContainer) {
  height: auto;
  width: 80%;
}
body[class*=payment] #creditCardForm span.form-control:has(.ip-copyAddressContainer) .ip-copyAddressContainer label input[type=checkbox] {
  margin-right: 0.25rem;
}
body[class*=payment] #creditCardForm span.form-control:has(.ip-copyAddressContainer) .ip-addressContainer {
  margin-left: 1.1rem;
}
body[class*=payment] #creditCardForm span.form-control:has(.ip-copyAddressContainer) .ip-addressContainer-city, 
body[class*=payment] #creditCardForm span.form-control:has(.ip-copyAddressContainer) .ip-addressContainer-cityStateSeparator, 
body[class*=payment] #creditCardForm span.form-control:has(.ip-copyAddressContainer) .ip-addressContainer-state,
body[class*=payment] #creditCardForm span.form-control:has(.ip-copyAddressContainer) .ip-addressContainer-statePostalSeparator, 
body[class*=payment] #creditCardForm span.form-control:has(.ip-copyAddressContainer) .ip-addressContainer-postalCode {
  display: inline-block;
}
body[class*=payment] #creditCardForm span.form-control:has(.ip-copyAddressContainer) .ip-addressContainer-country {
  padding-right: 1rem;
}

#progressMenu ul#progress {
  display: flex;
  gap: 0.125rem;
  list-style: none;
  margin-top: 2rem;
  padding: 0.125rem;
}
@media screen and (max-width: 767px) {
  #progressMenu ul#progress {
    flex-direction: column;
  }
}
#progressMenu ul#progress li {
  background: #e9e9ec;
  border-bottom: unset;
  flex-basis: 33.3333333333%;
  font-size: 1rem;
  font-weight: 500;
  padding: 5px 10px;
  text-align: center;
  white-space: nowrap;
}
#progressMenu ul#progress li:hover {
  background: #AAE6FF;
}
#progressMenu ul#progress li:hover a {
  color: #111;
}
#progressMenu ul#progress li.currentStep {
  background: #AAE6FF;
  color: #000;
}
#progressMenu ul#progress li span, #progressMenu ul#progress li a {
  color: #000;
  display: inline-flex;
}
#progressMenu ul#progress li span i, #progressMenu ul#progress li a i {
  margin-right: 0.625rem;
}

ul#publicMenu {
  display: grid;
  gap: 0.125rem;
  grid-template-columns: repeat(5, minmax(15%, 1fr));
  line-height: 1;
  list-style: none;
  margin-top: 2rem;
  padding: 0;
}
@media screen and (max-width: 767px) {
  ul#publicMenu {
    grid-template-columns: repeat(auto-fit, minmax(100%, 1fr));
  }
}
ul#publicMenu li {
  background: #e9e9ec;
  border-bottom: unset;
  font-size: clamp(1rem, 0.5vw, 1.24rem);
  font-weight: 500;
  padding: 5px 10px;
  text-align: center;
}
ul#publicMenu li:hover {
  background: #AAE6FF;
}
ul#publicMenu li:hover a {
  color: #111;
}
@media screen and (max-width: 767px) {
  ul#publicMenu li {
    font-size: clamp(1.24rem, 1vw, 2rem) !important;
  }
}

ul#publicMenu li.currentStep {
  background: #AAE6FF;
  color: #000;
}
ul#publicMenu li span, ul#publicMenu li a {
  color: #000;
  display: inline-flex;
}
ul#publicMenu li span i, ul#publicMenu li a i {
  margin-right: 0.625rem;
}

body[class^=index_exhibitorreg] ul#publicMenu .firstMenuItem {
  display: none;
}

body[class*=review] .ip-sectionTitle {
  display: none;
}
body[class*=review] .textElement-label {
  font-weight: 700;
  margin-right: 1rem;
}
body[class*=review] .ip-elm-text {
  flex-direction: column;
  margin-bottom: 0.5rem;
}
body[class*=review] h2 a[href*="/index/registrations/"] {
  background: #5bc2e7;
  border: 1px solid #5bc2e7;
  border-radius: 0px;
  color: #000;
  cursor: pointer;
  transition: all 0.2s ease;
  font-family: "Open Sans", sans-serif;
  font-size: inherit;
  font-weight: 600;
  padding: 10px 25px;
  text-transform: none;
  font-size: 0.875rem;
}
body[class*=review] h2 a[href*="/index/registrations/"]:hover, body[class*=review] h2 a[href*="/index/registrations/"]:focus {
  background: rgb(46.5106382979, 177.4521276596, 224.4893617021);
  color: #fff;
  border-color: rgb(46.5106382979, 177.4521276596, 224.4893617021);
}
body[class*=review] form[action*=addpromocode] {
  margin-bottom: 1rem;
}
body[class*=review] form[action*=addpromocode] .ip-element.form-group {
  padding: 0.5rem 0;
}
body[class*=review] input[value*=Code], body[class*=review] input[value*=code] {
  margin-bottom: 1rem;
}
body[class*=review] a.btn.btn-default.btn-add[href*="/registrations/profile/"] {
  margin-right: 1rem;
}
body[class*=review] .ip-element.ip-elm-text {
  display: flex;
  flex-direction: row;
}
body[class*=review] .ip-element.ip-elm-text label {
  padding-right: 0.5rem;
  text-wrap: nowrap;
}

body[class^=index_exhibitorreg] span.taskElement {
  display: grid;
  grid-template: auto/18% auto;
  gap: 1rem;
  grid-template-areas: "taskFilter taskTable";
  margin-left: 0;
}
@media screen and (max-width: 991px) {
  body[class^=index_exhibitorreg] span.taskElement {
    grid-template: auto/auto;
    grid-template-areas: " taskFilter " " taskTable";
  }
}
body[class^=index_exhibitorreg] .taskFilters {
  float: none !important;
  font-size: clamp(0.85rem, 1vw, 1rem);
  grid-area: taskFilter;
  width: auto;
}
@media screen and (max-width: 991px) {
  body[class^=index_exhibitorreg] .taskFilters {
    display: grid;
    grid-template-columns: repeat(3, minmax(32%, 1fr));
    gap: 1rem;
  }
}
body[class^=index_exhibitorreg] .taskFilters br {
  display: none;
}
body[class^=index_exhibitorreg] .taskFilters label:has(input) {
  color: #000;
  display: flex;
  gap: 5px;
}
body[class^=index_exhibitorreg] .taskFilters span.filterHeader {
  display: block;
  width: auto;
  background-color: #000;
  color: #fff;
  margin-bottom: 0.5rem;
}
body[class^=index_exhibitorreg] div.taskDisplay {
  float: none !important;
  grid-area: taskTable;
  margin-right: 0;
  margin-left: 0;
  width: auto !important;
}
body[class^=index_exhibitorreg] div.taskDisplay .task {
  font-size: clamp(0.85rem, 1vw, 1rem);
  padding: 1rem;
  width: auto;
}
body[class^=index_exhibitorreg] div.taskDisplay .task .taskHeader {
  display: grid;
  font-size: clamp(0.85rem, 1vw, 1rem);
  grid-template: auto/46% 4% 17% 17% 4%;
}
body[class^=index_exhibitorreg] div.taskDisplay .task .taskDetails {
  width: 90%;
}

table.reportTable th, table.groupFinancialSummary th {
  background-color: #5bc2e7 !important;
  color: #fff;
}
table.reportTable tr.even, table.groupFinancialSummary tr.even,
table.reportTable tr.balanceDueRow td, table.groupFinancialSummary tr.balanceDueRow td {
  background-color: #111;
}
table.reportTable tr.odd, table.groupFinancialSummary tr.odd {
  background-color: #222;
}

.index_registrations_groupreview #ip-financialSummary-Container table.groupFinancialSummary,
.index_registrations_grouppayment #ip-financialSummary-Container table.groupFinancialSummary,
.index_registrations_grouppayment #ip-financialSummary-Container table.financialSummary,
.index_registrations_payment #ip-financialSummary-Container table.groupFinancialSummary,
.index_registrations_payment #ip-financialSummary-Container table.financialSummary{
    width: 100%;
}
.index_registrations_grouppayment main .login-box #ip-financialSummary-Container.well,
.index_registrations_payment main .login-box #ip-financialSummary-Container.well{
    background-color: #fff;
    border: unset;
    border-radius: 0;
    padding: 0 19px;
}

@media (max-width: 768px) {
  .index_registrations_groupreview { }
  .index_registrations_groupreview .reportView {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; /* Smooth scrolling on iOS */
    margin: 0 auto;
    border: 1px solid #ddd; /* Optional visual boundary */
  }
  .index_registrations_groupreview table {
    width: auto;
    white-space: pre-wrap;
    border-collapse: collapse;
  }
  .index_registrations_groupreview th, .index_registrations_groupreview td {
    padding: 5px;
    border: 1px solid #eee;
    text-align: left;
  }
  .index_registrations_groupreview #ip-financialSummary-Container {
    max-width: 100vw;
    margin-left: 0;
    padding: 0 10px;
    width: 100%;
  }
  .index_registrations_groupreview #ip-financialSummary-Container table.groupFinancialSummary {
   width: auto;
   max-width: 100%;
  }
  .index_registrations_groupreview table.groupFinancialSummary td, .index_registrations_groupreview table.groupFinancialSummary th {
    padding: 3px;
  }
}

header {
  padding: 4rem 0 0;
}

.landing_layout-v1 {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 100vh;
  min-height: 100svh;
}
#event-info {
    display: flex;
    flex-direction: column;
    height: 121px;
    justify-content: flex-end;
}
#event-info img.event-details {
    max-width: 267px;
    width: auto;
}
body[class^=index_registrations] .landing_layout-v1 .ip-formText {
  border-radius: 0px;
  position: relative;
}
body[class^=index_registrations] .landing_layout-v1 .ip-elm-textbox {
  padding: 0;
}
body[class^=index_registrations] main {
  flex: 12 1 auto;
}

body[class*=checkin] .landing_layout-v1 header, body:not([class*=index]) .landing_layout-v1 header, body[class*=password] .landing_layout-v1 header, body[class*=exhibitorreg] .eportal header {
  order: 0;
  padding: 0;
}

body[class*=checkin] .landing_layout-v1 main, body:not([class*=index]) .landing_layout-v1 main, body[class*=password] .landing_layout-v1 main, body[class*=exhibitorreg] .eportal main {
  flex: 1 1 auto;
  order: 1;
}

body[class^=index_registrations_] {
  height: 100%;
}
body[class^=index_registrations_] .ip-element {
  padding: 5px 15px;
}
.index_registrations_tbu26_spbhe26 main .login-box .IP_PageBuilder_Registration:has(.ip-elementEmpty) {
    display: none;
}
body[class^=index_registrations_] .landing_layout-v1, body[class^=index_exhibitorreg_] .eportal {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 100vh;
  min-height: 100svh;
}
body[class^=index_registrations_] .landing_layout-v1 header, body[class^=index_exhibitorreg_] .eportal header {
  order: 0;
  width: 100%;
}
body[class^=index_registrations_] .landing_layout-v1 main, body[class^=index_exhibitorreg_] .eportal main {
  order: 1;
  width: 100%;
}
body[class^=index_registrations_] .landing_layout-v1 main a[href*="/index/exhibitorreg/managereg/"] {
  text-align: left;
  display: block;
}
body[class^=index_registrations_] .landing_layout-v1 main form .IP_PageBuilder_Registration .ip-elementEmpty, body[class^=index_registrations_] .landing_layout-v1 main .IP_PageBuilder_Registration .ip-elementEmpty {
  display: none;
}
body[class^=index_registrations_] .landing_layout-v1 footer, body[class^=index_exhibitorreg_] .eportal footer {
  order: 3;
  width: 100%;
}

body .ip-element {
  padding: 5px 15px;
}
.landing_layout-v1, .eportal {
  display: flex;
  flex-direction: column;
  height: 100vh;
}
.landing_layout-v1 header, .eportal header {
  flex-shrink: 0;
  order: 0;
  width: 100%;
}
.landing_layout-v1 main, .eportal main {
  flex-grow: 1;
  order: 1;
  width: 100%;
}
.landing_layout-v1 footer, .eportal footer {
  flex-shrink: 0;
  order: 3;
  width: 100%;
}

body[class*=password] main form input[type=submit][style*="108px"] {
  width: auto !important;
  margin: 1rem;
}

footer {
  background-color: #454955;
  color: #fff;
  font-family: Open Sans, sans-serif;
  font-size: 14px;
  padding: 1rem;
  margin-top: 1rem;
  order: 5;
  width: 100%;
}
footer img {
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 55px;
}
footer ul {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-end;
  list-style: none !important;
  margin-bottom: 0.5rem;
  padding-left: 0;
  text-align: right;
  width: 100%;
}
@media screen and (max-width: 768px) {
  footer ul {
    padding-top: 1rem;
    flex-direction: column;
    text-align: left;
  }
}
footer ul li {
  line-height: 1.6;
  margin-left: 0.3rem;
}
footer ul li a {
  color: #fff;
  font-family: Open Sans, sans-serif;
  font-size: 14px;
  text-decoration: none;
}
footer ul li a:focus, footer ul li a:hover {
  color: #fff;
  text-decoration: underline;
}
footer ul li:last-child::before {
    color: #fff;
    content: "|";
    margin: 0 10px 0 5px;
}
footer .copyright {
  border-top: 2px solid #fff;
  color: #fff;
  display: block;
  font-family: Open Sans, sans-serif;
  font-size: 14px;
  margin-top: 1.2em;
  padding: 1.2em 0 0;
  text-align: right;
  width: 100%;
}
@media screen and (max-width: 768px) {
  footer .copyright {
    text-align: left;
  }
}
footer ul.privacy {
  list-style-type: none;
}

.eportal header {
  background-color: #fff;
}
.eportal main {
  background: #fff;
  flex: 1 1 auto;
  margin-top: 2rem;
  order: 1;
}

.eportal main aside {
  padding: 0 2rem;
}
.eportal .forgotPasswordLink_parent label[for=forgotPasswordLink] {
  display: none;
}
.eportal .forgotPasswordLink_parent p.forgotPasswordLink {
  margin: 0;
}
.eportal .rememberMe_parent {
  display: flex;
  flex-direction: row-reverse;
  flex-wrap: nowrap;
  justify-content: flex-end;
}
.eportal .rememberMe_parent label[for=rememberMe] {
  top: 0;
}
.eportal main .login-box form input.btn.btn-submit.btn-success {
    margin-left: 15px;
}
.eportal .landing-sidebar-container {
  border-radius: 0px;
  background-color: #88cde4;
  padding-top: 1rem;
  margin-top: 1rem;
}
.eportal input[type=text].ip-formText {
  width: 100%;
}

#developmentStatusMessage {
  display: none !important;
}

.ip-elementLabel[isrequired="1"]:before {
  font-size: 1.5rem;
  font-weight: 700;
}

.textWrap {
  white-space: nowrap;
}

.landing_layout-v1 {
  color: #000;
}
.landing_layout-v1 .ip-elm-textbox {
  padding: 1rem;
}
.landing_layout-v1 .ip-formText {
  border-radius: unset;
}
.landing_layout-v1 header {
  order: 0;
  padding: 0 2rem;
}
@media screen and (max-width: 767px) {
  .landing_layout-v1 header {
    padding: 0;
  }
}
header img.event-logo {
  aspect-ratio: auto;
  border: 0;
  width: 100%;
  max-width: 376px;
  height: auto;
  padding-top: 2rem;
}
   
.landing_layout-v1 main h1 {
  font-size: 2.3rem;
  font-weight: 700;
  text-transform: uppercase;
}
.landing_layout-v1 main .content, .eportal main .content {
  margin-top: 4.5rem;
  color: #000;
}
@media screen and (max-width: 767px) {
  .landing_layout-v1 main .content {
    margin-top: 0;
  }
}
.landing_layout-v1 main .content h4 {
  font-family: "Inter", sans-serif;
  font-weight: 500;
  font-size: 1.5rem;
}
.landing_layout-v1 main .content p, .landing_layout-v1 main .content a {
  font-size: 0.8rem;
}
.landing_layout-v1 main .content h6 {
  font-size: 1rem;
  font-weight: 700;
}
.landing_layout-v1 main form .ip-buttonBar .btn-processing {
  background: #fff;
  color: #000;
}
.landing_layout-v1 main form input[name*=writeInResponse], .landing_layout-v1 main form input[type=text], .landing_layout-v1 main form input[type=password] {
  width: 80%;
}
.landing_layout-v1 main form .questionResponse.questionResponseCheckbox {
  justify-content: normal;
}
.landing_layout-v1 main .login-box {
  color: #000;
  margin: 2rem 0;
  padding: 1.5rem 1rem 1.25rem;
}
@media screen and (max-width: 767px) {
  .landing_layout-v1 main .login-box {
    margin: 0;
  }
}
.landing_layout-v1 main .login-box .ip-element.form-group {
  padding: 0;
}
.landing_layout-v1 main .login-box h2 {
  font-weight: 500;
  font-family: "Open Sans", sans-serif;
  padding: unset;
}
.landing_layout-v1 main .login-box div.ip-element {
  padding: 0.5rem 0;
}
.landing_layout-v1 main .login-box div.ip-element u {
  text-decoration: none;
}
.landing_layout-v1 main .login-box .ip-buttonBar {
  align-content: start;
  margin-top: 0.5rem;
}
.landing_layout-v1 main .login-box .ip-buttonBar .btn.btn-cancel, .index_registrations_tbu26_spbhe26 .eportal main .login-box .ip-buttonBar:has([href^="/STGBHEU26/logout?"]) a.btn.btn-cancel {
  display: none;
}
.landing_layout-v1 section {
  order: 3;
  background: #fff;
  color: #000;
}
.landing_layout-v1 section hr {
  color: #000;
  border: 1px solid #6363cf;
}
.landing_layout-v1 section a {
  color: #b425bb;
  font-weight: 700;
}
.landing_layout-v1 footer {
  margin-top: unset;
}
/* Profile page */
body[class*="profile"] main .login-box form div[unique_id="VWuwPj44"]:not(:has([disabled])){ 
  display: flex !important;
  flex-direction: row;
}
body[class*="profile"] main .login-box form div[unique_id="SpLdNY29"].ip-elm-checkbox-multi .ip-elementLabel[isrequired="1"]:before, body[class*="profile"] main .login-box form div[unique_id="VWuwPj44"].ip-elm-checkbox-multi .ip-elementLabel[isrequired="1"]:before {
    top: 0 !important;
}
body[class*=profile] main .login-box form label[for="SpLdNY29"] {
    bottom: -1.5rem;
}
body[class*=profile] main .login-box input[type=text] {
  width: 100%;
}
body[class*=profile] main .login-box .ip-buttonBar .btn.btn-cancel {
  display: inline-block;
  color: #000;
}
body[class*=profile] main .login-box .ip-buttonBar .btn.btn-cancel:hover {
  color: #fff;
  border: none;
  background-color: #000;
}
body[class*=profile] main div.ip-element[unique_id=oSeMHb98] {
  font-size: 0.89rem;
}
body[class*=profile] .ip-elm-html ~ .ip-elm-checkbox-multi .ip-elementLabel[isrequired="1"]:before {
  top: 16px !important;
}

/* Selection package page */
body[class*=select_your_package] main .login-box form .workshop-item-group:has(input[type=checkbox][disabled]) td span, body[class*=select_your_package] main .login-box form .workshop-item-group:has(input[type=checkbox][disabled]) tr td ul li {
    color: #999;
}
body[class*=select_your_package] main .login-box form .workshop-item-group tr td ul {
    padding-left: .5rem;
}
body[class*=select_your_package] main .login-box form div[unique_id="pHHEtY88"] ul {
    padding-left: 1.25rem;
}
body[class*=select_your_package] main form label[for="xUxJLM77-1096"] {
    padding-left: .35rem;
}
body[class*=pass_selection] .landing_layout-v1 main .login-box .ip-buttonBar .btn.btn-cancel, body[class*=select_your_package] .landing_layout-v1 main .login-box .ip-buttonBar .btn.btn-cancel {
  display: inline-block;
  color: #000;
}
body[class*=pass_selection] .landing_layout-v1 main .login-box .ip-buttonBar .btn.btn-cancel:hover, body[class*=select_your_package] .landing_layout-v1 main .login-box .ip-buttonBar .btn.btn-cancel:hover {
  color: #fff;
  border: none;
  background-color: #000;
}
body[class*=select_your_package] form .ip-group-col.col-lg-12 {
  padding-left: 0;
}
body[class*=select_your_package] form .ip-group-col ul {
  padding-left: 0;
}
body[class*=select_your_package] div.ip-element {
  padding-top: 0;
}
body[class*=select_your_package] .ip-element[unique_id=lxgVED34] {
  margin-top: -4rem;
}
body[class*=select_your_package] .ip-elm-checkbox-multi[unique_id=VoEySw92] {
  flex-direction: column;
}
body[class*=select_your_package] ul {
  list-style: disc;
  list-style-position: inside;
}

/*Demographics page*/
body[class*=demographics] .ip-group-col:nth-child(2) .ip-elm-radio-multi {
  display: inline-block;
}
body[class*=demographics] .landing_layout-v1 main .login-box .ip-buttonBar .btn.btn-cancel {
  display: inline-block;
  color: #000;
}
body[class*=demographics] .landing_layout-v1 main .login-box .ip-buttonBar .btn.btn-cancel:hover {
  color: #fff;
  border: none;
  background-color: #000;
}
body[class*=demographics] .ip-group-col:nth-child(2) .ip-elm-radio-multi .ip-elementContent {
  display: inline;
  margin-left: 1rem;
}

/*Review page*/
body[class*=review] .landing_layout-v1 main .login-box .ip-buttonBar .btn.btn-cancel {
  display: inline-block;
  color: #000;
}
body[class*=review] .landing_layout-v1 main .login-box .ip-buttonBar .btn.btn-cancel:hover {
  color: #fff;
  border: none;
  background-color: #000;
}
body[class*=review] .ip-element.ip-elm-text {
  flex-wrap: wrap !important;
}
body[class*=review] h2 a[href*="/index/registrations/"]:hover {
  background-color: white;
  color: #000;
}

/*Payment page*/
body[class*=payment] .landing_layout-v1 main .login-box .ip-buttonBar .btn.btn-cancel {
  display: inline-block;
  color: #000;
}
body[class*=payment] .landing_layout-v1 main .login-box .ip-buttonBar .btn.btn-cancel:hover {
  color: #fff;
  border: none;
  background-color: #000;
}
body[class*=payment] label {
  color: #111;
}

body[class*=checkin] .landing_layout-v1 main,
body[class*=password] .landing_layout-v1 main {
  background: #fff;
  flex: 1 1 auto;
  order: 1;
}
/*Exhbitor Portal page*/
body[class*=exhibitorreg] .eportal header {
  background-color: #fff;
  order: 0;
  padding: 0;
}
body[class*=exhibitorreg] .eportal header h1 {
  color: #000;
  font-size: 1.25rem;
  font-weight: 500;
}

body[class*=exhibitorreg] .eportal main {
  background: #fff;
  flex: 1 1 auto;
  order: 1;
}

header #event-info {
  padding-top: 0;
}

.IP_PageBuilder_Registration .ip-group-col .ip-elm-textbox {
  width: 100%;
}

footer img {
  margin-top: 10%;
}

/*.index_registrations_attendee .landing_layout-v1 main .login-box input[type=text] {
  width: 50%;
}*/

main .login-box .row:has(.col-lg-7) {
  display: flex;
  flex-wrap: wrap;
}
main .login-box .col-lg-5 {
  width: 45%;
}

main .login-box .col-lg-7 {
  margin-left: 1rem;
  padding-right: 0;
  width: 52.5%;
}
body[class*=review] main .login-box .col-lg-7 {
    width: 52.5%;
    margin-left: 1rem;
    padding-right: 0;
}
@media screen and (max-width: 991px) {
  body[class*="review"] main .login-box .col-lg-7 {
    width: 51.5%;
  }
  body[class*="review"] h2 a[href*="/index/registrations/"], body[class*="review"] #ip-financialSummary-addPromoCode input[value*="ode"] {
    font-size: .7rem;
  }
  body[class*="review"] main .login-box .ip-elm-text .ip-elementContent, body[class*="review"] main .login-box table.financialSummary tr td {
    font-size: .85rem;
  }
   main .login-box .col-lg-7 {
    margin-left: 0;
  }
}
@media screen and (max-width: 767px) {
body[class*="review"] main .login-box .col-lg-7,
  main .login-box .col-lg-7 {
    margin-left: 0;
    width: 100%;
  }
  main .login-box .col-lg-5 {
    width: 100%;
  }
}