html.ssl-loader-lock,html.ssl-loader-lock body{overflow:hidden!important;overscroll-behavior:none}
html.ssl-skip-loader #sultan-signature-loader{display:none!important}

.ssl-loader{
    --ssl-p:0;
    position:fixed;inset:0;z-index:var(--ssl-z,999999);
    display:grid;place-items:center;overflow:hidden;
    background:var(--ssl-bg,#072978);
    isolation:isolate;
    opacity:1;visibility:visible;
    font-family:Arial,Helvetica,sans-serif;
}
.ssl-loader *{box-sizing:border-box}
.ssl-loader.ssl-bg-radial{background:radial-gradient(circle at 50% 46%,color-mix(in srgb,var(--ssl-bg) 76%,#ffffff 24%) 0%,var(--ssl-bg) 32%,color-mix(in srgb,var(--ssl-bg) 80%,#000 20%) 100%)}
.ssl-loader.ssl-bg-spotlight{background:radial-gradient(ellipse 52% 45% at 50% 47%,color-mix(in srgb,var(--ssl-bg) 68%,#ffffff 32%) 0%,var(--ssl-bg) 48%,color-mix(in srgb,var(--ssl-bg) 70%,#000 30%) 100%)}
.ssl-background-light{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 49%,rgba(255,255,255,.08),transparent 34%);opacity:.32}
.ssl-curtain{position:absolute;left:0;width:100%;height:50%;background:var(--ssl-bg);z-index:20;pointer-events:none;opacity:0}
.ssl-curtain-top{top:0;transform:translateY(-100%)}.ssl-curtain-bottom{bottom:0;transform:translateY(100%)}

.ssl-stage{position:relative;width:min(82vw,700px);height:min(78vh,700px);display:grid;place-items:center;transform:translateY(var(--ssl-offset-y,0));z-index:4}
.ssl-logo-wrap{position:relative;width:var(--ssl-logo-size,290px);aspect-ratio:1;display:block;filter:drop-shadow(0 20px 34px rgba(0,0,0,.16));transform:translateZ(0)}
.ssl-logo{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:contain;user-select:none;-webkit-user-drag:none}
.ssl-logo-main{z-index:3;opacity:0;clip-path:inset(100% 0 0 0);transform:translateY(16px) scale(.965)}
.ssl-logo-glow{z-index:2;opacity:0;filter:blur(var(--ssl-glow,17px)) brightness(1.3) saturate(1.15);transform:scale(1.025)}
/* Same exact supplied artwork, clipped to the flame/top region. No redrawing. */
.ssl-logo-flame{z-index:5;opacity:0;clip-path:inset(0 32% 88% 32%);filter:drop-shadow(0 0 calc(var(--ssl-glow,17px)*1.1) var(--ssl-accent));transform:scale(.92) translateY(8px);transform-origin:50% 8%}
.ssl-reveal-line{position:absolute;z-index:8;left:13%;right:13%;height:1px;top:98%;opacity:0;background:linear-gradient(90deg,transparent,var(--ssl-accent),#fff,var(--ssl-accent),transparent);box-shadow:0 0 14px var(--ssl-accent)}
.ssl-scan{position:absolute;z-index:9;top:0;bottom:0;left:-20%;width:12%;pointer-events:none;opacity:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),rgba(255,255,255,.35),rgba(255,255,255,.08),transparent);filter:blur(7px);transform:skewX(-12deg)}
.ssl-no-scan .ssl-scan{display:none}

.ssl-orbit{position:absolute;width:min(67vw,520px);height:min(18vw,140px);border:1px solid rgba(255,255,255,.12);border-radius:50%;transform:rotateX(68deg);opacity:0}
.ssl-focus{position:absolute;width:38px;height:38px;opacity:0}
.ssl-focus:before,.ssl-focus:after{content:"";position:absolute;background:rgba(255,255,255,.7)}
.ssl-focus-a{top:24%;left:22%;border-top:1px solid rgba(255,255,255,.55);border-left:1px solid rgba(255,255,255,.55)}
.ssl-focus-b{right:22%;bottom:24%;border-right:1px solid rgba(255,255,255,.55);border-bottom:1px solid rgba(255,255,255,.55)}

.ssl-particle{position:absolute;z-index:7;width:3px;height:3px;border-radius:50%;background:var(--ssl-accent);box-shadow:0 0 11px var(--ssl-accent);opacity:0;left:50%;top:18%;--x:0px;--y:-45px}
.ssl-particle-1{--x:-56px;--y:-64px}.ssl-particle-2{--x:44px;--y:-82px}.ssl-particle-3{--x:-27px;--y:-112px}.ssl-particle-4{--x:70px;--y:-48px}.ssl-particle-5{--x:-82px;--y:-34px}.ssl-particle-6{--x:18px;--y:-132px}
.ssl-no-particles .ssl-particle{display:none}

/* Signature Build: symbol rises from its calligraphic base, then the wordmark locks in, then the flame fires. */
.ssl-motion-signature_build.ssl-stage-1 .ssl-logo-main{opacity:1;clip-path:inset(43% 0 0 0);transform:translateY(0) scale(1);transition:clip-path calc(.68s * var(--ssl-speed,1)) cubic-bezier(.16,1,.3,1),opacity .18s ease,transform calc(.68s * var(--ssl-speed,1)) cubic-bezier(.16,1,.3,1)}
.ssl-motion-signature_build.ssl-stage-1 .ssl-reveal-line{opacity:.78;top:43%;transition:top calc(.68s * var(--ssl-speed,1)) cubic-bezier(.16,1,.3,1),opacity .15s ease}
.ssl-motion-signature_build.ssl-stage-2 .ssl-logo-main{opacity:1;clip-path:inset(0 0 0 0);transform:translateY(0) scale(1);transition:clip-path calc(.92s * var(--ssl-speed,1)) cubic-bezier(.16,1,.3,1)}
.ssl-motion-signature_build.ssl-stage-2 .ssl-reveal-line{top:1%;opacity:0;transition:top calc(.92s * var(--ssl-speed,1)) cubic-bezier(.16,1,.3,1),opacity .16s ease .72s}
.ssl-motion-signature_build.ssl-stage-2 .ssl-logo-glow{opacity:.18;animation:ssl-glow-bloom calc(1.05s * var(--ssl-speed,1)) ease-out both}
.ssl-motion-signature_build.ssl-stage-3 .ssl-logo-flame{opacity:1;transform:scale(1) translateY(0);transition:opacity .18s ease,transform calc(.46s * var(--ssl-speed,1)) cubic-bezier(.34,1.56,.64,1);animation:ssl-flame-pulse calc(1.15s * var(--ssl-speed,1)) ease-in-out .42s infinite alternate}
.ssl-motion-signature_build.ssl-stage-3 .ssl-logo-main{opacity:1;clip-path:inset(0);transform:scale(1)}
.ssl-motion-signature_build.ssl-stage-3 .ssl-particle{animation:ssl-particle calc(1.28s * var(--ssl-speed,1)) ease-out infinite}
.ssl-motion-signature_build.ssl-stage-3 .ssl-particle-2{animation-delay:-.24s}.ssl-motion-signature_build.ssl-stage-3 .ssl-particle-3{animation-delay:-.52s}.ssl-motion-signature_build.ssl-stage-3 .ssl-particle-4{animation-delay:-.79s}.ssl-motion-signature_build.ssl-stage-3 .ssl-particle-5{animation-delay:-.98s}.ssl-motion-signature_build.ssl-stage-3 .ssl-particle-6{animation-delay:-.38s}
.ssl-motion-signature_build.ssl-stage-3 .ssl-orbit{opacity:.5;animation:ssl-orbit calc(3.5s * var(--ssl-speed,1)) linear infinite}

/* Focus Lock: a media-camera inspired lock-on without touching the logo geometry. */
.ssl-motion-focus_lock .ssl-logo-main{opacity:0;clip-path:inset(0);transform:scale(.9)}
.ssl-motion-focus_lock.ssl-stage-1 .ssl-focus{opacity:1;animation:ssl-focus-in calc(.55s * var(--ssl-speed,1)) ease both}
.ssl-motion-focus_lock.ssl-stage-1 .ssl-logo-main{opacity:.38;transform:scale(.96);transition:all calc(.55s * var(--ssl-speed,1)) ease}
.ssl-motion-focus_lock.ssl-stage-2 .ssl-logo-main{opacity:1;transform:scale(1);transition:all calc(.5s * var(--ssl-speed,1)) cubic-bezier(.16,1,.3,1)}
.ssl-motion-focus_lock.ssl-stage-2 .ssl-focus{opacity:.8;transform:translate(0,0)}
.ssl-motion-focus_lock.ssl-stage-2 .ssl-scan{opacity:1;animation:ssl-scan calc(1s * var(--ssl-speed,1)) ease both}
.ssl-motion-focus_lock.ssl-stage-3 .ssl-logo-flame{opacity:1;transform:scale(1);animation:ssl-flame-pulse calc(1.2s * var(--ssl-speed,1)) ease-in-out infinite alternate}
.ssl-motion-focus_lock.ssl-stage-3 .ssl-focus{opacity:0;transition:opacity .3s ease}
.ssl-motion-focus_lock.ssl-stage-3 .ssl-logo-glow{opacity:.14}

/* Minimal: almost no effect, just an elegant arrival. */
.ssl-motion-minimal .ssl-orbit,.ssl-motion-minimal .ssl-focus,.ssl-motion-minimal .ssl-particle,.ssl-motion-minimal .ssl-scan,.ssl-motion-minimal .ssl-reveal-line{display:none!important}
.ssl-motion-minimal.ssl-stage-1 .ssl-logo-main{opacity:1;clip-path:inset(0);transform:scale(.94);transition:all calc(.7s * var(--ssl-speed,1)) cubic-bezier(.16,1,.3,1)}
.ssl-motion-minimal.ssl-stage-2 .ssl-logo-main{opacity:1;clip-path:inset(0);transform:scale(1);transition:transform calc(.65s * var(--ssl-speed,1)) cubic-bezier(.16,1,.3,1)}
.ssl-motion-minimal.ssl-stage-3 .ssl-logo-main{opacity:1;clip-path:inset(0);transform:scale(1);animation:ssl-breathe calc(2.4s * var(--ssl-speed,1)) ease-in-out infinite}
.ssl-motion-minimal.ssl-stage-3 .ssl-logo-glow{opacity:.1}

.ssl-progress{position:absolute;left:0;right:0;bottom:0;height:2px;background:rgba(255,255,255,.12);z-index:25}
.ssl-progress i{display:block;height:100%;width:100%;background:linear-gradient(90deg,var(--ssl-accent),#fff);transform:scaleX(var(--ssl-p));transform-origin:left center;box-shadow:0 0 13px var(--ssl-accent);transition:transform .18s linear}
.ssl-no-progress .ssl-progress{display:none}
.ssl-percentage{position:absolute;right:28px;bottom:24px;z-index:25;color:rgba(255,255,255,.64);font:600 11px/1 Arial,sans-serif;letter-spacing:.12em;font-variant-numeric:tabular-nums}
.ssl-no-percentage .ssl-percentage{display:none}

.ssl-loader.ssl-is-exiting .ssl-stage{animation:ssl-stage-exit var(--ssl-exit,.72s) cubic-bezier(.76,0,.24,1) both}
.ssl-loader.ssl-is-exiting .ssl-progress,.ssl-loader.ssl-is-exiting .ssl-percentage{opacity:0;transition:opacity .18s ease}
.ssl-loader.ssl-exit-split.ssl-is-exiting{background:transparent}
.ssl-loader.ssl-exit-split.ssl-is-exiting .ssl-curtain{opacity:1;background:var(--ssl-bg);transition:transform var(--ssl-exit,.72s) cubic-bezier(.76,0,.24,1)}
.ssl-loader.ssl-exit-split.ssl-is-exiting .ssl-curtain-top{transform:translateY(-100%)}
.ssl-loader.ssl-exit-split.ssl-is-exiting .ssl-curtain-bottom{transform:translateY(100%)}
.ssl-loader.ssl-exit-fade.ssl-is-exiting{opacity:0;transition:opacity var(--ssl-exit,.72s) ease}
.ssl-loader.ssl-exit-zoom.ssl-is-exiting{opacity:0;transition:opacity var(--ssl-exit,.72s) ease .1s}
.ssl-loader.ssl-exit-zoom.ssl-is-exiting .ssl-stage{animation:ssl-stage-push var(--ssl-exit,.72s) cubic-bezier(.22,1,.36,1) both}

@keyframes ssl-glow-bloom{0%{opacity:0;transform:scale(.94)}35%{opacity:.34}100%{opacity:.12;transform:scale(1.04)}}
@keyframes ssl-flame-pulse{from{filter:drop-shadow(0 0 calc(var(--ssl-glow)*.55) var(--ssl-accent));transform:scale(1)}to{filter:drop-shadow(0 0 calc(var(--ssl-glow)*1.18) var(--ssl-accent));transform:scale(1.035) translateY(-1px)}}
@keyframes ssl-particle{0%{opacity:0;transform:translate(0,0) scale(.5)}16%{opacity:.9}100%{opacity:0;transform:translate(var(--x),var(--y)) scale(1)}}
@keyframes ssl-orbit{from{transform:rotateX(68deg) rotateZ(0)}to{transform:rotateX(68deg) rotateZ(360deg)}}
@keyframes ssl-scan{0%{left:-20%;opacity:0}15%{opacity:.9}85%{opacity:.8}100%{left:112%;opacity:0}}
@keyframes ssl-focus-in{0%{opacity:0;transform:scale(1.8)}100%{opacity:.8;transform:scale(1)}}
@keyframes ssl-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.015)}}
@keyframes ssl-stage-exit{0%{opacity:1;transform:translateY(var(--ssl-offset-y,0)) scale(1)}40%{opacity:1;transform:translateY(var(--ssl-offset-y,0)) scale(.96)}100%{opacity:0;transform:translateY(var(--ssl-offset-y,0)) scale(1.12);filter:blur(5px)}}
@keyframes ssl-stage-push{0%{opacity:1;transform:translateY(var(--ssl-offset-y,0)) scale(1)}100%{opacity:0;transform:translateY(var(--ssl-offset-y,0)) scale(2.8);filter:blur(10px)}}

@media(max-width:767px){
    .ssl-stage{width:92vw;height:74vh}
    .ssl-logo-wrap{width:var(--ssl-logo-size-mobile,205px)}
    .ssl-orbit{width:min(86vw,420px);height:120px}
    .ssl-percentage{right:20px;bottom:20px}
}

@media(prefers-reduced-motion:reduce){
    .ssl-loader.ssl-reduced *{animation:none!important;transition-duration:.18s!important}
    .ssl-loader.ssl-reduced .ssl-logo-main{opacity:1!important;clip-path:inset(0)!important;transform:none!important}
    .ssl-loader.ssl-reduced .ssl-logo-flame{display:none!important}
    .ssl-loader.ssl-reduced .ssl-orbit,.ssl-loader.ssl-reduced .ssl-focus,.ssl-loader.ssl-reduced .ssl-particle,.ssl-loader.ssl-reduced .ssl-scan,.ssl-loader.ssl-reduced .ssl-reveal-line{display:none!important}
}
