/* Monitoring opening: SVG/CSS, independent of remote media. */
.intro-loader { color:#082a5a; background:radial-gradient(ellipse at 100% 0%,#e0ffd4 0%,#c0ebe8 25%,transparent 58%),linear-gradient(125deg,#79a8e9 0%,#99ccfc 58%,#89b8e9 100%); transition:opacity 320ms ease,visibility 320ms; }
.intro-loader::before,.intro-loader::after { display:none; }
.intro-atmosphere { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; z-index:-1; }
.intro-ribbons { transform-origin:50% 75%; animation:monitor-ribbons 6s ease-in-out both; }
.intro-ribbons--back { animation-direction:reverse; opacity:.6; }
.intro-hexagons { fill:none; stroke:#adffed; stroke-width:1.6; opacity:.85; }
.intro-hexagons .hex-glow { filter:drop-shadow(0 0 7px #a5ffee); }
.intro-loader .intro-loader__content { width:min(920px,calc(100% - 48px)); margin:-68px 0 0; animation:none; }
.intro-loader .loader-wordmark { color:#082a5a; font-family:OpenSans,Arial,sans-serif; font-size:clamp(48px,8vw,116px); font-weight:700; line-height:1.12; letter-spacing:-.055em; }
.intro-loader .loader-eyebrow { color:#082a5a; font-size:clamp(11px,1.25vw,18px); font-weight:700; letter-spacing:.17em; margin:38px 0 20px; }
.loader-description { margin:0; color:#23496c; font-size:clamp(18px,2vw,29px); line-height:1.42; letter-spacing:-.025em; }
.loader-description strong { color:#082a5a; font-weight:700; }
.loader-description span { display:block; }
.loader-description .loader-place { margin-top:5px; font-size:.9em; }
.intro-loader .loader-progress { width:min(600px,100%); margin-top:68px; }
.loader-progress__track { height:10px; border:0; border-radius:20px; background:#4c859e70; box-shadow:inset 0 1px 3px #082a5a10; }
.loader-progress__fill { border-radius:inherit; background:linear-gradient(90deg,#07578d 0%,#0084ca 48%,#25c9ec 80%,#b8d531 100%); box-shadow:0 0 14px #25c9ec50; transition:transform 70ms linear; }
.loader-progress__meta { padding-top:18px; color:#23496c; font-size:clamp(11px,1.2vw,17px); gap:15px; }
.loader-percent { color:#082a5a; font-size:.8em; font-variant-numeric:tabular-nums; }
@keyframes monitor-ribbons { from { transform:translate3d(-12px,14px,0) scaleY(.96); } to { transform:translate3d(12px,-8px,0) scaleY(1.03); } }
@media(max-width:700px) {
 .intro-loader .intro-loader__content { width:calc(100% - 42px); margin:-40px 0 0; }
 .intro-loader .loader-wordmark { font-size:clamp(43px,11.8vw,78px); }
 .intro-loader .loader-eyebrow { margin-top:28px; margin-bottom:20px; font-size:12px; letter-spacing:.13em; }
 .loader-description { font-size:clamp(18px,4.5vw,26px); line-height:1.55; }
 .loader-description span { display:inline; }
 .loader-description .loader-place { display:block; margin-top:10px; }
 .intro-loader .loader-progress { margin-top:46px; }
 .loader-progress__meta { font-size:11px; line-height:1.5; padding-top:14px; }
 .loader-stage { max-width:230px; }
 .intro-atmosphere { width:180%; max-width:none; left:-40%; opacity:.75; }
}
@media(max-height:600px) {
 .intro-loader .intro-loader__content { margin:-36px 0 0; }
 .intro-loader .loader-wordmark { font-size:clamp(43px,8vw,70px); }
 .intro-loader .loader-eyebrow { margin:20px 0 14px; }
 .loader-description { font-size:18px; }
 .intro-loader .loader-progress { margin-top:30px; }
}
@media(max-height:420px) {
 .intro-loader .intro-loader__content { margin:-24px 0 0; }
 .intro-loader .loader-wordmark { font-size:40px; }
 .intro-loader .loader-eyebrow { margin:12px 0 10px; font-size:10px; }
 .loader-description { font-size:15px; }
 .loader-description span { display:inline; }
 .intro-loader .loader-progress { margin-top:20px; width:min(500px,100%); }
 .loader-progress__meta { padding-top:8px; font-size:11px; }
}
@media(prefers-reduced-motion:reduce) { .intro-loader,.loader-progress__fill { transition:none; } .intro-ribbons { animation:none; } }
@media(forced-colors:active) { .intro-atmosphere { display:none; } .loader-progress__track { border:1px solid CanvasText; } .loader-progress__fill { background:Highlight; } }

.intro-loader:focus { outline:none; }
