@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&family=Space+Mono:ital,wght@0,400;0,700;1,400;1,700&display=swap');

/* Not ideal, due to limitations of Bootstrap */
body {
    overflow-x: hidden;
}

:root {
    --primaryColor: #FFEB00;
    --secondaryColor: #000;
    --accentColor: #8e8e8e;
    --bgImage: url(/eventAssets/aiinco_london_2026_260216102317/image/AISummit2026/AIS26-London_Bg-2829x1600.jpg);
    --bgImage2: url(/eventAssets/aiinco_london_2026_260216102317/image/AISummit2026/2026AIS_london-LetterHead.jpg);
    --informaBg: #454955;
    --primaryFont: "Open Sans", sans-serif;
    --headingFont: "Open Sans", sans-serif;
    --menuFont: "Aleo", sans-serif;
    --ico-Profile: url(/eventAssets/aiinco_london_2026_260216102317/image/AIS26-London_ico-profile.png);
    --ico-Pass: url(/eventAssets/aiinco_london_2026_260216102317/image/AIS26-London_ico-pass.png);
    --ico-Review: url(/eventAssets/aiinco_london_2026_260216102317/image/AIS26-London_ico-review.png);
    --ico-Payment: url(/eventAssets/aiinco_london_2026_260216102317/image/AIS26-London_ico-payment.png);

    --color-yellow: var(--primaryColor);
    --color-black: var(--secondaryColor);
    --color-blue: #024;
    --color-grey: var(--accentColor:);
    --color-greyDark: #2d3a54;
    --color-orange: #eeaf02; /*#ff9800;*/
    --color-red: #a94442;
    --color-white: #fff;
    --rgba-blue: rgba(0, 34, 68, .7);
    --rgba-black: rgba(0, 0, 0, 0.6);
}

/* FONT SIZES
------------------------------------------------------*/
*,
html,
body,
.ui-widget input,
p,
label {
    font-family: var(--primaryFont);
}

_:-ms-lang(x),
input.form-control {
    display: inline-block;
}

::selection {
    background: var(--secondaryColor);
    color: var(--color-white);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--headingFont);
    text-wrap: balance;
}

html,
body {
    font-size: 1rem;
    background: var(--color-white);
    color: var(--color-black);
    min-height: 100vh;
}

h1 {
    font-size: 1.8rem;
}

h2 {
    font-size: 1.4rem;
}

h3 {
    font-size: 1rem;
}

/* EV2 REQUIRED STYLES
------------------------------------------------------*/

div.ip-group-container div.ip-element label.errorFieldLabel,
div.ip-group-container div.ip-element label.emptyFieldLabel {
    color: var(--color-red);
    font-weight: bold;
}

/* Main Styles */
body {
    accent-color: var(--color-black);
    position: relative;
    z-index: 5;
}

a,
a:active,
a:visited {
    color: var(--color-orange);
    text-decoration: underline;
}

a:hover {
    color: var(--color-orange);
    text-decoration: none;
}

.btn.btn-default.btn-processing {
    background: var(--primaryColor);
    border-radius: 0.5rem;
    color: var(--secondaryColor);
}

a.chosen-single {
    font-weight: 500;
    text-shadow: initial;
}

img {
    max-width: 100%;
    width: 100%;
}

header {
    color: var(--color-white);
    padding-bottom: 1rem;
}


main {
    font-size: 0.95rem;
}

#public:has(#landing-page) {
    background: var(--bgImage);
    background-attachment: scroll;
    background-repeat: no-repeat;
    background-position: right 195px;
    background-size: 107% 108%;
}

#landing-page main,
#landing-page section {
    color: var(--color-white);
    margin: 4rem auto;
}
#landing-page main .email_form1 div, 
#landing-page main .email_form1 div:has(input[type="text"]) span {
    text-align: center;
    width: 100%;
}
#landing-page main .email_form1 h1, 
#landing-page main .email_form1 h1 strong, 
#landing-page main .email_form1 h2, 
#landing-page main .email_form1 h2 strong, 
#landing-page main .email_form1 h3 {
    font-family: var(--menuFont);
}
#landing-page main input[type="text"], 
#landing-page main input[type="password"] {
    border-radius: .5rem;
    padding: .5rem;
    height: 3.625rem;
    margin: .75rem auto;
    max-width: 65rem;
    width: 80%;
}
#landing-page input.btn.btn-default.btn-submit {
    font-size: 1.75rem;
    font-weight: 700;
    margin: 1.5rem auto;
    max-width: 65rem;
    min-width: unset;
    padding: .5rem;
    width: 80%;
}
.landing-view .container:first-child {
    width: 100%;
}

.date-info {
    color: var(--color-blue);
    display: block;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.5;
    margin-top: 1.75rem;
    position: relative;
    text-align: right;
}

body:has(#inside-page),
#public:has(#inside-page) {
    background: var(--bgImage2);
    background-attachment: scroll;
    background-repeat: no-repeat;
    background-position: right top;
    background-size: 100% 13.75rem;
}
body:not([class^="index"]):has(#inside-page) {
    background-size: 100% 9.75rem;
}
#inside-page header img {
    filter: brightness(0) invert(1);
}
#inside-page header .date-info {
    color: var(--color-white);
}
.headline-info {
    display: block;
    position: relative;
    text-align: center;
    margin: 10px 20px;
}

.headline-info h2 {
    line-height: 2;
}
#public[class*="ondemand"] #landing-page header .date-info H2 {
    font-family: var(--menuFont);
    font-size: 1.6rem;
    font-weight: 800;
    text-align: right;
}
#public[class*="ondemand"] #landing-page main H2 {
    font-family: var(--menuFont);
    font-size: 1.6rem;
    font-weight: 800;
    margin-top: 3rem;
    text-align: center;
}
#public[class*="ondemand"] #landing-page aside {
    background: var(--color-orange);
    border-radius: .75rem;
    margin: 0 auto;
    padding-bottom: .5rem;
    width: 85%;
}
#public[class*="ondemand"] #landing-page aside h3 {
    border-bottom: 1px solid var(--color-white);
    font-family: var(--menuFont);
    font-size: 1.1rem;
    font-weight: 700;
}
#public[class*="ondemand"] #landing-page aside p,
#public[class*="ondemand"] #landing-page segment .col-xs-12 {
   text-wrap: balanced;
}
.base-links {
    display: inline-grid;
    grid-template: auto / 7rem 7rem 7rem 7rem;
    list-style: none;
    padding: 0;
}

.base-links li {
    margin-right: 1.25rem;
}

.base-links li a,
.base-links li span {
    text-decoration: underline;
}

#public[class$="kiosk"] #landing-page main form {
    text-align: center;
}

#public[class$="kiosk"] #landing-page main form div[style="padding:100px;"] {
    padding: 25px !important;
}

.full-row {
    width: 100%;
}

.landing-page input[type="text"] {
    width: 100%;
    color: #333;
}

.btn,
.ip-buttonBar a.btn {
    background: var(--primaryColor);
    border: unset;
    color: var(--secondaryColor);
    font-weight: 700;
    padding: 8px 7%;
    text-decoration: none;
    transition: all ease 0.3s;
}

.ip-buttonBar {
    text-align: right;
}

.landing-view input.btn {
    background: var(--primaryColor);
    border: 1px solid var(--primaryColor);
    padding-top: 8px;
    padding-bottom: 8px;
    min-width: 140px;
    text-align: center;
    width: auto;
}

.landing-view input.btn:hover {
    color: var(--color-black);
    border: 1px solid var(--color-black);
}

.btn:hover,
.ip-buttonBar a.btn:hover {
    color: var(--primaryColor);
    background-color: var(--secondaryColor);
}

.ip-buttonBar a.btn-default.btn-cancel {
    background: transparent;
    border: 1px solid var(--primaryColor);
    color: var(--color-black);
    font-weight: 700;
}

.ip-buttonBar a.btn-default.btn-cancel:hover {
    color: var(--secondaryColor)
}

#landing-page header img {
    height: auto;
    max-width: 499px;
    position: absolute;
    top: 0;
    width: auto;
}
#inside-page header img {
    margin: 1rem 0;
    min-width: 24.75rem;
}

#inside-page .main-content {
    margin-top: 1rem;
}

.inside-page .information-box {
    background: #eee;
    border-radius: 12px;
    color: var(--color-black);
    padding: 10px;
}

.index_registrations_delegate h1 {
    text-transform: uppercase;
}

.index_registrations_delegate .email_form1 {
    padding-inline: 0;
}

.buttons.chargesButtonsHeader,
.chargeButtons,
.landing-view .btn-cancel,
.landing-view label[isrequired="1"] {
    display: none;
}

.landing-page .login-box .btn {
    width: 180px;
    margin: 0;
    padding: 10px;
    font-weight: 700;
}

@media screen and (min-width: 768px) {
    .landing-page .login-box .btn {
        margin: -3px 10px 0;
    }
    #public[class$="review"] .row:has(form[action*="addpromocode"]) {
        display: flex;
    }
    #public[class$="review"] .col-lg-6:has(form[action*="addpromocode"]), #public[class$="review"] .col-lg-6:has(div[unique_id="LhtsVY32"]) {
        width: 50%;
    }
}
@media screen and (max-width: 768px) {
    #public[class$="review"] .row:has(form[action*="addpromocode"]) {
        display: block;
    }
    #public[class$="review"] .col-lg-6:has(form[action*="addpromocode"]), #public[class$="review"] .col-lg-6:has(div[unique_id="LhtsVY32"]) {
        width: unset;
    }
    
}
.requiredSymbol {
    line-height: 1.1;
}

#BHiBTA36 {
    width: 60%;
}

@media screen and (width > 768px) {
    .flex-centred {
        display: flex;
        align-items: center;
    }
}

form input,
form select {
    margin-bottom: 10px;
}

#public[class*="registrations"] #inside-page {
    margin-bottom: 3rem;
}

.iti__selected-dial-code,
#ip-financialSummary-Container,
.well {
    color: var(--color-black);
    margin-top: 15px;
}

.iti__country-name,
.iti__dial-code,
.index_registrations_payment .financialSummary {
    color: var(--color-black);
}

#public[class$="review"] .financialSummary {
    color: var(--color-white);
}

.iti__selected-dial-code {
    margin-top: 0;
}

.index_registrations_profile .ip-elm-checkbox-multi.ip-element label[for="hkLqGU81-117"],
.index_exhibitorreg_portal .login-box label[for="rememberMe"] {
    width: 90%;
}

.index_registrations_profile .questionResponse.questionResponseCheckbox label {
    width: auto;
}

.index_exhibitorreg_portal label[for="rememberMe"]+span.ip-elementContent {
    float: left;
}
.index_registrations_profile #inside-page label[for="nfPHia89"], 
.index_registrations_profile #inside-page label[for="BqjucZ74"] {
    width: auto;
    margin-left: -1rem;
    margin-right: 117.45px;
}
.index_registrations_profile #inside-page label[for="mAssVU30"], 
.index_registrations_profile #inside-page label[for="XaiEVV72"] {
    width: auto;
    margin-right: 112px;
}
label[for="workshop_ZdVMUO96"] {
    margin-top: 20px;
    margin-bottom: 20px;
    font-size: 1.4rem;
}

label[for="vrtJXt86"],
label[for="ecazwU09"],
label[for="vrtJXt86-688"],
label[for="ecazwU09-687"] {
    line-height: 1.1;
}

label[for="jiWRwR78"] {
    position: relative;
}

label[for="jiWRwR78"]::before {
    position: absolute;
    top: 48px;
}

.questionResponse.questionResponseCheckbox,
div[unique_id="nfPHia89"],
div[unique_id="BqjucZ74"],
div[unique_id="rLuUxh16"],
div[unique_id="gUnEVb17"] {
    align-items: baseline;
    display: flex;
    margin-left: 1rem;
    width: 90%;
}
.index_registrations_profile input#rzJPmf76-1299 { margin-top: -1.3rem; }
.index_registrations_profile div[unique_id="LwTvpT75"],
.index_registrations_profile div[unique_id="nGgHgI38"],
.index_registrations_profile div[unique_id="hlliSR59"] {
    width: 100%;
}

.index_registrations_profile label[for="wZsvpC18-1275-writeInResponse"] {
    clear: both;
}

.index_registrations_profile .ip-elm-checkbox-multi.ip-element label[for="wZsvpC18-1275"] {
    margin-top: -5px;
}

#cbWXCZ96-1225 {
    order: 1;
    margin-top: -4px;
}

label[for="cbWXCZ96-1225"] {
    order: 2;
}

table img {
    display: block;
    margin: auto;
    width: auto;
}

.reg-process form,
#public[class$="review"] .IP_PageBuilder_Registration:has(#WMutHJ47),
#public[class$="review"] .reg-process .ip-buttonBar {
    background: rgba(255, 255, 255, 0.9);
    border-radius: 3px;
    color: var(--color-greyDark);
    margin-bottom: 100px;
    padding: 20px 15px;
}

#public[class$="review"] .IP_PageBuilder_Registration:has(#WMutHJ47) {
    margin-bottom: 20px;
}

.reg-process form .ip-element,
#public[class$="review"] table td {
    color: var(--color-greyDark);
}

#public[class$="review"] table td img {
    width: auto;
}

#public[class$="review"] .reg-process form {
    background: unset;
    border: 1px solid #aaa;
}

#public[class$="review"] h2 a {
    display: table;
    text-align: center;
    text-decoration: none;
    background: var(--accentColor);
    color: var(--color-black);
    font-size: 1.4rem;
    border-radius: 5px;
    padding: 7px;
    margin-top: 10px;
    transition: all ease-in 0.3s;
}

#public[class$="review"] h2 a {
    background: var(--primaryColor);
    padding-left: 10px;
    padding-right: 10px;
}

#public[class$="review"] h2 a:hover {
    background: var(--secondaryColor);
    color: var(--primaryColor);
}

body:not(.index_registrations_payment) .reg-process form a.btn.btn-cancel {
    float: left;
}

#public[class$="review"] .reg-process:has(#DeKAvy79) .ip-buttonBar {
    background-color: unset;
}

#public[class*="checkin"] label.ip-elementLabel {
    color: var(--color-white);
    margin-top: 1.75rem;
    font-size: 1.5rem;
}

.terms-text {
    margin: 40px 10px 20px;
}

/* FOOTER */
body:has(#landing-page) footer,
body:not([class^="index"]):has(#inside-page) footer {
    background: var(--informaBg);
    bottom: 0;
    padding: 2rem 1rem;
    position: absolute;
    width: 102%;
}
body:has(#inside-page) footer {
    background: var(--informaBg);
    bottom: unset;
    padding: 2rem 1rem;
    position: relative;
    width: unset;
}

footer img {
    max-width: 240px;
    margin-top: 15px;
    margin-bottom: 15px;
}

footer a,
footer a:active,
footer a:visited {
    color: var(--color-white);
    text-decoration: underline;
}

footer a:hover {
    color: var(--color-white);
    text-decoration: none;
}

footer .container {
    display: flex;
    align-items: center;
    width: 98%;
}

footer ul {
    float: left;
    list-style: none;
    margin: 0;
    padding: 0;
}

footer ul li {
    color: var(--color-white);
    float: left;
    font-size: 0.85rem;
    margin-right: 10px;
}
footer ul li:not(:last-child):after{
    content: " |";
    color: var(--color-white);
}
.footer-logos {
    list-style: none;
    padding: 0;
    margin: 150px 0 0;
    display: inline-block;
    align-items: center;
}

.footer-logos li {
    width: 100%;
    margin-bottom: 20px;
}

.footer-logos img {
    width: auto;
    max-width: 323px;
}

@media screen and (min-width: 991px) {
    .footer-logos {
        display: flex;
    }

    .footer-logos li {
        flex-basis: 100%;
        margin-inline: 10px;
    }
}
@media screen and (max-width: 580px) and (orientation: portrait) {
    #inside-page header {
        margin-bottom: unset;
        padding-bottom: 7%;
    }
    #public:has(#landing-page){
        background-position: right 275px;
    }
    #landing-page header img {
        min-width: 14rem;
    }
    header .date-info {
        font-size: 115%;
        margin: 0 0 0 2%;
        position: absolute;
        top: 6.75rem;
        text-align: left;
    }
    #landing-page main {
        margin-top: 11.5rem;
    }
    #inside-page header img {
        margin: .5rem 0;
        max-width: 16rem;
        min-width: unset;
    }
    #inside-page header .date-info {
        color: var(--color-white);
        top: 5rem;
    }
    .index_registrations_profile #inside-page label[for="nfPHia89"], .index_registrations_profile #inside-page label[for="BqjucZ74"] {
        margin-bottom: -3px;
        margin-right: 117.45px;
    }
    .index_registrations_profile #inside-page label[for="mAssVU30"], .index_registrations_profile #inside-page label[for="XaiEVV72"] {
        margin-bottom: -3px;
        margin-right: 110px;
    }
    body:not([class^="index"]):has(#inside-page) footer,
    footer {
        position: relative;
        bottom: unset;
    }
    footer .container {
        flex-direction: column;
    }
}

@media screen and (min-width: 581px) and (max-width: 767px) and (orientation: portrait) {
    header .date-info {
       margin-right: 1rem;
       margin-top: 5.2rem;
    }
    #inside-page header {
        margin-bottom: unset;
        padding-bottom: 1rem;
    }
    #inside-page header img {
        margin: .5rem 0;
        max-width: 16rem;
    }
    #inside-page header .date-info {
        color: var(--color-white);
        top: 5rem;
    }
    body:not([class^="index"]):has(#inside-page) footer,
    footer {
        position: relative;
        bottom: unset;
    }
    footer .container {
        flex-direction: column;
    }
}
@media screen and (min-width: 768px) and (max-width: 990px) and (orientation: portrait) {
    header .date-info {
       font-size: 1.2rem;
       margin-top: 3rem;
    }
}
@media screen and (max-height: 580px) and (orientation: landscape){
    body:not([class^="index"]):has(#inside-page) footer,
    footer {
        bottom: unset;
        position: relative;
        width: unset;
    }
}
@media screen and (max-height: 860px) and (orientation: landscape){
    body:has(#inside-page) footer,
    body:has(#landing-page) footer,
    #public[class*="checkin"] footer,
    body:not([class^="index"]):has(#inside-page) footer {
        bottom: unset;
        position: relative;
        width: unset;
    }
}
@media screen and (min-height: 861px) and (orientation: landscape) {
    body:has(#inside-page):not([class*="password"]) footer,
    #public:has(#inside-page):not([class*="password"]) footer,
    body:not([class^="index"]):has(#inside-page) footer{
        bottom: unset;
        position: relative;
        width: unset;
    }
}
@media screen and (min-height: 861px) and (max-height: 1479px) and (orientation: landscape) {
    #public[class*="checkin"] footer{
        bottom: unset;
        position: relative;
        width: unset;
    }
}

/*@media screen and (min-height: 1080px) and (max-height: 1239px) { }
@media screen and (min-height: 1240px) { }*/