/* Original power3.inOut curve sampled at 1% intervals; linear interpolation avoids a different browser easing curve. */
@keyframes hero-layer-arrival {
  0% { opacity: 0.00000000; transform: translateY(50.00000000px); }
  1% { opacity: 0.00000008; transform: translateY(49.99999600px); }
  2% { opacity: 0.00000128; transform: translateY(49.99993600px); }
  3% { opacity: 0.00000648; transform: translateY(49.99967600px); }
  4% { opacity: 0.00002048; transform: translateY(49.99897600px); }
  5% { opacity: 0.00005000; transform: translateY(49.99750000px); }
  6% { opacity: 0.00010368; transform: translateY(49.99481600px); }
  7% { opacity: 0.00019208; transform: translateY(49.99039600px); }
  8% { opacity: 0.00032768; transform: translateY(49.98361600px); }
  9% { opacity: 0.00052488; transform: translateY(49.97375600px); }
  10% { opacity: 0.00080000; transform: translateY(49.96000000px); }
  11% { opacity: 0.00117128; transform: translateY(49.94143600px); }
  12% { opacity: 0.00165888; transform: translateY(49.91705600px); }
  13% { opacity: 0.00228488; transform: translateY(49.88575600px); }
  14% { opacity: 0.00307328; transform: translateY(49.84633600px); }
  15% { opacity: 0.00405000; transform: translateY(49.79750000px); }
  16% { opacity: 0.00524288; transform: translateY(49.73785600px); }
  17% { opacity: 0.00668168; transform: translateY(49.66591600px); }
  18% { opacity: 0.00839808; transform: translateY(49.58009600px); }
  19% { opacity: 0.01042568; transform: translateY(49.47871600px); }
  20% { opacity: 0.01280000; transform: translateY(49.36000000px); }
  21% { opacity: 0.01555848; transform: translateY(49.22207600px); }
  22% { opacity: 0.01874048; transform: translateY(49.06297600px); }
  23% { opacity: 0.02238728; transform: translateY(48.88063600px); }
  24% { opacity: 0.02654208; transform: translateY(48.67289600px); }
  25% { opacity: 0.03125000; transform: translateY(48.43750000px); }
  26% { opacity: 0.03655808; transform: translateY(48.17209600px); }
  27% { opacity: 0.04251528; transform: translateY(47.87423600px); }
  28% { opacity: 0.04917248; transform: translateY(47.54137600px); }
  29% { opacity: 0.05658248; transform: translateY(47.17087600px); }
  30% { opacity: 0.06480000; transform: translateY(46.76000000px); }
  31% { opacity: 0.07388168; transform: translateY(46.30591600px); }
  32% { opacity: 0.08388608; transform: translateY(45.80569600px); }
  33% { opacity: 0.09487368; transform: translateY(45.25631600px); }
  34% { opacity: 0.10690688; transform: translateY(44.65465600px); }
  35% { opacity: 0.12005000; transform: translateY(43.99750000px); }
  36% { opacity: 0.13436928; transform: translateY(43.28153600px); }
  37% { opacity: 0.14993288; transform: translateY(42.50335600px); }
  38% { opacity: 0.16681088; transform: translateY(41.65945600px); }
  39% { opacity: 0.18507528; transform: translateY(40.74623600px); }
  40% { opacity: 0.20480000; transform: translateY(39.76000000px); }
  41% { opacity: 0.22606088; transform: translateY(38.69695600px); }
  42% { opacity: 0.24893568; transform: translateY(37.55321600px); }
  43% { opacity: 0.27350408; transform: translateY(36.32479600px); }
  44% { opacity: 0.29984768; transform: translateY(35.00761600px); }
  45% { opacity: 0.32805000; transform: translateY(33.59750000px); }
  46% { opacity: 0.35819648; transform: translateY(32.09017600px); }
  47% { opacity: 0.39037448; transform: translateY(30.48127600px); }
  48% { opacity: 0.42467328; transform: translateY(28.76633600px); }
  49% { opacity: 0.46118408; transform: translateY(26.94079600px); }
  50% { opacity: 0.50000000; transform: translateY(25.00000000px); }
  51% { opacity: 0.53881592; transform: translateY(23.05920400px); }
  52% { opacity: 0.57532672; transform: translateY(21.23366400px); }
  53% { opacity: 0.60962552; transform: translateY(19.51872400px); }
  54% { opacity: 0.64180352; transform: translateY(17.90982400px); }
  55% { opacity: 0.67195000; transform: translateY(16.40250000px); }
  56% { opacity: 0.70015232; transform: translateY(14.99238400px); }
  57% { opacity: 0.72649592; transform: translateY(13.67520400px); }
  58% { opacity: 0.75106432; transform: translateY(12.44678400px); }
  59% { opacity: 0.77393912; transform: translateY(11.30304400px); }
  60% { opacity: 0.79520000; transform: translateY(10.24000000px); }
  61% { opacity: 0.81492472; transform: translateY(9.25376400px); }
  62% { opacity: 0.83318912; transform: translateY(8.34054400px); }
  63% { opacity: 0.85006712; transform: translateY(7.49664400px); }
  64% { opacity: 0.86563072; transform: translateY(6.71846400px); }
  65% { opacity: 0.87995000; transform: translateY(6.00250000px); }
  66% { opacity: 0.89309312; transform: translateY(5.34534400px); }
  67% { opacity: 0.90512632; transform: translateY(4.74368400px); }
  68% { opacity: 0.91611392; transform: translateY(4.19430400px); }
  69% { opacity: 0.92611832; transform: translateY(3.69408400px); }
  70% { opacity: 0.93520000; transform: translateY(3.24000000px); }
  71% { opacity: 0.94341752; transform: translateY(2.82912400px); }
  72% { opacity: 0.95082752; transform: translateY(2.45862400px); }
  73% { opacity: 0.95748472; transform: translateY(2.12576400px); }
  74% { opacity: 0.96344192; transform: translateY(1.82790400px); }
  75% { opacity: 0.96875000; transform: translateY(1.56250000px); }
  76% { opacity: 0.97345792; transform: translateY(1.32710400px); }
  77% { opacity: 0.97761272; transform: translateY(1.11936400px); }
  78% { opacity: 0.98125952; transform: translateY(0.93702400px); }
  79% { opacity: 0.98444152; transform: translateY(0.77792400px); }
  80% { opacity: 0.98720000; transform: translateY(0.64000000px); }
  81% { opacity: 0.98957432; transform: translateY(0.52128400px); }
  82% { opacity: 0.99160192; transform: translateY(0.41990400px); }
  83% { opacity: 0.99331832; transform: translateY(0.33408400px); }
  84% { opacity: 0.99475712; transform: translateY(0.26214400px); }
  85% { opacity: 0.99595000; transform: translateY(0.20250000px); }
  86% { opacity: 0.99692672; transform: translateY(0.15366400px); }
  87% { opacity: 0.99771512; transform: translateY(0.11424400px); }
  88% { opacity: 0.99834112; transform: translateY(0.08294400px); }
  89% { opacity: 0.99882872; transform: translateY(0.05856400px); }
  90% { opacity: 0.99920000; transform: translateY(0.04000000px); }
  91% { opacity: 0.99947512; transform: translateY(0.02624400px); }
  92% { opacity: 0.99967232; transform: translateY(0.01638400px); }
  93% { opacity: 0.99980792; transform: translateY(0.00960400px); }
  94% { opacity: 0.99989632; transform: translateY(0.00518400px); }
  95% { opacity: 0.99995000; transform: translateY(0.00250000px); }
  96% { opacity: 0.99997952; transform: translateY(0.00102400px); }
  97% { opacity: 0.99999352; transform: translateY(0.00032400px); }
  98% { opacity: 0.99999872; transform: translateY(0.00006400px); }
  99% { opacity: 0.99999992; transform: translateY(0.00000400px); }
  100% { opacity: 1.00000000; transform: translateY(0.00000000px); }
}
@keyframes hero-ar-heading-arrival {
  0% { opacity: 0.00000000; transform: translateY(49.00000000px); }
  1% { opacity: 0.00000008; transform: translateY(48.99999608px); }
  2% { opacity: 0.00000128; transform: translateY(48.99993728px); }
  3% { opacity: 0.00000648; transform: translateY(48.99968248px); }
  4% { opacity: 0.00002048; transform: translateY(48.99899648px); }
  5% { opacity: 0.00005000; transform: translateY(48.99755000px); }
  6% { opacity: 0.00010368; transform: translateY(48.99491968px); }
  7% { opacity: 0.00019208; transform: translateY(48.99058808px); }
  8% { opacity: 0.00032768; transform: translateY(48.98394368px); }
  9% { opacity: 0.00052488; transform: translateY(48.97428088px); }
  10% { opacity: 0.00080000; transform: translateY(48.96080000px); }
  11% { opacity: 0.00117128; transform: translateY(48.94260728px); }
  12% { opacity: 0.00165888; transform: translateY(48.91871488px); }
  13% { opacity: 0.00228488; transform: translateY(48.88804088px); }
  14% { opacity: 0.00307328; transform: translateY(48.84940928px); }
  15% { opacity: 0.00405000; transform: translateY(48.80155000px); }
  16% { opacity: 0.00524288; transform: translateY(48.74309888px); }
  17% { opacity: 0.00668168; transform: translateY(48.67259768px); }
  18% { opacity: 0.00839808; transform: translateY(48.58849408px); }
  19% { opacity: 0.01042568; transform: translateY(48.48914168px); }
  20% { opacity: 0.01280000; transform: translateY(48.37280000px); }
  21% { opacity: 0.01555848; transform: translateY(48.23763448px); }
  22% { opacity: 0.01874048; transform: translateY(48.08171648px); }
  23% { opacity: 0.02238728; transform: translateY(47.90302328px); }
  24% { opacity: 0.02654208; transform: translateY(47.69943808px); }
  25% { opacity: 0.03125000; transform: translateY(47.46875000px); }
  26% { opacity: 0.03655808; transform: translateY(47.20865408px); }
  27% { opacity: 0.04251528; transform: translateY(46.91675128px); }
  28% { opacity: 0.04917248; transform: translateY(46.59054848px); }
  29% { opacity: 0.05658248; transform: translateY(46.22745848px); }
  30% { opacity: 0.06480000; transform: translateY(45.82480000px); }
  31% { opacity: 0.07388168; transform: translateY(45.37979768px); }
  32% { opacity: 0.08388608; transform: translateY(44.88958208px); }
  33% { opacity: 0.09487368; transform: translateY(44.35118968px); }
  34% { opacity: 0.10690688; transform: translateY(43.76156288px); }
  35% { opacity: 0.12005000; transform: translateY(43.11755000px); }
  36% { opacity: 0.13436928; transform: translateY(42.41590528px); }
  37% { opacity: 0.14993288; transform: translateY(41.65328888px); }
  38% { opacity: 0.16681088; transform: translateY(40.82626688px); }
  39% { opacity: 0.18507528; transform: translateY(39.93131128px); }
  40% { opacity: 0.20480000; transform: translateY(38.96480000px); }
  41% { opacity: 0.22606088; transform: translateY(37.92301688px); }
  42% { opacity: 0.24893568; transform: translateY(36.80215168px); }
  43% { opacity: 0.27350408; transform: translateY(35.59830008px); }
  44% { opacity: 0.29984768; transform: translateY(34.30746368px); }
  45% { opacity: 0.32805000; transform: translateY(32.92555000px); }
  46% { opacity: 0.35819648; transform: translateY(31.44837248px); }
  47% { opacity: 0.39037448; transform: translateY(29.87165048px); }
  48% { opacity: 0.42467328; transform: translateY(28.19100928px); }
  49% { opacity: 0.46118408; transform: translateY(26.40198008px); }
  50% { opacity: 0.50000000; transform: translateY(24.50000000px); }
  51% { opacity: 0.53881592; transform: translateY(22.59801992px); }
  52% { opacity: 0.57532672; transform: translateY(20.80899072px); }
  53% { opacity: 0.60962552; transform: translateY(19.12834952px); }
  54% { opacity: 0.64180352; transform: translateY(17.55162752px); }
  55% { opacity: 0.67195000; transform: translateY(16.07445000px); }
  56% { opacity: 0.70015232; transform: translateY(14.69253632px); }
  57% { opacity: 0.72649592; transform: translateY(13.40169992px); }
  58% { opacity: 0.75106432; transform: translateY(12.19784832px); }
  59% { opacity: 0.77393912; transform: translateY(11.07698312px); }
  60% { opacity: 0.79520000; transform: translateY(10.03520000px); }
  61% { opacity: 0.81492472; transform: translateY(9.06868872px); }
  62% { opacity: 0.83318912; transform: translateY(8.17373312px); }
  63% { opacity: 0.85006712; transform: translateY(7.34671112px); }
  64% { opacity: 0.86563072; transform: translateY(6.58409472px); }
  65% { opacity: 0.87995000; transform: translateY(5.88245000px); }
  66% { opacity: 0.89309312; transform: translateY(5.23843712px); }
  67% { opacity: 0.90512632; transform: translateY(4.64881032px); }
  68% { opacity: 0.91611392; transform: translateY(4.11041792px); }
  69% { opacity: 0.92611832; transform: translateY(3.62020232px); }
  70% { opacity: 0.93520000; transform: translateY(3.17520000px); }
  71% { opacity: 0.94341752; transform: translateY(2.77254152px); }
  72% { opacity: 0.95082752; transform: translateY(2.40945152px); }
  73% { opacity: 0.95748472; transform: translateY(2.08324872px); }
  74% { opacity: 0.96344192; transform: translateY(1.79134592px); }
  75% { opacity: 0.96875000; transform: translateY(1.53125000px); }
  76% { opacity: 0.97345792; transform: translateY(1.30056192px); }
  77% { opacity: 0.97761272; transform: translateY(1.09697672px); }
  78% { opacity: 0.98125952; transform: translateY(0.91828352px); }
  79% { opacity: 0.98444152; transform: translateY(0.76236552px); }
  80% { opacity: 0.98720000; transform: translateY(0.62720000px); }
  81% { opacity: 0.98957432; transform: translateY(0.51085832px); }
  82% { opacity: 0.99160192; transform: translateY(0.41150592px); }
  83% { opacity: 0.99331832; transform: translateY(0.32740232px); }
  84% { opacity: 0.99475712; transform: translateY(0.25690112px); }
  85% { opacity: 0.99595000; transform: translateY(0.19845000px); }
  86% { opacity: 0.99692672; transform: translateY(0.15059072px); }
  87% { opacity: 0.99771512; transform: translateY(0.11195912px); }
  88% { opacity: 0.99834112; transform: translateY(0.08128512px); }
  89% { opacity: 0.99882872; transform: translateY(0.05739272px); }
  90% { opacity: 0.99920000; transform: translateY(0.03920000px); }
  91% { opacity: 0.99947512; transform: translateY(0.02571912px); }
  92% { opacity: 0.99967232; transform: translateY(0.01605632px); }
  93% { opacity: 0.99980792; transform: translateY(0.00941192px); }
  94% { opacity: 0.99989632; transform: translateY(0.00508032px); }
  95% { opacity: 0.99995000; transform: translateY(0.00245000px); }
  96% { opacity: 0.99997952; transform: translateY(0.00100352px); }
  97% { opacity: 0.99999352; transform: translateY(0.00031752px); }
  98% { opacity: 0.99999872; transform: translateY(0.00006272px); }
  99% { opacity: 0.99999992; transform: translateY(0.00000392px); }
  100% { opacity: 1.00000000; transform: translateY(0.00000000px); }
}
html.home-motion-pending .homepage .hero .hero-inner > :is(h1,p,.explore,.watch-video) { opacity: 0; }
html.home-motion-pending .homepage .hero .hero-inner > :is(.explore,.watch-video):focus-visible { opacity: 1; }
/* Subtitle and buttons follow the heading closely (Mohammed, 2026-10-16); live waits 1.69-2.54s. */
.homepage .hero-entrance-active .hero-inner > p {
  animation: hero-layer-arrival 1s linear 0.5s backwards;
}
.homepage .hero-entrance-active .hero-inner > .explore {
  animation: hero-layer-arrival 1s linear 0.65s backwards;
}
.homepage .hero-inner > .explore { border-radius: 4px; }
.homepage .hero-entrance-active .hero-inner > .watch-video {
  animation: hero-layer-arrival 1s linear 0.8s backwards;
}
html[dir=rtl] .homepage .hero-entrance-active .hero-inner > h1 {
  animation: hero-ar-heading-arrival 1.75s linear;
}
html[dir=rtl] .homepage .hero-entrance-active .hero-inner > .watch-video {
  animation-delay: 0.8s;
}
.homepage .hero-inner > .explore:is(:hover,:focus-visible) {
  background: #f7c13d;
  color: #000;
}
html[dir=rtl] .homepage .hero-inner > .explore:is(:hover,:focus-visible) {
  color: #fff;
}
/* A keyboard user can use either control immediately, including during its entrance. */
.homepage .hero-entrance-active .hero-inner > :is(.explore,.watch-video):focus-visible {
  animation: none;
}
@media (prefers-reduced-motion: reduce) {
  html .homepage .hero-entrance-active .hero-inner > :is(h1,p,.explore,.watch-video) {
    animation: none;
  }
}

/* English source: power4.inOut, 1.75 seconds, 4ms per non-space character. */
@keyframes hero-character-arrival {
  0% { opacity: 0.00000000; transform: rotateX(-90.00000000deg); transform-origin: 50% 50% -50.00000000px; }
  1% { opacity: 0.00000000; transform: rotateX(-89.99999986deg); transform-origin: 50% 50% -49.99999992px; }
  2% { opacity: 0.00000005; transform: rotateX(-89.99999539deg); transform-origin: 50% 50% -49.99999744px; }
  3% { opacity: 0.00000039; transform: rotateX(-89.99996501deg); transform-origin: 50% 50% -49.99998056px; }
  4% { opacity: 0.00000164; transform: rotateX(-89.99985254deg); transform-origin: 50% 50% -49.99991808px; }
  5% { opacity: 0.00000500; transform: rotateX(-89.99955000deg); transform-origin: 50% 50% -49.99975000px; }
  6% { opacity: 0.00001244; transform: rotateX(-89.99888026deg); transform-origin: 50% 50% -49.99937792px; }
  7% { opacity: 0.00002689; transform: rotateX(-89.99757979deg); transform-origin: 50% 50% -49.99865544px; }
  8% { opacity: 0.00005243; transform: rotateX(-89.99528141deg); transform-origin: 50% 50% -49.99737856px; }
  9% { opacity: 0.00009448; transform: rotateX(-89.99149694deg); transform-origin: 50% 50% -49.99527608px; }
  10% { opacity: 0.00016000; transform: rotateX(-89.98560000deg); transform-origin: 50% 50% -49.99200000px; }
  11% { opacity: 0.00025768; transform: rotateX(-89.97680866deg); transform-origin: 50% 50% -49.98711592px; }
  12% { opacity: 0.00039813; transform: rotateX(-89.96416819deg); transform-origin: 50% 50% -49.98009344px; }
  13% { opacity: 0.00059407; transform: rotateX(-89.94653381deg); transform-origin: 50% 50% -49.97029656px; }
  14% { opacity: 0.00086052; transform: rotateX(-89.92255334deg); transform-origin: 50% 50% -49.95697408px; }
  15% { opacity: 0.00121500; transform: rotateX(-89.89065000deg); transform-origin: 50% 50% -49.93925000px; }
  16% { opacity: 0.00167772; transform: rotateX(-89.84900506deg); transform-origin: 50% 50% -49.91611392px; }
  17% { opacity: 0.00227177; transform: rotateX(-89.79554059deg); transform-origin: 50% 50% -49.88641144px; }
  18% { opacity: 0.00302331; transform: rotateX(-89.72790221deg); transform-origin: 50% 50% -49.84883456px; }
  19% { opacity: 0.00396176; transform: rotateX(-89.64344174deg); transform-origin: 50% 50% -49.80191208px; }
  20% { opacity: 0.00512000; transform: rotateX(-89.53920000deg); transform-origin: 50% 50% -49.74400000px; }
  21% { opacity: 0.00653456; transform: rotateX(-89.41188946deg); transform-origin: 50% 50% -49.67327192px; }
  22% { opacity: 0.00824581; transform: rotateX(-89.25787699deg); transform-origin: 50% 50% -49.58770944px; }
  23% { opacity: 0.01029815; transform: rotateX(-89.07316661deg); transform-origin: 50% 50% -49.48509256px; }
  24% { opacity: 0.01274020; transform: rotateX(-88.85338214deg); transform-origin: 50% 50% -49.36299008px; }
  25% { opacity: 0.01562500; transform: rotateX(-88.59375000deg); transform-origin: 50% 50% -49.21875000px; }
  26% { opacity: 0.01901020; transform: rotateX(-88.28908186deg); transform-origin: 50% 50% -49.04948992px; }
  27% { opacity: 0.02295825; transform: rotateX(-87.93375739deg); transform-origin: 50% 50% -48.85208744px; }
  28% { opacity: 0.02753659; transform: rotateX(-87.52170701deg); transform-origin: 50% 50% -48.62317056px; }
  29% { opacity: 0.03281784; transform: rotateX(-87.04639454deg); transform-origin: 50% 50% -48.35910808px; }
  30% { opacity: 0.03888000; transform: rotateX(-86.50080000deg); transform-origin: 50% 50% -48.05600000px; }
  31% { opacity: 0.04580664; transform: rotateX(-85.87740226deg); transform-origin: 50% 50% -47.70966792px; }
  32% { opacity: 0.05368709; transform: rotateX(-85.16816179deg); transform-origin: 50% 50% -47.31564544px; }
  33% { opacity: 0.06261663; transform: rotateX(-84.36450341deg); transform-origin: 50% 50% -46.86916856px; }
  34% { opacity: 0.07269668; transform: rotateX(-83.45729894deg); transform-origin: 50% 50% -46.36516608px; }
  35% { opacity: 0.08403500; transform: rotateX(-82.43685000deg); transform-origin: 50% 50% -45.79825000px; }
  36% { opacity: 0.09674588; transform: rotateX(-81.29287066deg); transform-origin: 50% 50% -45.16270592px; }
  37% { opacity: 0.11095033; transform: rotateX(-80.01447019deg); transform-origin: 50% 50% -44.45248344px; }
  38% { opacity: 0.12677627; transform: rotateX(-78.59013581deg); transform-origin: 50% 50% -43.66118656px; }
  39% { opacity: 0.14435872; transform: rotateX(-77.00771534deg); transform-origin: 50% 50% -42.78206408px; }
  40% { opacity: 0.16384000; transform: rotateX(-75.25440000deg); transform-origin: 50% 50% -41.80800000px; }
  41% { opacity: 0.18536992; transform: rotateX(-73.31670706deg); transform-origin: 50% 50% -40.73150392px; }
  42% { opacity: 0.20910597; transform: rotateX(-71.18046259deg); transform-origin: 50% 50% -39.54470144px; }
  43% { opacity: 0.23521351; transform: rotateX(-68.83078421deg); transform-origin: 50% 50% -38.23932456px; }
  44% { opacity: 0.26386596; transform: rotateX(-66.25206374deg); transform-origin: 50% 50% -36.80670208px; }
  45% { opacity: 0.29524500; transform: rotateX(-63.42795000deg); transform-origin: 50% 50% -35.23775000px; }
  46% { opacity: 0.32954076; transform: rotateX(-60.34133146deg); transform-origin: 50% 50% -33.52296192px; }
  47% { opacity: 0.36695201; transform: rotateX(-56.97431899deg); transform-origin: 50% 50% -31.65239944px; }
  48% { opacity: 0.40768635; transform: rotateX(-53.30822861deg); transform-origin: 50% 50% -29.61568256px; }
  49% { opacity: 0.45196040; transform: rotateX(-49.32356414deg); transform-origin: 50% 50% -27.40198008px; }
  50% { opacity: 0.50000000; transform: rotateX(-45.00000000deg); transform-origin: 50% 50% -25.00000000px; }
  51% { opacity: 0.54803960; transform: rotateX(-40.67643586deg); transform-origin: 50% 50% -22.59801992px; }
  52% { opacity: 0.59231365; transform: rotateX(-36.69177139deg); transform-origin: 50% 50% -20.38431744px; }
  53% { opacity: 0.63304799; transform: rotateX(-33.02568101deg); transform-origin: 50% 50% -18.34760056px; }
  54% { opacity: 0.67045924; transform: rotateX(-29.65866854deg); transform-origin: 50% 50% -16.47703808px; }
  55% { opacity: 0.70475500; transform: rotateX(-26.57205000deg); transform-origin: 50% 50% -14.76225000px; }
  56% { opacity: 0.73613404; transform: rotateX(-23.74793626deg); transform-origin: 50% 50% -13.19329792px; }
  57% { opacity: 0.76478649; transform: rotateX(-21.16921579deg); transform-origin: 50% 50% -11.76067544px; }
  58% { opacity: 0.79089403; transform: rotateX(-18.81953741deg); transform-origin: 50% 50% -10.45529856px; }
  59% { opacity: 0.81463008; transform: rotateX(-16.68329294deg); transform-origin: 50% 50% -9.26849608px; }
  60% { opacity: 0.83616000; transform: rotateX(-14.74560000deg); transform-origin: 50% 50% -8.19200000px; }
  61% { opacity: 0.85564128; transform: rotateX(-12.99228466deg); transform-origin: 50% 50% -7.21793592px; }
  62% { opacity: 0.87322373; transform: rotateX(-11.40986419deg); transform-origin: 50% 50% -6.33881344px; }
  63% { opacity: 0.88904967; transform: rotateX(-9.98552981deg); transform-origin: 50% 50% -5.54751656px; }
  64% { opacity: 0.90325412; transform: rotateX(-8.70712934deg); transform-origin: 50% 50% -4.83729408px; }
  65% { opacity: 0.91596500; transform: rotateX(-7.56315000deg); transform-origin: 50% 50% -4.20175000px; }
  66% { opacity: 0.92730332; transform: rotateX(-6.54270106deg); transform-origin: 50% 50% -3.63483392px; }
  67% { opacity: 0.93738337; transform: rotateX(-5.63549659deg); transform-origin: 50% 50% -3.13083144px; }
  68% { opacity: 0.94631291; transform: rotateX(-4.83183821deg); transform-origin: 50% 50% -2.68435456px; }
  69% { opacity: 0.95419336; transform: rotateX(-4.12259774deg); transform-origin: 50% 50% -2.29033208px; }
  70% { opacity: 0.96112000; transform: rotateX(-3.49920000deg); transform-origin: 50% 50% -1.94400000px; }
  71% { opacity: 0.96718216; transform: rotateX(-2.95360546deg); transform-origin: 50% 50% -1.64089192px; }
  72% { opacity: 0.97246341; transform: rotateX(-2.47829299deg); transform-origin: 50% 50% -1.37682944px; }
  73% { opacity: 0.97704175; transform: rotateX(-2.06624261deg); transform-origin: 50% 50% -1.14791256px; }
  74% { opacity: 0.98098980; transform: rotateX(-1.71091814deg); transform-origin: 50% 50% -0.95051008px; }
  75% { opacity: 0.98437500; transform: rotateX(-1.40625000deg); transform-origin: 50% 50% -0.78125000px; }
  76% { opacity: 0.98725980; transform: rotateX(-1.14661786deg); transform-origin: 50% 50% -0.63700992px; }
  77% { opacity: 0.98970185; transform: rotateX(-0.92683339deg); transform-origin: 50% 50% -0.51490744px; }
  78% { opacity: 0.99175419; transform: rotateX(-0.74212301deg); transform-origin: 50% 50% -0.41229056px; }
  79% { opacity: 0.99346544; transform: rotateX(-0.58811054deg); transform-origin: 50% 50% -0.32672808px; }
  80% { opacity: 0.99488000; transform: rotateX(-0.46080000deg); transform-origin: 50% 50% -0.25600000px; }
  81% { opacity: 0.99603824; transform: rotateX(-0.35655826deg); transform-origin: 50% 50% -0.19808792px; }
  82% { opacity: 0.99697669; transform: rotateX(-0.27209779deg); transform-origin: 50% 50% -0.15116544px; }
  83% { opacity: 0.99772823; transform: rotateX(-0.20445941deg); transform-origin: 50% 50% -0.11358856px; }
  84% { opacity: 0.99832228; transform: rotateX(-0.15099494deg); transform-origin: 50% 50% -0.08388608px; }
  85% { opacity: 0.99878500; transform: rotateX(-0.10935000deg); transform-origin: 50% 50% -0.06075000px; }
  86% { opacity: 0.99913948; transform: rotateX(-0.07744666deg); transform-origin: 50% 50% -0.04302592px; }
  87% { opacity: 0.99940593; transform: rotateX(-0.05346619deg); transform-origin: 50% 50% -0.02970344px; }
  88% { opacity: 0.99960187; transform: rotateX(-0.03583181deg); transform-origin: 50% 50% -0.01990656px; }
  89% { opacity: 0.99974232; transform: rotateX(-0.02319134deg); transform-origin: 50% 50% -0.01288408px; }
  90% { opacity: 0.99984000; transform: rotateX(-0.01440000deg); transform-origin: 50% 50% -0.00800000px; }
  91% { opacity: 0.99990552; transform: rotateX(-0.00850306deg); transform-origin: 50% 50% -0.00472392px; }
  92% { opacity: 0.99994757; transform: rotateX(-0.00471859deg); transform-origin: 50% 50% -0.00262144px; }
  93% { opacity: 0.99997311; transform: rotateX(-0.00242021deg); transform-origin: 50% 50% -0.00134456px; }
  94% { opacity: 0.99998756; transform: rotateX(-0.00111974deg); transform-origin: 50% 50% -0.00062208px; }
  95% { opacity: 0.99999500; transform: rotateX(-0.00045000deg); transform-origin: 50% 50% -0.00025000px; }
  96% { opacity: 0.99999836; transform: rotateX(-0.00014746deg); transform-origin: 50% 50% -0.00008192px; }
  97% { opacity: 0.99999961; transform: rotateX(-0.00003499deg); transform-origin: 50% 50% -0.00001944px; }
  98% { opacity: 0.99999995; transform: rotateX(-0.00000461deg); transform-origin: 50% 50% -0.00000256px; }
  99% { opacity: 1.00000000; transform: rotateX(-0.00000014deg); transform-origin: 50% 50% -0.00000008px; }
  100% { opacity: 1.00000000; transform: rotateX(-0.00000000deg); transform-origin: 50% 50% -0.00000000px; }
}
.homepage .hero-heading-visual { display: contents; }
.homepage .hero-heading-word { display: inline-block; white-space: nowrap; }
.homepage .hero-heading-character { display: inline-block; }
.homepage .hero-entrance-active .hero-inner > h1 { perspective: 600px; }
.homepage .hero-entrance-active .hero-heading-character {
  animation: hero-character-arrival 1.75s linear var(--hero-character-delay) backwards;
}
@media (prefers-reduced-motion: reduce) {
  html .homepage .hero-entrance-active .hero-heading-character { animation: none; }
}

/* Source rs-slide data-in="o:0;": 1000ms power2.inOut slide entrance. */
@keyframes hero-slide-arrival {
  0% { opacity: 0.00000000; }
  1% { opacity: 0.00000400; }
  2% { opacity: 0.00003200; }
  3% { opacity: 0.00010800; }
  4% { opacity: 0.00025600; }
  5% { opacity: 0.00050000; }
  6% { opacity: 0.00086400; }
  7% { opacity: 0.00137200; }
  8% { opacity: 0.00204800; }
  9% { opacity: 0.00291600; }
  10% { opacity: 0.00400000; }
  11% { opacity: 0.00532400; }
  12% { opacity: 0.00691200; }
  13% { opacity: 0.00878800; }
  14% { opacity: 0.01097600; }
  15% { opacity: 0.01350000; }
  16% { opacity: 0.01638400; }
  17% { opacity: 0.01965200; }
  18% { opacity: 0.02332800; }
  19% { opacity: 0.02743600; }
  20% { opacity: 0.03200000; }
  21% { opacity: 0.03704400; }
  22% { opacity: 0.04259200; }
  23% { opacity: 0.04866800; }
  24% { opacity: 0.05529600; }
  25% { opacity: 0.06250000; }
  26% { opacity: 0.07030400; }
  27% { opacity: 0.07873200; }
  28% { opacity: 0.08780800; }
  29% { opacity: 0.09755600; }
  30% { opacity: 0.10800000; }
  31% { opacity: 0.11916400; }
  32% { opacity: 0.13107200; }
  33% { opacity: 0.14374800; }
  34% { opacity: 0.15721600; }
  35% { opacity: 0.17150000; }
  36% { opacity: 0.18662400; }
  37% { opacity: 0.20261200; }
  38% { opacity: 0.21948800; }
  39% { opacity: 0.23727600; }
  40% { opacity: 0.25600000; }
  41% { opacity: 0.27568400; }
  42% { opacity: 0.29635200; }
  43% { opacity: 0.31802800; }
  44% { opacity: 0.34073600; }
  45% { opacity: 0.36450000; }
  46% { opacity: 0.38934400; }
  47% { opacity: 0.41529200; }
  48% { opacity: 0.44236800; }
  49% { opacity: 0.47059600; }
  50% { opacity: 0.50000000; }
  51% { opacity: 0.52940400; }
  52% { opacity: 0.55763200; }
  53% { opacity: 0.58470800; }
  54% { opacity: 0.61065600; }
  55% { opacity: 0.63550000; }
  56% { opacity: 0.65926400; }
  57% { opacity: 0.68197200; }
  58% { opacity: 0.70364800; }
  59% { opacity: 0.72431600; }
  60% { opacity: 0.74400000; }
  61% { opacity: 0.76272400; }
  62% { opacity: 0.78051200; }
  63% { opacity: 0.79738800; }
  64% { opacity: 0.81337600; }
  65% { opacity: 0.82850000; }
  66% { opacity: 0.84278400; }
  67% { opacity: 0.85625200; }
  68% { opacity: 0.86892800; }
  69% { opacity: 0.88083600; }
  70% { opacity: 0.89200000; }
  71% { opacity: 0.90244400; }
  72% { opacity: 0.91219200; }
  73% { opacity: 0.92126800; }
  74% { opacity: 0.92969600; }
  75% { opacity: 0.93750000; }
  76% { opacity: 0.94470400; }
  77% { opacity: 0.95133200; }
  78% { opacity: 0.95740800; }
  79% { opacity: 0.96295600; }
  80% { opacity: 0.96800000; }
  81% { opacity: 0.97256400; }
  82% { opacity: 0.97667200; }
  83% { opacity: 0.98034800; }
  84% { opacity: 0.98361600; }
  85% { opacity: 0.98650000; }
  86% { opacity: 0.98902400; }
  87% { opacity: 0.99121200; }
  88% { opacity: 0.99308800; }
  89% { opacity: 0.99467600; }
  90% { opacity: 0.99600000; }
  91% { opacity: 0.99708400; }
  92% { opacity: 0.99795200; }
  93% { opacity: 0.99862800; }
  94% { opacity: 0.99913600; }
  95% { opacity: 0.99950000; }
  96% { opacity: 0.99974400; }
  97% { opacity: 0.99989200; }
  98% { opacity: 0.99996800; }
  99% { opacity: 0.99999600; }
  100% { opacity: 1.00000000; }
}
.homepage .hero-entrance-active { animation: hero-slide-arrival 1s linear; }
@media (prefers-reduced-motion: reduce) {
  html .homepage .hero-entrance-active { animation: none; }
}
