/* Small behavioural fixes on top of the actual local reference theme. */
:root{--notice-height:34px;--aia-red:#fc0001;--aia-ink:#2a292c;--aia-sand:#e4e3d8}
html{scroll-behavior:smooth;scroll-padding-top:130px}
[hidden]{display:none!important}
body{overflow-x:hidden}
#main-navigation{margin-top:var(--notice-height)!important}
.top-message-wrapper{z-index:1001}
#main-navigation--fixed .tickets-navigation{z-index:3}
#main-navigation.demo-scrolled{position:fixed;background:rgba(255,255,255,.97);box-shadow:0 2px 14px #00000012}
#main-navigation--fixed #header-mini-cart-subtotal{white-space:nowrap}
#header-mini-cart-subtotal #cartn::before{content:'('}
#header-mini-cart-subtotal #cartn::after{content:')'}
.mobile-tickets-container>.tickets-navigation{position:relative;transform:none;display:flex;margin:0;width:100%}
.mobile-tickets-container .sub-menu{display:none!important}
.mobile-tickets-container{display:none}
.simulation-badge{position:fixed;bottom:12px;left:12px;z-index:999;padding:5px 10px;border-radius:3px;background:#2a292ce8;color:#fff;font:11px/1.4 'Open Sans',sans-serif;box-shadow:0 1px 6px #0002;text-decoration:none}
.simulation-note{font:12px/1.5 'Open Sans',sans-serif;color:#aaa;margin:20px 0 0}
.owl-carousel:not(.owl-loaded){display:block}
.owl-carousel:not(.owl-loaded)>:not(:first-child){display:none}
.home-slider .owl-item:not(.active) a{pointer-events:none}
.demo-dialog{border:0;padding:45px;width:min(600px,calc(100vw - 32px));max-height:85vh;background:var(--aia-sand);color:var(--aia-ink)}
.demo-dialog::backdrop{background:#0009}
.demo-dialog h2{font:600 48px/1 Tungsten,sans-serif;text-transform:uppercase;margin:0 0 25px}
.demo-dialog a{display:block;font:500 32px/1.3 Tungsten,sans-serif;color:var(--aia-ink);margin:10px 0}
.dialog-close{position:absolute;right:16px;top:10px;font:30px/1 sans-serif;background:none;border:0;cursor:pointer}
.demo-dialog input{width:100%;padding:12px;margin:10px 0 20px;background:#fff;border:1px solid #aaa;font:16px 'Open Sans',sans-serif}
.demo-dialog label{font:14px 'Open Sans',sans-serif}
.ticket-main{max-width:1500px;margin:20px auto 100px;padding:30px 40px;color:var(--aia-ink)}
.back-link{display:inline-block;margin-bottom:35px;color:var(--aia-ink);font:14px 'Open Sans',sans-serif}
.ticket-intro{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;border-bottom:1px solid var(--aia-sand);padding-bottom:40px;margin-bottom:55px}
.ticket-eyebrow{font:400 26px Tungsten,sans-serif;color:var(--aia-red);text-transform:uppercase;letter-spacing:1px}
.ticket-intro h1{font:600 clamp(55px,5vw,86px)/.95 Tungsten,sans-serif;text-transform:uppercase;margin:15px 0 25px}
.ticket-intro p{font:16px/1.7 'Open Sans',sans-serif;max-width:560px}
.ticket-intro .demo-explanation{font-size:12px;color:#777}
.ticket-poster{width:100%;aspect-ratio:2.3;object-fit:cover}
.ticket-booking{display:grid;grid-template-columns:minmax(0,1fr) 355px;gap:45px;align-items:start}
.ticket-booking h2{font:500 40px/1 Tungsten,sans-serif;text-transform:uppercase;margin:0 0 24px}
.stand-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.stand-card{border:2px solid var(--aia-sand);padding:25px;background:#fff;transition:border-color .2s}
.stand-card.on{border-color:var(--aia-red);background:#fffafa}
.stand-choice{display:flex;align-items:center;gap:10px;cursor:pointer}
.stand-choice input{accent-color:var(--aia-red);width:18px;height:18px;margin:0}
.stand-choice span{font:500 33px/1 Tungsten,sans-serif;text-transform:uppercase}
.stand-card p{font:13px/1.6 'Open Sans',sans-serif;min-height:42px;color:#666;margin:16px 0}
.stand-price{font:600 38px/1 Tungsten,sans-serif;color:var(--aia-red)}
.stand-price small{font:11px 'Open Sans',sans-serif;color:#777}
.quantity{display:flex;align-items:center;gap:14px;margin-top:20px;font:14px 'Open Sans',sans-serif}
.quantity button{width:34px;height:34px;border:1px solid #bbb;background:#fff;font:20px/1 sans-serif;cursor:pointer;color:var(--aia-ink)}
.quantity button:hover{background:var(--aia-sand)}
.order-panel{background:var(--aia-sand);position:sticky;top:170px}
.order-panel>img{width:100%;height:160px;object-fit:cover}
.order-panel>div{padding:25px}
.order-panel p{font:13px/1.6 'Open Sans',sans-serif}
.order-panel .order-total{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #bbb;padding-top:20px;margin-top:25px}
.order-total strong{font:600 40px/1 Tungsten,sans-serif}
.purchase-button{display:block;width:100%;background:var(--aia-red);border:0;color:#fff;font:500 34px/1 Tungsten,sans-serif;text-transform:uppercase;padding:14px;cursor:pointer}
.purchase-button:disabled{background:#aaa;cursor:not-allowed}
.order-panel .order-note{text-align:center;font-size:11px;color:#666}
#result{background:#fff;padding:15px;border-left:3px solid #27814c;font:13px/1.7 'Open Sans',sans-serif;overflow-wrap:anywhere}
#result[data-error]{border-color:var(--aia-red)}
#result strong,#result code{display:block}
#result code{font-size:13px}
button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #168bc6;outline-offset:4px}
@media(max-width:1024px){
 .ticket-booking{grid-template-columns:1fr}.order-panel{position:static}.order-panel>img{height:220px}.ticket-main{padding:25px}.ticket-intro{gap:15px}
 #main-navigation--fixed>.tickets-navigation{display:none!important}
}
@media(max-width:767px){
 .ticket-intro{grid-template-columns:1fr}.ticket-main{padding:20px;margin:0 0 50px}.ticket-booking{gap:30px}
 .stand-grid{grid-template-columns:1fr}.ticket-poster{aspect-ratio:2}.simulation-badge{font-size:9px}
 .demo-dialog{padding:35px 25px}.ticket-intro h1{font-size:58px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
