@import url(https://fonts.googleapis.com/css2?family=Aleo:ital,wght@0,100..900;1,100..900&family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap);
:root {
    --primaryColor: #003CB2;
    --secondaryColor: #28B4FF;
    --titleColor: #024; 
    --subTitleColor: #003cb2; 
    --bodyFontColor: #000; 
    --btnColor: #9423fc;
    --CTES-img: url(https://caterevent.informaconnect.com/eventAssets/catev_2027_260907112704/image/CaterEvent2027/hero-bg.jpg);
    --CTES-LPbg: url(https://caterevent.informaconnect.com/eventAssets/catev_2027_260907112704/image/CaterEvent2027/cstse26_LP-BG_1800x628.jpg);
    --CTES-insideBG: url(https://caterevent.informaconnect.com/eventAssets/catev_2027_260907112704/image/CaterEvent2027/cstse26_InsideHeader_1352x132.jpg);
    
	--CTES-font: 'Open Sans', sans-serif;
	--CTES-fontHeader: 'Aleo', serif;
	
	--informaFooterBg: #454955;
	--CTESprivacyBg: #e6e5e5;
	--colorWhite: #fff;
}
/* Not ideal, due to limitations of Bootstrap */
body {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: clamp(100vh, 30vh, 100svh);
    overflow-x: hidden;
    align-items: stretch;
}


header {
    order: 0;
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: auto;
    align-self: left;
}

main {
    order: 1;
    flex-grow: 10;
    padding-bottom: 2em;
}


footer .footer {
    order: 2;
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: auto;
    align-self: center;
}






_:-ms-lang(x), input.form-control { display: inline-block; }
/* Font Family */
*, html, body, .ui-widget input, p, label { font-family: var(--CTES-font); }
h1, .heading1 { font-family: var(--CTES-fontHeader); }
h2, h3, h4, h5, h6, p { font-family: var(--CTES-font); }

/*Font Sizes*/
html, body { font-size: 1rem; }
h1, .heading1 { color: var(--titleColor); font-size: 2.25rem; font-weight: 700; }
h2 { color: var(--subTitleColor); font-size: 1.5rem; }
h3 { color: var(--titleColor); font-size: 1.5rem; }
p { color: var(--bodyFontColor);  }


/* EV2 REQUIRED STYLES
------------------------------------------------------*/
div.ip-group-container div.ip-element label.errorFieldLabel, div.ip-group-container div.ip-element label.emptyFieldLabel { color: #a94442; }

/* THEME STYLES */
header {
	padding: 1rem 0;
	font-size: 1rem;
}

header p:last-child {
	margin-bottom: 0;
}

header .header-logo img {
	width: auto;
	max-width: 100%;
	max-height: 65px;
	height: auto;
}

header .header-dates strong {
	font-size: 1.125em;
}

@media (max-width: 767px) {
	header {
		font-size: .85rem;
	}
	
	header .text-right,
	header .text-left {
		text-align: center;
	}
	
	.header-dates p {
		margin-top: 1rem;
	}
}

@media (min-width: 768px) {
	.header-dates .event-venue,
	.header-dates .event-locale {
		display: block;
	}
}

header .header-dates .event-locale {
	white-space: nowrap;
}

.header-section img { padding: 3.5rem 0 1.5rem; max-width: 100%;}
.header-section .header_logo_top a img.aocf-logo { width: 80%; }
.header_logo_top { margin-bottom: 2rem; }
.header_logo_top p .event-date { font-size: 2.25rem;font-weight: 700; text-transform: uppercase; }
.header_logo_top p { color: var(--colorWhite); font-size: 1.75rem; font-weight: 600; margin-left: 3rem; text-transform: uppercase; }
.page-banner {
    background-color: var(--colorWhite);
    background-image: var(--CTES-img);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: left top;
    clear: both;
    margin-bottom: 15px;
	padding-bottom: 0;
}
main {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: clamp(calc(100vh - 24.5rem), 30vh, calc(100svh - 26rem));
    order: 1;
}
.index_registrations_speaker27 main { min-height: clamp(calc(100vh - 35.5rem), 30vh, calc(100svh - 36rem)); }
main .IP_Messages { order: 0; }
main .publicMenu { order: 1; }
main #progressMenu { order: 2; }
main form { order: 3; padding: 2rem 0; }
main .container-fluid .ip-elementEmpty:empty { display: none; }
section { order: 9; }

.btn { 
	background: var(--btnColor); 
	border: none; 
	color: var(--colorWhite); 
	font-size: 1.15rem; 
	font-weight: 700; 
	text-transform: uppercase; 
}

.btn.attendees { 
	min-width: 224px; 
}

.btn.attendees:hover { 
	color: var(--colorWhite); 
	background-color: var(--secondaryColor);
}

body[class*="attendee"] main form div[unique_id="WKrLOH02"], body[class*="onsite"] main form div[unique_id="gdrUmL94"] {
    width: 95%;
    margin-left: 0.5rem;
}
body[class*="attendee"] main form div[unique_id="WKrLOH02"] label, body[class*="onsite"] main form div[unique_id="gdrUmL94"] label {
    margin-left: 0rem;
}
.landing-text { padding: 20px; margin: 20px 0; }
.landing-text p { color: var(--colorWhite); font-size: 0.9rem; }
.landing-text h1, .landing-text .heading1, section .disclaimer-box .heading1 { color: var(--colorWhite); font-weight: 700; font-size: 2rem; }  
.login-box { margin-bottom: 2rem; margin-top: 3.75rem; }


.old.info-box { display: flex; flex-direction: row; justify-content: center; align-items: center; }
.info-box img { border-radius: 50%; object-fit: cover; /* Ensures image fills the circle without distortion */ height: auto; max-height: 168px; width: 100%; max-width: 168px; /* Set width and height to the same value */}

.info-box {
	padding-top: 1em;
	padding-bottom: 1em;
}

.info-box h2:first-child {
	margin-top: 0;
}
.info-box p:last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 767px){
	.info-box {
		 text-align: center;
		 margin
	}
	.info-box img {
		margin: 0 auto 1em auto;
	}
}


.vertical-center {
  display: flex;
  align-items: center;
}

.contact-card { margin: 50px 0; text-align: center; }
.text-box { min-height: 160px; padding:10px; }
.disclaimer-box { background-color: var(--subTitleColor); padding: 50px 0px; }
.disclaimer-box h1, .disclaimer-box p  { color: var(--colorWhite); }
.disclaimer-box p { font-size: 1.35rem; font-weight: 500; }
.privacy-section { background-color: var(--CTESprivacyBg); font-size: 0.8rem; font-weight: normal; padding-top: 20px; padding-bottom: 20px; }

/* PROGRESS MENU + PUBLIC MENU */
#progressMenu ul li, #publicMenu li { background: var(--primaryColor); color: var(--colorWhite); }
#publicMenu li a { color: var(--colorWhite); }
#progressMenu ul li.currentStep, #publicMenu li:hover { background: var(--secondaryColor); }

/*Inside page */
.inside-page { display: flex; flex-direction: column; height: 100%; min-height: clamp(100vh, 30vh, 100svh); /*overflow-x: hidden; padding-bottom: 10px; padding-top: 10px;*/ }

.inside-page header {  }
	
.inside-page header::after {
  content: "";
  display: block;
  height: 10px;
  width: 100%;
  margin-top: 1rem;
  background-image: var(--CTES-img);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}	

.inside-page header .header_logo_top { align-items: center; display: inline-flex; flex-direction: row; float: right; gap: .5rem; margin: clamp(3rem, 5vh, 3.75rem) 0 0; }
.inside-page header .header_logo_top .event-date { color: var(--colorWhite);  font-size: 1.75rem; font-weight: 700; text-transform: uppercase; white-space: nowrap; }
.inside-page header .header_logo_top p { border-left: 2px solid var(--colorWhite); font-size: 1.25rem; margin: 0; padding-left: .5rem; }
.inside-page main { min-height: clamp(calc(100svh - 14.25rem), 45vh, calc(100svh - 18.75rem))}

/*Profile Page*/
.index_registrations_profile div[unique_id="TqtVMn61"], .index_registrations_profile div[unique_id="stJhLF48"], .index_registrations_profile div[unique_id="ampXhF18"], .index_registrations_profile div[unique_id="bJGAVH59"] { width: 100%; }
.index_registrations_profile .questionResponse:has(input[radio], label) { align-items: flex-start; display: flex; flex-direction: row; width: auto; }
.index_registrations_profile .ip-elm-radio-multi.ip-element.form-group:has(label[for="TEOECO29"], label[for="JEMSnZ39"], label[for="rbtFuO01"], label[for="KvKAgh76"], label[for="ievVvo66"], label[for="rGaUPV37"]):not([style*="none"]) { display: grid !important; grid-template: auto / 10.75rem auto; }
.index_registrations_profile .ip-elm-radio-multi.ip-element.form-group:has(label[for="TEOECO29"], label[for="JEMSnZ39"], label[for="rbtFuO01"], label[for="KvKAgh76"], label[for="ievVvo66"], label[for="rGaUPV37"]) .ip-elementContent { display: flex !important; flex-direction: row; gap: 1rem; }
.index_registrations_profile .ip-elm-radio-multi.ip-element.form-group:has(label[for="TEOECO29"], label[for="JEMSnZ39"], label[for="rbtFuO01"], label[for="KvKAgh76"], label[for="ievVvo66"], label[for="rGaUPV37"]) .ip-elementContent input[radio]{ margin:0; padding:0; }

/* PACKAGES */
.ip-elementPackages { gap: 0.5rem;}
.packageGroupName { background: var(--primaryColor); border-bottom: 2px solid #E5E5E5; color: var(--colorWhite); font-size: 1.4rem; padding: 10px 15px; }
.ip-elementPackages .ip-elementPackage label { background: var(--primaryColor); color: var(--colorWhite); }
.ip-elementPackage .ip-elementPackageDescription > ul { margin-top: 0px; padding: 0 0 0 23px; }
#wOfgnS74-packageID-30 select { background: var(--secondaryColor); color: var(--colorWhite); }
#wOfgnS74-packageID-30 option { color: var(--colorWhite); }
#wOfgnS74-packageID-30 option:checked, #wOfgnS74-packageID-30 option:focus { background: var(--primaryColor); }
.ip-elementPackages .ip-elementPackage .option-selected label { background: var(--secondaryColor); }
.index_registrations_packages div[unique_id="tSTWnq18"] { align-items: flex-start; display: inline-flex; gap: .5rem; }
.ip-buttonBar input.btn, .ip-buttonBar a.btn-add, .ip-buttonBar a.btn-submit, .form-group a.btn-success{ background: var(--primaryColor); border: none; color: var(--colorWhite); margin: 0 5px; transition: all ease-in 0.3s; }
.ip-buttonBar a.btn { border: initial; font-weight: 600; }
.ip-buttonBar a.btn:hover{ color: black; text-decoration: underline; }
.ip-buttonBar input.btn:hover, .form-group a.btn-success:hover{ background: var(--secondaryColor); color: var(--colorWhite); text-decoration: none; }
.purchasableItemInputBox label, .purchasableItemInputBox span.ip-elementContent { display: inline-block; }
.purchasableItemElement > .form-group { align-items: baseline; display: flex; margin-bottom: 0; gap: 5px; }
.purchasableItemElement > .form-group input[type="checkbox"] { margin: 0; padding: 0; }
span.purchasableItemInputBox .ip-element:has(input.purchasableItemInput) {
    margin-left: 1.75rem;
}
/* Additional Events*/
main form div[unique_id="tSTWnq18"][targetenabled="1"].ip-elm-checkbox-multi, body[class*="additional_events"] main form .ip-elm-checkbox-multi.ip-element.form-group {
    display: flex;
    flex-direction: row;
    gap: 8px;
}

/*Review Page*/
.index_registrations_review .ip-elm-text.form-group:not(:has(.ip-elementContentTable)) { display: grid; grid-template: auto / 10rem auto; gap: .5rem; margin: 0 0 0.5rem; }

/* FINANCIAL SUMMARY TABLE */
.financialSummary td.amountHeader, .financialSummary td.financialAmount { text-align: right; white-space: nowrap; width: 15%; }
.financialSummary tr.balanceDueSubtotalRow td { background-color: #e9e9e9; }

/* FOOTER */
footer, .inside-page footer { height: 75px; margin: auto 0; order: 10; }
.footer { align-content: center; background: var(--informaFooterBg); color: var(--colorWhite); display: flex; padding-bottom: 10px; padding-top: 10px; }
footer .footer .col-sm-9 { display: flex; flex-direction: column; }
.footer ul { border-bottom: 1px solid var(--colorWhite); display: inline-flex;  flex-wrap: wrap; gap: 5px; justify-content: flex-end; list-style: none; padding-bottom: 10px; padding-inline-start: 0; }
.footer ul li { font-size: 0.8rem; }
.footer ul li:after { content: " | "; padding-left: 4px;}
.footer ul li:last-child:after { content: ""; padding: 0;}
.footer ul li:last-child { clear: both; }
.footer ul li a { color: var(--colorWhite); font-family: var(--CTES-font); font-size: 0.75rem; text-decoration: none; }
.footer ul li a:hover { text-decoration: underline; }
.footer .copyright { color: var(--colorWhite); display: block; font-family: var(--CTES-font); font-size: 0.75rem; padding: .75em 0 0; width: 100%; }
#public:has(.header-section) footer .footer { justify-content: space-evenly; }
#public:has(.header-section) footer .footer .row { width: 100%; }
.index_registrations_exbs25 a.btn-success { background: var(--primaryColor); color: var(--colorWhite); font-size: 0.85rem; margin: 10px 20px 10px 0; padding: 6px 12px; }

body[class*="checkin"] .inside-page main { min-height: clamp(calc(100svh - 13.25rem), 45vh, calc(100svh - 18.75rem)); }
body[class*="checkin"] .inside-page .footer span.copyright { margin-top: 1rem; }
@media screen and (max-width: 1199px) {
    .inside-page header .header_logo_top {
        margin: clamp(2rem, 4vh, 3.75rem) 0 0;
    }
}
@media screen and (max-width: 991px) {
   main .old.info-box, .inside-page header-section .flex-centered, .inside-page header .header_logo_top { flex-direction: column; }
   .inside-page header .header_logo_top { align-items: flex-start; flex-direction: column; }
   .inside-page header .header_logo_top p { border: none; }
}
@media screen and (max-height: 950px){
    .ui-dialog.ui-widget.ui-widget-content.ui-corner-all.ui-front.ui-draggable { left: 30% !important; width: auto !important; }
}
@media screen and (min-height: 950px){ }
//ipad Mini 
@media screen and ( min-width: 768px )  {
    .flex-centered {
        display: flex;
        align-items: center;
    }
}
@media screen and (min-width: 767px) and (max-width: 820px) and (orientation: portrait) {
    .ui-dialog.ui-widget.ui-widget-content.ui-corner-all.ui-front.ui-draggable {left: 30% !important; width: auto !important; }
    body[class*="checkin"] .form-group a.btn-success { font-size: 1rem; padding: 1rem; }
}
@media screen and (max-width: 767px){
    .inside-page .header-section img{
        max-width: 280px;
        padding: unset;
    }
    .inside-page header .header_logo_top {
        float: unset;
        margin-top: 0;
    }
    .page-banner .landing-text heading1 { 
        margin: 10px 0;
    }
    .header_logo_top p, .inside-page header .header_logo_top p { 
        font-size: 1rem;
    }
    .footer {
		text-align: center;
    }
    .footer ul.privacy {
        flex-direction: column;
        margin: 1rem 0 0;
        padding-bottom: 1rem;
    }
    .footer ul li:after {
        content: "";
    }
}
@media screen and (max-width: 560px){
    .header-section img {
        padding: 1.5rem 0 0.5rem;
    }
    .header_logo_top { 
        margin-bottom: 0;
    }
    .header_logo_top p {
        margin-bottom: 1rem;
    }
    .header_logo_top p .event-date {
        font-size: clamp(1.5rem, 5vw, 2.25rem);
    }
    .login-box {
        margin-top: 1rem;
    }
    .page-banner .landing-text {
        margin: 10px 0;
        padding: 10px 0;
    }
    .page-banner .landing-text heading1 { 
        margin: 5px 0 10px;
    }
    .iti--separate-dial-code, .inside-page main form .ip-element:has(select, .ip-formSelect), .inside-page main form .ip-element:has(select, .ip-formSelect) select, .inside-page main form .ip-element.form-group:has(input), .inside-page main form .ip-element.form-group:not(:has(input[type="radio"]), :has( input[type="checkbox"])) input {
        width: 100%;
    }
    .index_registrations_profile .ip-elm-radio-multi.ip-element.form-group:has(label[for="TEOECO29"], label[for="JEMSnZ39"], label[for="rbtFuO01"], label[for="KvKAgh76"], label[for="ievVvo66"], label[for="rGaUPV37"]):not([style*="none"]) {
        grid-template: auto / 9.25rem auto;
    }
    .index_registrations_profile .ip-elm-radio-multi.ip-element.form-group:has(label[for="TEOECO29"], label[for="JEMSnZ39"], label[for="rbtFuO01"], label[for="KvKAgh76"], label[for="ievVvo66"], label[for="rGaUPV37"]):not([style*="none"]) label {
        font-size: .85rem;
    }
    main form div[unique_id="tSTWnq18"][targetenabled="1"].ip-elm-checkbox-multi, body[class*="additional_events"] main form .ip-elm-checkbox-multi.ip-element.form-group {
        flex-direction: column;
    }
    .index_registrations_additional_events .purchasableItemElementParent input[type=text]{
        width: 2.75rem !important;
    }
    .index_registrations_review .ip-elm-text.form-group:not(:has(.ip-elementContentTable)){
        grid-template: auto / auto;
    }
    .index_registrations_review main h2 a {
        margin: .35rem 5px!important;
    }
    .index_registrations_review main a[href*="&redirect=index"].btn-cancel, .inside-page main .ip-buttonBar .btn[suppresssubmit] {
        background: transparent;
        border-color: transparent;
        color: var(--primaryColor);
        font-weight: 700;
    }
    main .ip-buttonBar .btn {
        width: 100%;
        margin: .25rem 0;
    }
}

.highlight {
	background-color: #f1f2f2;
	padding: 1em 0;
}

.highlight h2 {
	font-family: var(--CTES-fontHeader);
	color: var(--titleColor);
	font-size: 1.875em;
}