@font-face{font-family:IBM Plex Sans;src:url(/_astro/IBMPlexSans-Light.CKaMwcwk.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/_astro/IBMPlexSans-Regular.BiEB_oxT.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/_astro/IBMPlexSans-Italic.CpbUNyku.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/_astro/IBMPlexSans-Medium.BQLKo0ot.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/_astro/IBMPlexSans-SemiBold.KfaJl9PC.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/_astro/IBMPlexMono-Light.B9oHfaG6.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/_astro/IBMPlexMono-Regular.Du0PCiXT.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/_astro/IBMPlexMono-Medium.CiYsa3y2.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}:root,[data-theme=dark]{--surface-space:#131b28;--surface-space-glow:#202b3c;--surface-sheet:#1a2230;--scrim:#0b1018a6;--glass-fill:#0b12204d;--glass-fill-hover:#0b122040;--glass-sheet:#0b1220b3;--glass-edge:#ffffff59;--glass-rim:#ffffff2e;--control-fill:#ffffff14;--control-fill-hover:#ffffff24;--control-fill-off:#ffffff0a;--control-track:#fff3;--control-edge:#0b122099;--line-hairline:#ffffff1f;--line-tick:#fff6;--line-tick-minor:#ffffff40;--line-leader:#f4f6f8e6;--text-primary:#f4f6f8;--text-secondary:#c8d0d9;--text-muted:#9aa6b2;--text-disabled:#6b7684;--text-on-accent:#04161c;--accent:#00e5ff;--accent-hover:#5cefff;--accent-pressed:#00c2d9;--accent-soft:#00e5ff29;--accent-glow:#00e5ff73;--data-cyan:var(--accent);--data-magenta:#ff2bd6;--data-lime:#b8ff2c;--data-white:#f3faff;--data-casing:#0b1220cc;--glow-underlay:#0b122099;--night-gold:#ffd23f;--night-ice:#7cc4ff;--night-blush:#ff86b0;--globe-land:#58687c;--globe-sea:var(--surface-space-glow);--globe-day-sea-shelf:#66959a;--globe-day-sea-deep:#425b7a;--globe-day-cloud:#fff;--globe-day-haze:#a9c4e2;--globe-day-rim:#6fa0e8;--globe-day-halo:#5f98ee;--globe-day-grid:#e9e2d2;--globe-night-slate-low:#3a434e;--globe-night-slate-high:#a7b0ba;--globe-night-sea-shelf:#1e2833;--globe-night-lights:#ffd27a;--globe-night-sea-deep:#121922;--globe-night-cloud:#a3adb9;--globe-night-haze:#56657a;--globe-night-rim:#5a78a6;--globe-night-halo:#4f6f9f;--globe-night-grid:#8c9bb0;--signal-amber:#ffb547;--model-white:#e6eaee;--model-volume:#e6eaee40;--logo-line:var(--data-white);--logo-eye:var(--accent);--logo-ink:#131b28;--logo-eye-on-light:#0089a3;--logo-paper:#f4f6f8;--shadow-glass:inset 0 1px 0 #ffffff59, inset 0 0 0 1px #ffffff2e, 0 2px 8px #0a0f1840;--shadow-sheet:inset 0 1px 0 #ffffff59, inset 0 0 0 1px #ffffff2e, 0 -2px 12px #0a0f1840;--glow-accent:0 0 0 1px #00e5ff, 0 0 12px #00e5ff73;--ring-pulse:0 0 0 2px #00e5ff;--text-halo:0 1px 2px #0b1220b3, 0 0 8px #0b122066;--place-halo:0 0 2px #0b1220e6, 0 0 6px #0b1220b3;--focus-ring:0 0 0 2px #131b28, 0 0 0 4px #00e5ff}:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-sm:4px;--radius-card:8px;--radius-sheet:12px;--radius-pill:9999px;--glass-blur:5px;--glass-blur-sheet:16px;--glass-saturate:170%;--glass-contrast:85%;--glass-brightness:60%;--glow-core:2px;--glow-halo:12px;--glow-halo-opacity:.45;--glow-bloom:32px;--glow-dot:6px;--glow-haze:56px;--tap-min:44px;--tap-target:48px;--dock-peek-max:30%;--breakpoint-wide:840px;--breakpoint-short:740px;--video-safe-top:130px;--video-safe-bottom:320px;--video-safe-side:60px;--duration-camera:4s;--duration-stage:2s;--duration-hold:2.5s;--duration-arrive:.9s;--duration-label:.4s;--duration-sheet:.36s;--duration-ui:.2s;--duration-glide:.4s;--duration-pulse:.6s;--duration-glance:1.5s;--duration-blink:.24s;--duration-look-loop:16s;--ease-cinematic:cubic-bezier(.65, 0, .35, 1);--ease-gentle:cubic-bezier(.45, 0, .55, 1);--ease-settle:cubic-bezier(.22, 1, .36, 1);--ease-arrive:cubic-bezier(.34, 1.3, .64, 1);--font-sans:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace}.es-type-readout-video{font-family:var(--font-sans);letter-spacing:-.01em;font-size:96px;font-weight:300;line-height:96px}.es-type-readout{font-family:var(--font-sans);letter-spacing:-.01em;font-size:36px;font-weight:300;line-height:40px}.es-type-number-lg{font-family:var(--font-sans);font-size:22px;font-weight:500;line-height:28px}.es-type-number-sm{font-family:var(--font-sans);font-size:12px;font-weight:400;line-height:16px}.es-type-number{font-family:var(--font-mono);font-size:15px;font-weight:400;line-height:22px}.es-type-video-overlay{font-family:var(--font-sans);letter-spacing:-.01em;font-size:64px;font-weight:600;line-height:72px}.es-type-title-xl{font-family:var(--font-sans);letter-spacing:-.01em;font-size:32px;font-weight:600;line-height:38px}.es-type-title{font-family:var(--font-sans);font-size:20px;font-weight:600;line-height:26px}.es-type-heading{font-family:var(--font-sans);font-size:17px;font-weight:600;line-height:24px}.es-type-body{font-family:var(--font-sans);font-size:16px;font-weight:400;line-height:24px}.es-type-caption{font-family:var(--font-sans);font-size:14px;font-weight:400;line-height:20px}.es-type-button{font-family:var(--font-sans);font-size:15px;font-weight:500;line-height:20px}.es-type-micro-label{font-family:var(--font-sans);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:500;line-height:14px}.es-type-place-major{font-family:var(--font-sans);letter-spacing:.01em;font-size:13px;font-weight:500;line-height:16px}.es-type-place-minor{font-family:var(--font-sans);letter-spacing:.01em;font-size:11px;font-weight:400;line-height:14px}.es-type-place-sea{font-family:var(--font-sans);letter-spacing:.2em;font-size:12px;font-style:italic;font-weight:400;line-height:16px}.es-mark{overflow:visible}.es-mark-look{animation:es-mark-look var(--duration-look-loop) infinite}.es-mark-blink{transform-box:fill-box;transform-origin:50%;animation:es-mark-blink var(--duration-look-loop) infinite}@keyframes es-mark-look{0%,18.75%{animation-timing-function:var(--ease-cinematic);transform:translate(0)}28.125%,43.75%{animation-timing-function:var(--ease-cinematic);transform:translate(5px,6px)}53.125%,65.625%{animation-timing-function:var(--ease-cinematic);transform:translate(-4px,-3px)}75%,to{transform:translate(0)}}@keyframes es-mark-blink{0%,15%{animation-timing-function:var(--ease-gentle);transform:scaleY(1)}15.5625%{animation-timing-function:var(--ease-gentle);transform:scaleY(.12)}16.5%,65%{animation-timing-function:var(--ease-gentle);transform:scaleY(1)}65.5625%{animation-timing-function:var(--ease-gentle);transform:scaleY(.12)}66.5%,to{transform:scaleY(1)}}@media (prefers-reduced-motion:reduce){.es-mark-look,.es-mark-blink{animation:none}}.es-glass,.es-glass-sheet{color:var(--text-primary);border-radius:var(--radius-sm);text-shadow:var(--text-halo)}.es-glass{background:var(--glass-fill);box-shadow:var(--shadow-glass);backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate)) contrast(var(--glass-contrast)) brightness(var(--glass-brightness))}.es-glass-sheet{background:var(--glass-sheet);box-shadow:var(--shadow-sheet);backdrop-filter:blur(var(--glass-blur-sheet)) saturate(var(--glass-saturate)) contrast(var(--glass-contrast)) brightness(var(--glass-brightness))}@supports not (backdrop-filter:blur(1px)){.es-glass,.es-glass-sheet{background:var(--surface-sheet)}}@media (prefers-reduced-transparency:reduce){.es-glass,.es-glass-sheet{background:var(--surface-sheet);backdrop-filter:none}}.es-app-install{align-items:center;gap:var(--space-2);height:32px;padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--text-primary);white-space:nowrap;cursor:pointer;border:0;display:inline-flex;position:relative}.es-app-install:before{content:"";inset:calc((32px - var(--tap-min)) / 2) 0;position:absolute}.es-app-install:hover,.es-app-install:active{background:var(--glass-fill-hover)}.es-app-install:focus-visible{box-shadow:var(--focus-ring);outline:none}.es-app-install-icon{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:square;stroke-linejoin:miter;flex:none}.es-app-install-icon-more circle{fill:currentColor;stroke:none}.es-app-install-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.es-app-install-panel{z-index:10;box-sizing:border-box;width:min(320px, calc(100vw - 2 * var(--space-3)));padding:var(--space-4);border-radius:var(--radius-card);animation:es-app-install-in var(--duration-sheet) var(--ease-settle) both;position:fixed}.es-app-install-panel[data-place=bottom]{right:max(var(--space-3), env(safe-area-inset-right));bottom:calc(max(var(--space-3), env(safe-area-inset-bottom)) + 40px);--es-app-install-from:6px}.es-app-install-panel[data-place=top]{right:max(var(--space-3), env(safe-area-inset-right));top:calc(max(var(--space-3), env(safe-area-inset-top)) + 40px);--es-app-install-from:-6px}.es-app-install-panel[data-place=middle]{--es-app-install-from:6px;top:50%;left:50%;translate:-50% -50%}@keyframes es-app-install-in{0%{opacity:0;transform:translateY(var(--es-app-install-from))}to{opacity:1;transform:none}}.es-app-install-close{top:var(--space-1);right:var(--space-1);width:var(--tap-min);height:var(--tap-min);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute}.es-app-install-close:hover{background:var(--control-fill-hover)}.es-app-install-close:focus-visible{box-shadow:var(--focus-ring);outline:none}.es-app-install-title{padding-right:var(--space-8);color:var(--text-primary);margin:0}.es-app-install-line{margin:var(--space-2) 0 0;color:var(--text-secondary)}.es-app-install-line .es-app-install-icon,.es-app-install-steps .es-app-install-icon{vertical-align:-5px;display:inline-block}.es-app-install-steps{margin:var(--space-3) 0 0;counter-reset:es-app-install-step;gap:var(--space-3);padding:0;list-style:none;display:grid}.es-app-install-steps li{min-height:24px;padding-left:calc(24px + var(--space-3));color:var(--text-primary);counter-increment:es-app-install-step;position:relative}.es-app-install-steps li:before{content:counter(es-app-install-step);border-radius:var(--radius-pill);background:var(--control-fill);place-items:center;width:24px;height:24px;font-size:12px;font-weight:600;line-height:1;display:grid;position:absolute;top:-2px;left:0}.es-app-install-arrow{width:24px;height:24px;color:var(--text-primary);filter:drop-shadow(0 0 3px var(--glow-underlay));animation:es-app-install-bob 1.8s var(--ease-gentle) infinite alternate;display:block;position:absolute;right:0}.es-app-install-arrow[data-points=down]{--es-app-install-bob:4px;top:calc(100% + 8px)}.es-app-install-arrow[data-points=up]{--es-app-install-bob:-4px;bottom:calc(100% + 8px)}.es-app-install-arrow[data-points=up] svg{transform:rotate(180deg)}@keyframes es-app-install-bob{to{transform:translateY(var(--es-app-install-bob))}}@media (prefers-reduced-motion:reduce){.es-app-install-panel{animation-name:es-app-install-fade;animation-duration:var(--duration-ui)}.es-app-install-arrow{animation:none}}@keyframes es-app-install-fade{0%{opacity:0}to{opacity:1}}html,body{background:var(--surface-space);height:100%;color:var(--text-primary);font-family:var(--font-sans);margin:0;overflow:hidden}#globe{pointer-events:none;touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}.veil{background:var(--surface-space);pointer-events:none;transition:opacity var(--duration-stage) var(--ease-gentle), visibility 0s linear var(--duration-stage);position:fixed;inset:0}body.revealed .veil{opacity:0;visibility:hidden}main{padding-bottom:calc(max(var(--space-2), env(safe-area-inset-bottom)) + var(--space-8));pointer-events:none;flex-direction:column;justify-content:flex-end;align-items:center;display:flex;position:fixed;inset:0}@media (width<=600px){main{padding-bottom:calc(max(var(--space-2), env(safe-area-inset-bottom)) + var(--space-16))}}body.loading main{justify-content:center;padding-bottom:0}.centre{justify-items:center;gap:var(--space-4);padding:var(--space-8);background:radial-gradient(closest-side, color-mix(in srgb, var(--surface-space) 75%, transparent), transparent);transition:transform var(--duration-stage) var(--ease-cinematic);display:grid}.logo svg{width:min(320px,72vw,24svh);height:auto;display:block}.logo .es-mark-look,.logo .es-mark-blink{animation-delay:-1.65s}.words{display:grid}.words>p{text-align:center;text-shadow:var(--text-halo);transition:opacity var(--duration-label) var(--ease-gentle);grid-area:1/1;margin:0}.soon{color:var(--text-secondary);opacity:0}body.revealed .soon{opacity:1;transition-duration:var(--duration-stage)}.wait{color:var(--text-muted);opacity:0}body.loading .wait.shown{opacity:1}.dots span{animation:es-dot-pulse 1.4s var(--ease-gentle) infinite}.dots span:nth-child(2){animation-delay:.2s}.dots span:nth-child(3){animation-delay:.4s}@keyframes es-dot-pulse{0%,to{opacity:.25}50%{opacity:1}}.parts{opacity:0;transition:opacity var(--duration-stage) var(--ease-gentle)}.parts[hidden]{display:none}body.revealed .parts{opacity:1}.part{top:max(var(--space-3), env(safe-area-inset-top));left:max(var(--space-3), env(safe-area-inset-left));color:var(--text-muted);opacity:.45;text-shadow:var(--text-halo);pointer-events:none;margin:0;position:fixed}.arrow{bottom:max(var(--space-2), env(safe-area-inset-bottom));left:max(var(--space-3), env(safe-area-inset-left));width:var(--tap-min);height:var(--tap-min);cursor:pointer;border:0;justify-content:center;align-items:center;padding:0;display:flex;position:fixed}.arrow.next{left:auto;right:max(var(--space-3), env(safe-area-inset-right))}.arrow:hover,.arrow:active{background:var(--glass-fill-hover)}.arrow:focus-visible{box-shadow:var(--focus-ring);outline:none}.arrow svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:square;stroke-linejoin:miter}.crediting{top:max(var(--space-3), env(safe-area-inset-top));right:max(var(--space-3), env(safe-area-inset-right));align-items:flex-end;gap:var(--space-2);opacity:0;transition:opacity var(--duration-stage) var(--ease-gentle);flex-direction:column;display:flex;position:fixed}body.revealed .crediting{opacity:1}.app-install[hidden]{display:none}.es-app-install-open body.revealed .parts{opacity:0;pointer-events:none;transition-duration:var(--duration-ui)}.credit-link{margin:calc(-1 * var(--space-2)) calc(-1 * var(--space-2)) 0 0;padding:var(--space-2);color:var(--text-muted);opacity:.45;text-shadow:var(--text-halo);cursor:pointer;background:0 0;border:0}.credit-link:hover,.credit-link[aria-expanded=true]{opacity:1}.credit-link:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-sm);outline:none}.credits{max-width:min(300px, calc(100vw - 2 * var(--space-3)));padding:var(--space-3) var(--space-4);border-radius:var(--radius-card);color:var(--text-secondary)}.credits[hidden]{display:none}.credits p{margin:0}.credits p+p{margin-top:var(--space-1)}@media (prefers-reduced-motion:reduce){.dots span{animation:none}.centre{transition:none}.veil{transition:opacity var(--duration-ui) linear, visibility 0s linear var(--duration-ui)}.words>p,body.revealed .soon,.parts,.crediting{transition-duration:var(--duration-ui)}}
