/* Main ICTAZ website identity, scoped to the shared events hub. The head
   bootstrap opts in; missing JavaScript always leaves the page available. */
.hub-entry-loader { display:none; }
html[data-hub-entry] { scrollbar-gutter:stable; }
html:is([data-hub-entry=loading],[data-hub-entry=leaving]) { overflow:hidden; }
html:is([data-hub-entry=loading],[data-hub-entry=leaving]) .hub-entry-loader {
    position:fixed; inset:0; z-index:20000; display:grid; place-items:center;
    background:radial-gradient(ellipse at 50% 38%,#12377a 0%,#0b1a3d 45%,#071126 100%);
    color:#f2f5ff; opacity:1; transition:opacity 240ms ease;
}
.hub-entry-loading-identity { text-align:center; padding:32px; font-family:Montserrat,Arial,sans-serif; }
.hub-entry-loading-identity img {
    display:block; width:120px; height:84px; object-fit:contain; margin:0 auto 26px;
    filter:url('/brand/ictaz-loader-filters.svg#white');
}
.hub-entry-loading-identity p { font-size:10px; letter-spacing:.15em; text-transform:uppercase; margin:0; color:#d0dcf6; }
.hub-entry-loading-track { width:168px; height:2px; margin:28px auto 18px; background:#a4bdf52b; overflow:hidden; }
.hub-entry-loading-track span {
    display:block; width:100%; height:100%; background:#c4d7ff;
    transform:scaleX(var(--hub-loading-progress,0)); transform-origin:left; transition:transform 180ms ease;
}
.hub-entry-loading-identity .hub-entry-loading-label { font-size:9px; color:#a4bdf5; letter-spacing:.12em; }
html[data-hub-entry=leaving] .hub-entry-loader { opacity:0; pointer-events:none; }
@media(prefers-reduced-motion:reduce) {
    html[data-hub-entry] .hub-entry-loader,.hub-entry-loading-track span { transition:none; }
}
