/* A single pinned canvas. The film advances only with the visitor's scroll. */
.fc-loader,.fc-intro{display:none}
html.intro-enabled .fc-intro{display:block}
html.intro-pending{overflow:hidden!important;scroll-behavior:auto!important}
html.intro-pending .fc-loader{display:grid}
html.intro-pending .site-header,html.intro-pending .scroll-progress{visibility:hidden}
.fc-loader{position:fixed;inset:0;z-index:2000;place-items:center;background:#030406;color:#edf0f7;isolation:isolate;transition:opacity .5s ease,visibility .5s}
.fc-loader::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 75%,#19428932,transparent 47%);opacity:0;animation:fc-arrive 1.2s .2s forwards}
.fc-loader.is-leaving{display:grid!important;opacity:0;visibility:hidden;pointer-events:none}
.fc-loader-center{position:relative;text-align:center;opacity:0;transform:translateY(12px);animation:fc-arrive .7s .2s both}
.fc-loader-logo{position:relative;width:clamp(210px,24vw,290px);aspect-ratio:1;margin:0 auto 35px}
.fc-seal{display:block;width:100%;height:100%;overflow:visible}
.fc-loader .fc-seal__orbit{transform-origin:160px 160px;animation:fc-orbit 32s linear infinite}
.fc-loader-ring{position:absolute;inset:-9px;width:calc(100% + 18px);height:calc(100% + 18px);transform:rotate(-90deg)}
.fc-loader-ring circle{fill:none;stroke:#ffffff12;stroke-width:1}
.fc-loader-ring .fc-loader-meter{stroke:#8eaefe;stroke-width:1.5;stroke-dasharray:942.48;stroke-dashoffset:942.48;transition:stroke-dashoffset .18s linear;filter:drop-shadow(0 0 5px #507df8)}
.fc-loader-label{font:10px/1.6 Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#929cab;margin:0 0 10px}
.fc-loader-count{font:12px/1.5 Arial,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.16em;color:#eef2ff}
.fc-loader-skip{position:absolute;right:4vw;top:max(25px,env(safe-area-inset-top));z-index:2}
.fc-loader-bottom{position:absolute;bottom:max(30px,env(safe-area-inset-bottom));font:9px/1.5 Arial,sans-serif;letter-spacing:.2em;color:#6c7484;text-transform:uppercase}
.fc-loader-particle{position:absolute;width:2px;height:2px;border-radius:50%;background:#b6c9f7;opacity:.3;box-shadow:0 0 8px #648cff;animation:fc-drift 4s ease-in-out infinite alternate}
.fc-loader-particle:nth-of-type(1){left:25%;top:31%}.fc-loader-particle:nth-of-type(2){left:72%;top:58%;animation-delay:-2s}.fc-loader-particle:nth-of-type(3){left:65%;top:25%;animation-delay:-1s}.fc-loader-particle:nth-of-type(4){left:33%;top:75%;animation-delay:-3s}
.fc-intro{position:relative;height:640svh;background:#05070b;isolation:isolate;scroll-margin-top:0}
.fc-intro-stage{position:sticky;top:0;height:100svh;overflow:hidden;background:#05070b;color:#f3f5fa}
.fc-intro-video{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#05070b;pointer-events:none}
.fc-intro-top{position:absolute;top:0;left:0;right:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 3.6vw;background:linear-gradient(#03050a85,transparent)}
.fc-intro-brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:#fff}
.fc-intro-brand img{width:39px;height:39px;object-fit:contain;border-radius:50%;border:1px solid #b3c5ed45;background:#131d2c}
.fc-intro-brand strong{font:600 11px/1.3 Arial,sans-serif;letter-spacing:.09em}
.fc-intro-brand small{display:block;color:#acb7ca;font:8px/1.5 Arial,sans-serif;letter-spacing:.09em;margin-top:3px}
.fc-intro-controls{display:flex;align-items:center;gap:9px}
.fc-intro-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 14px;border:1px solid #b9c8e329;border-radius:30px;background:#070c15aa;color:#dce3f0;backdrop-filter:blur(14px);font:10px/1.2 Arial,sans-serif;letter-spacing:.025em;text-decoration:none;cursor:pointer;transition:background .2s,border-color .2s}
.fc-intro-button:hover{background:#24334ce6;border-color:#c3d4f187}
.fc-intro-button:focus-visible,.fc-chapters button:focus-visible{outline:2px solid #a8c4ff;outline-offset:5px}
.fc-intro-button svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.5;fill:none}
.fc-sound-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#8290a5}
[aria-pressed=true] .fc-sound-dot{background:#c8ee76;box-shadow:0 0 9px #c8ee7644}
.fc-intro-bottom{position:absolute;z-index:3;bottom:0;left:0;right:0;padding:42px 3.6vw max(26px,env(safe-area-inset-bottom));background:linear-gradient(transparent,#03050abd);display:grid;grid-template-columns:1fr minmax(300px,530px) 1fr;align-items:end;gap:24px}
.fc-scroll-cue{font:9px/1.6 Arial,sans-serif;letter-spacing:.16em;color:#b4bfd1;text-transform:uppercase;margin:0}
.fc-scroll-cue i{font-style:normal;display:inline-block;font-size:16px;margin-left:10px}
.fc-chapters{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.fc-chapters button{position:relative;border:0;background:transparent;color:#94a0b5;padding:14px 0 11px;text-align:left;cursor:pointer;min-height:44px;font:9px/1.4 Arial,sans-serif;letter-spacing:.04em}
.fc-chapters button::after,.fc-chapters button::before{content:"";position:absolute;height:2px;bottom:0;left:0;width:100%;background:#c6d3ea35;transform-origin:left}
.fc-chapters button::after{background:#e5edff;transform:scaleX(var(--chapter-fill,0))}
.fc-chapters button b{font-weight:400;font-variant-numeric:tabular-nums;opacity:.6;margin-right:7px}
.fc-chapters button[aria-current=step]{color:#fff}
.fc-intro-time{margin:0;text-align:right;color:#aab7ce;font:10px/1.4 Arial,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.07em}
.fc-intro-time span{color:#f1f4fc}
.fc-mobile-caption{display:none}
.fc-intro-enter{position:absolute;z-index:4;bottom:105px;left:50%;transform:translate(-50%,10px);opacity:0;visibility:hidden;transition:opacity .25s,transform .25s,visibility .25s;white-space:nowrap}
.fc-intro[data-complete=true] .fc-intro-enter{opacity:1;visibility:visible;transform:translate(-50%,0)}
.fc-intro-message{display:none}
.fc-intro .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.fc-intro[data-state=fallback]{height:100svh!important}
.fc-intro[data-state=fallback] .fc-intro-message{display:block;position:absolute;left:20px;right:20px;bottom:145px;text-align:center;font:12px/1.6 Arial,sans-serif;color:#c5cfe1}
.fc-intro[data-state=fallback] .fc-intro-enter{opacity:1;visibility:visible;transform:translateX(-50%)}
.fc-intro[data-state=fallback] .fc-chapters,.fc-intro[data-state=fallback] .fc-intro-time{visibility:hidden}
body.fc-in-intro>.site-header,body.fc-in-intro>.scroll-progress{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-100%)}
.fc-replay{display:inline-block;margin-top:14px;background:transparent;border:0;border-bottom:1px solid #9ba7bc55;color:#b9c4d7;font:9px/1.5 Arial,sans-serif;letter-spacing:.03em;padding:5px 0;cursor:pointer}
.fc-replay:hover{color:#fff;border-color:#fff}
#home{scroll-margin-top:0}
@keyframes fc-arrive{to{opacity:1;transform:translateY(0)}}
@keyframes fc-orbit{to{transform:rotate(360deg)}}
@keyframes fc-drift{to{transform:translate(4px,-14px);opacity:.65}}
@media(max-width:760px){
 .fc-intro{height:800svh}
 .fc-intro-stage{height:100dvh}
 .fc-intro-top{padding:calc(14px + env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) 18px max(16px,env(safe-area-inset-left));gap:10px}
 .fc-intro-brand{gap:8px;min-width:0}.fc-intro-brand img{width:34px;height:34px;flex-shrink:0}
 .fc-intro-brand strong{font-size:10px;letter-spacing:.035em;white-space:nowrap}.fc-intro-brand small{font-size:7px}
 .fc-intro-controls{gap:6px;flex-shrink:0}.fc-intro-button{padding:0 11px;font-size:10px;min-height:44px}
 .fc-intro-bottom{grid-template-columns:1fr auto;gap:20px;padding:32px max(20px,env(safe-area-inset-right)) calc(23px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}
 .fc-chapters{grid-column:1/-1;grid-row:1;gap:14px}.fc-chapters button{font-size:10px;line-height:1.5;min-height:55px;padding:8px 0 13px}
 .fc-chapters button b{display:block;font-size:9px;margin:0 0 4px;letter-spacing:.1em}
 .fc-scroll-cue{font-size:9px;letter-spacing:.1em}.fc-intro-time{font-size:10px}
 .fc-intro-enter{bottom:155px}
 .fc-loader-skip{right:5vw}.fc-loader-logo{width:230px}
}
@media(max-aspect-ratio:4/5){
 .fc-intro-stage{background:radial-gradient(ellipse at 50% 65%,#102a5030,transparent 55%),#05070b}
 .fc-intro-video{top:50%;bottom:auto;height:auto;aspect-ratio:16/9;transform:translateY(-50%);background:transparent}
 .fc-mobile-caption{display:block;position:absolute;left:6vw;right:6vw;bottom:calc(50% + 28.125vw + 24px);text-align:center}
 .fc-mobile-caption span{font:9px/1.5 Arial,sans-serif;letter-spacing:.17em;color:#91a6c8;text-transform:uppercase}
 .fc-mobile-caption h2{margin:11px 0 0;font:400 clamp(24px,6.5vw,32px)/1.12 Arial,sans-serif;letter-spacing:-.035em;color:#eef3ff}
 .fc-intro-enter{bottom:calc(157px + env(safe-area-inset-bottom))}
 .fc-intro[data-state=fallback] .fc-intro-message{bottom:calc(213px + env(safe-area-inset-bottom))}
}
@media(max-width:360px){
 .fc-intro-top{padding-inline:12px;gap:6px}
 .fc-intro-brand{gap:6px}.fc-intro-brand img{width:29px;height:29px}.fc-intro-brand strong{font-size:9px}.fc-intro-brand small{font-size:6px}
 .fc-intro-controls{gap:4px}.fc-intro-controls .fc-intro-button{padding-inline:9px;font-size:9px;gap:5px}
 .fc-intro-bottom{padding-inline:16px}.fc-chapters{gap:10px}.fc-chapters button{font-size:9px}
}
@media(max-height:500px) and (orientation:landscape){
 .fc-intro-video{inset:56px 0 58px;height:calc(100% - 114px);object-fit:contain}
 .fc-intro-top{padding:8px max(20px,env(safe-area-inset-right)) 8px max(20px,env(safe-area-inset-left))}.fc-intro-bottom{padding:18px max(20px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));grid-template-columns:1fr minmax(260px,420px) auto;gap:18px}
 .fc-chapters{grid-column:auto;grid-row:auto}.fc-chapters button{min-height:44px;padding:8px 0}.fc-chapters button b{display:inline;margin-right:6px}
 .fc-intro-enter{bottom:75px}
}
@media(max-width:1000px) and (max-height:500px) and (orientation:landscape){.fc-intro{height:800svh}}
@media(prefers-reduced-motion:reduce){
 .fc-loader *,.fc-intro *{animation:none!important;transition:none!important}
 .fc-loader-center{opacity:1;transform:none}
}
