.vroot{--vi-rise:16px;--vi-hair:1px;--vi-loader-gap:10px;--vi-count-bottom:64px;--vi-count-w:120px;--vi-count-gap:8px}.vi-nav{position:relative;z-index:210}.vi-overlay{display:none}.vi-line-inner{display:inline-block}@property --vi-n{syntax:"<integer>";inherits:false;initial-value:0}@keyframes viFade{0%{opacity:0;visibility:hidden;transform:translateY(var(--vi-rise,16px))}to{opacity:1;visibility:visible;transform:none}}@keyframes viFadeOnly{0%{opacity:0}to{opacity:1}}@keyframes viHide{0%{visibility:visible}to{visibility:hidden}}@keyframes viRise{0%{transform:translateY(105%)}to{transform:none}}@media (prefers-reduced-motion:no-preference){html[data-vintro=a] .v-a{--vi-dot:6px;--vi-square:64px;--vi-gap:6px;--vi-tick:8px}html[data-vintro=a] .v-a .home-hero{background:var(--bg)}html[data-vintro=a] .v-a .home-hero:after,html[data-vintro=a] .v-a .vi-media{animation:viaClip 3s 1s both}html[data-vintro=a] .v-a .vi-overlay{display:block;position:absolute;inset:0;z-index:1;pointer-events:none}html[data-vintro=a] .v-a .vi-foot,html[data-vintro=a] .v-a .vi-services,html[data-vintro=a] .v-a .vi-title{animation:viFade 1s cubic-bezier(.22,1,.36,1) 4s both}html[data-vintro=a] .v-a .vi-services{animation-delay:4.1s}html[data-vintro=a] .v-a .vi-foot{animation-delay:4.15s}html[data-vintro=a] .v-a .vi-nav{animation:viFadeOnly 1s cubic-bezier(.22,1,.36,1) 4.2s both}.via-loader{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:var(--vi-loader-gap,10px);background:var(--bg);color:var(--fg);font-size:var(--type-label-size);line-height:var(--type-label-leading);animation:viHide 1s step-end both}.via-dot{width:var(--vi-dot);height:var(--vi-dot);border-radius:50%;background:currentColor}.via-frame{position:absolute;--t:var(--fg);background:linear-gradient(var(--t),var(--t)) 0 0 /var(--vi-tick) var(--vi-hair,1px) no-repeat,linear-gradient(var(--t),var(--t)) 0 0 /var(--vi-hair,1px) var(--vi-tick) no-repeat,linear-gradient(var(--t),var(--t)) 100% 0 /var(--vi-tick) var(--vi-hair,1px) no-repeat,linear-gradient(var(--t),var(--t)) 100% 0 /var(--vi-hair,1px) var(--vi-tick) no-repeat,linear-gradient(var(--t),var(--t)) 0 100% /var(--vi-tick) var(--vi-hair,1px) no-repeat,linear-gradient(var(--t),var(--t)) 0 100% /var(--vi-hair,1px) var(--vi-tick) no-repeat,linear-gradient(var(--t),var(--t)) 100% 100% /var(--vi-tick) var(--vi-hair,1px) no-repeat,linear-gradient(var(--t),var(--t)) 100% 100% /var(--vi-hair,1px) var(--vi-tick) no-repeat;animation:viaFrame 3s 1s both}.via-count{position:absolute;left:50%;bottom:var(--vi-count-bottom,64px);width:var(--vi-count-w,120px);margin-left:calc(var(--vi-count-w, 120px) / -2);counter-reset:vin var(--vi-n);color:var(--fg-muted);text-align:center;font-variant-numeric:tabular-nums;font-size:var(--type-label-size);line-height:var(--type-label-leading);animation:viCount 2.4s linear 1s both,viHide 2.4s step-end 1s both}.via-count:before{content:counter(vin) "%";display:block;margin-bottom:var(--vi-count-gap,8px)}.via-count:after{content:"";display:block;height:var(--vi-hair,1px);background:currentColor;transform-origin:0 50%;animation:viLine 2.4s linear 1s both}html[data-vintro=b] .v-b .home-hero{background:var(--bg)}html[data-vintro=b] .v-b .vi-media img{animation:vibLight 2.6s cubic-bezier(.22,1,.36,1) both}html[data-vintro=b] .v-b .vi-line{clip-path:inset(-.3em -.3em 0 -.3em)}html[data-vintro=b] .v-b .vi-line-inner{animation:viRise 1.1s cubic-bezier(.16,1,.3,1) .5s both}html[data-vintro=b] .v-b .vi-line:nth-child(2) .vi-line-inner{animation-delay:.62s}html[data-vintro=b] .v-b .vi-line:nth-child(3) .vi-line-inner{animation-delay:.74s}html[data-vintro=b] .v-b .vi-foot,html[data-vintro=b] .v-b .vi-services{animation:viFade .9s cubic-bezier(.22,1,.36,1) 1.5s both}html[data-vintro=b] .v-b .vi-nav{animation:viFadeOnly .9s cubic-bezier(.22,1,.36,1) 1.7s both}html[data-vintro=c] .v-c .home-hero{background:var(--bg)}html[data-vintro=c] .v-c .vi-overlay{display:block;position:absolute;inset:0;z-index:1;pointer-events:none}html[data-vintro=c] .v-c .home-hero:after,html[data-vintro=c] .v-c .vi-media{animation:vicOpen 1.4s cubic-bezier(.65,0,.35,1) .8s both}html[data-vintro=c] .v-c .vi-line{animation:vicLine 1s cubic-bezier(.65,0,.35,1) 1.7s both}html[data-vintro=c] .v-c .vi-line:nth-child(2){animation-delay:1.8s}html[data-vintro=c] .v-c .vi-line:nth-child(3){animation-delay:1.9s}html[data-vintro=c] .v-c .vi-foot,html[data-vintro=c] .v-c .vi-services{animation:viFade .9s cubic-bezier(.22,1,.36,1) 2.4s both}html[data-vintro=c] .v-c .vi-nav{animation:viFadeOnly .9s cubic-bezier(.22,1,.36,1) 2.6s both}.vic-horizon{position:absolute;left:0;right:0;top:50%;height:var(--vi-hair,1px);background:var(--fg);transform-origin:50% 50%;animation:vicDraw .9s cubic-bezier(.65,0,.35,1) both,vicFadeLine .6s linear 1.6s both}}@keyframes viaClip{0%{clip-path:inset(calc(50% - var(--vi-dot) / 2));animation-timing-function:cubic-bezier(.2,0,0,1)}40%,56.667%{clip-path:inset(calc(50% - var(--vi-square) / 2));animation-timing-function:cubic-bezier(.65,0,.35,1)}to{clip-path:inset(0)}}@keyframes viaFrame{0%{inset:calc(50% - var(--vi-dot) / 2 - var(--vi-gap));opacity:0;animation-timing-function:cubic-bezier(.2,0,0,1)}40%,56.667%{inset:calc(50% - var(--vi-square) / 2 - var(--vi-gap));opacity:1;animation-timing-function:cubic-bezier(.65,0,.35,1)}to{inset:calc(-1 * var(--vi-gap));opacity:0}}@keyframes viCount{0%{--vi-n:0}to{--vi-n:100}}@keyframes viLine{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes vibLight{0%{opacity:0;filter:brightness(.25);transform:scale(1.08)}to{opacity:1;filter:none;transform:none}}@keyframes vicDraw{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes vicFadeLine{0%{opacity:1}to{opacity:0}}@keyframes vicOpen{0%{clip-path:inset(50% 0 50% 0)}to{clip-path:inset(0)}}@keyframes vicLine{0%{clip-path:inset(50% -.2em 50% -.2em)}to{clip-path:inset(-.2em -.2em -.2em -.2em)}}.vd-overlay{display:none}@media (prefers-reduced-motion:no-preference){html[data-vintro=d] .vd-overlay{display:flex;position:fixed;inset:0;z-index:220;pointer-events:none;align-items:center;justify-content:center;animation:viHide 1.3s step-end both}html[data-vintro=d] .vd-mark{animation:vdLand .5s cubic-bezier(.65,0,.35,1) .8s both;transform-origin:50% 50%}html[data-vintro=d] .vd-letter{animation:viRise .38s cubic-bezier(.16,1,.3,1) both}html[data-vintro=d] .v-d .home-hero{background:var(--bg)}html[data-vintro=d] .v-d .vi-media img{animation:vdLight 1.4s cubic-bezier(.22,1,.36,1) both}html[data-vintro=d] .v-d .vi-foot,html[data-vintro=d] .v-d .vi-services,html[data-vintro=d] .v-d .vi-title{animation:viFade .45s cubic-bezier(.22,1,.36,1) 1s both}html[data-vintro=d] .v-d .vi-nav{animation:viFadeOnly .35s cubic-bezier(.22,1,.36,1) .9s both}html[data-vintro=d] .v-d .vi-nav a[href="/"]{animation:vdShow 1.3s step-end both}}@keyframes vdLand{0%{transform:none}to{transform:translate(var(--vd-x,0),var(--vd-y,0)) scale(var(--vd-s,1))}}@keyframes vdLight{0%{filter:brightness(.35)}to{filter:none}}@keyframes vdShow{0%{visibility:hidden}to{visibility:visible}}