/* Generated by website/generate-lettering-css.py; crop bounds preserve the original image alpha. */
:root:lang(zh-Hans) .home-page { --lettering-image: url("/assets/lettering/home-zh-Hans-20261029.png"); }
:root:lang(zh-Hans) [data-lettering="hero"] { --lettering-image: url("/assets/lettering/home-slogan-zh-Hans-20261029.png"); }
:root:lang(zh-Hans) [data-lettering="hero"] { --lettering-ratio: 3.333333; --lettering-size: 109.101124% 151.498127%; --lettering-position: 58.024691% 69.818182%; }
:root:lang(zh-Hans) [data-lettering="story0"] { --lettering-ratio: 3.12766; --lettering-size: 161.22449% 882.446809%; --lettering-position: 51.944444% 17.811013%; }
:root:lang(zh-Hans) [data-lettering="story1"] { --lettering-ratio: 2.975369; --lettering-size: 156.953642% 817.241379%; --lettering-position: 52.906977% 35.302198%; }
:root:lang(zh-Hans) [data-lettering="story2"] { --lettering-ratio: 3.111111; --lettering-size: 153.896104% 837.878788%; --lettering-position: 53.915663% 53.251198%; }
:root:lang(zh-Hans) [data-lettering="memory"] { --lettering-ratio: 2.891626; --lettering-size: 161.499148% 817.241379%; --lettering-position: 52.908587% 71.497253%; }
:root:lang(zh-Hans) [data-lettering="maker"] { --lettering-ratio: 2.836842; --lettering-size: 175.881262% 873.157895%; --lettering-position: 51.589242% 88.427502%; }
:root:lang(zh-Hans) [data-lettering="closing"] { --lettering-image: url("/assets/lettering/home-closing-zh-Hans-20261029.png"); }
:root:lang(zh-Hans) [data-lettering="closing"] { --lettering-ratio: 8.084677; --lettering-size: 108.329177% 291.935484%; --lettering-position: 50.299401% 49.789916%; }
:root:lang(zh-Hant) .home-page { --lettering-image: url("/assets/lettering/home-zh-Hant-20261029.png"); }
:root:lang(zh-Hant) [data-lettering="hero"] { --lettering-image: url("/assets/lettering/home-slogan-zh-Hant-20261029.png"); }
:root:lang(zh-Hant) [data-lettering="hero"] { --lettering-ratio: 3.581633; --lettering-size: 110.655271% 165.102041%; --lettering-position: 56.149733% 62.695925%; }
:root:lang(zh-Hant) [data-lettering="story0"] { --lettering-ratio: 3.142857; --lettering-size: 153.896104% 846.428571%; --lettering-position: 52.710843% 17.634997%; }
:root:lang(zh-Hant) [data-lettering="story1"] { --lettering-ratio: 2.985849; --lettering-size: 149.763033% 782.54717%; --lettering-position: 53.650794% 34.899793%; }
:root:lang(zh-Hant) [data-lettering="story2"] { --lettering-ratio: 2.938679; --lettering-size: 152.166934% 782.54717%; --lettering-position: 53.230769% 53.282654%; }
:root:lang(zh-Hant) [data-lettering="memory"] { --lettering-ratio: 3.009662; --lettering-size: 152.166934% 801.449275%; --lettering-position: 50.461538% 71.625344%; }
:root:lang(zh-Hant) [data-lettering="maker"] { --lettering-ratio: 2.826531; --lettering-size: 171.119134% 846.428571%; --lettering-position: 50.507614% 88.85851%; }
:root:lang(zh-Hant) [data-lettering="closing"] { --lettering-image: url("/assets/lettering/home-closing-zh-Hant-20261029.png"); }
:root:lang(zh-Hant) [data-lettering="closing"] { --lettering-ratio: 7.390845; --lettering-size: 103.477847% 254.929577%; --lettering-position: 58.90411% 48.181818%; }
:root:lang(en) .home-page { --lettering-image: url("/assets/lettering/home-en-20261029.png"); }
:root:lang(en) [data-lettering="hero"] { --lettering-image: url("/assets/lettering/home-slogan-en-20261029.png"); }
:root:lang(en) [data-lettering="hero"] { --lettering-ratio: 3.679012; --lettering-size: 108.612975% 166.460905%; --lettering-position: 51.298701% 62.5387%; }
:root:lang(en) [data-lettering="story0"] { --lettering-ratio: 2.955; --lettering-size: 160.406091% 829.5%; --lettering-position: 56.582633% 18.711446%; }
:root:lang(en) [data-lettering="story1"] { --lettering-ratio: 2.985714; --lettering-size: 151.196172% 790.0%; --lettering-position: 57.632399% 35.403727%; }
:root:lang(en) [data-lettering="story2"] { --lettering-ratio: 3.17734; --lettering-size: 146.976744% 817.241379%; --lettering-position: 58.745875% 53.021978%; }
:root:lang(en) [data-lettering="memory"] { --lettering-ratio: 2.907216; --lettering-size: 168.085106% 855.154639%; --lettering-position: 55.46875% 70.375427%; }
:root:lang(en) [data-lettering="maker"] { --lettering-ratio: 2.777202; --lettering-size: 176.865672% 859.585492%; --lettering-position: 57.76699% 87.44884%; }
:root:lang(en) [data-lettering="closing"] { --lettering-image: url("/assets/lettering/home-closing-en-20261029.png"); }
:root:lang(en) [data-lettering="closing"] { --lettering-ratio: 9.785366; --lettering-size: 108.275174% 353.170732%; --lettering-position: 54.819277% 54.527938%; }

.lettering-ready [data-lettering] { position: relative; }
.lettering-ready [data-lettering] > .lettering-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.lettering-ready [data-lettering]::before {
  content: ''; display: block; width: min(100%, 440px); aspect-ratio: var(--lettering-ratio);
  background-color: currentColor;
  -webkit-mask-image: var(--lettering-image); mask-image: var(--lettering-image);
  -webkit-mask-size: var(--lettering-size); mask-size: var(--lettering-size);
  -webkit-mask-position: var(--lettering-position); mask-position: var(--lettering-position);
  -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
}
.lettering-ready [data-lettering="hero"]::before { width: min(100%, 440px); margin-inline: auto; }
.lettering-ready [data-lettering="closing"]::before { width: min(100%, 530px); margin-inline: auto; }
.lettering-ready [data-lettering="maker"]::before { width: min(100%, 390px); }
@media (max-width: 600px) {
  .lettering-ready [data-lettering]::before { width: min(100%, 260px); margin-inline: auto; }
  .lettering-ready [data-lettering="hero"]::before { width: min(100%, 290px); }
  .lettering-ready [data-lettering="closing"]::before { width: min(100%, 330px); }
  .lettering-ready [data-lettering="maker"]::before { width: min(100%, 280px); margin-inline: 0; }
}
@media (forced-colors: active), print {
  .lettering-ready [data-lettering] > .lettering-text { position: static; width: auto; height: auto; overflow: visible; clip-path: none; white-space: normal; }
  .lettering-ready [data-lettering]::before { display: none; }
}
