/* One approved hero direction. Classes are isolated from the older .hero styles. */
[data-landing-hero] {
  --landing-hero-ink: #101a16;
  --landing-hero-muted: #56625c;
  --landing-hero-pill: #e7ebff;
  --landing-hero-avatar-ink: #2a3d75;
  --landing-hero-avatar-accent: #5269da;
  container-type: inline-size;
  color-scheme: light;
  background: #fff;
  color: var(--landing-hero-ink);
  text-align: center;
  font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif;
}
[data-landing-hero] .landing-hero-heading {
  display: block;
  width: max-content;
  max-width: none;
  margin: 0 auto;
  padding: 0;
  color: var(--landing-hero-ink);
  font-family: inherit;
  font-size: clamp(30px, 8.6cqw, 112px);
  font-weight: 760;
  line-height: 1.12;
  letter-spacing: -.035em;
  text-wrap: initial;
}
[data-landing-hero] .landing-hero-accessible {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
[data-landing-hero]:not([data-hero-ready="true"]) .landing-hero-heading {
  width: auto;
  max-width: 100%;
  text-wrap: balance;
  overflow-wrap: anywhere;
}
[data-landing-hero] .landing-hero-visual { display: block; width: max-content; }
[data-landing-hero] .landing-hero-line { display: block; white-space: nowrap; }
[data-landing-hero] .landing-hero-second { display: flex; align-items: center; justify-content: center; gap: .18em; }
[data-landing-hero] .landing-hero-static { display: inline-block; line-height: 1.12; }
[data-landing-hero] .landing-hero-phrase { display: inline-flex; align-items: center; gap: .035em; white-space: nowrap; }
[data-landing-hero] .landing-hero-punctuation { display: inline-block; line-height: 1.12; }
[data-landing-hero] .landing-hero-pill {
  display: inline-flex;
  position: relative;
  isolation: isolate;
  align-items: center;
  justify-content: flex-start;
  gap: .16em;
  vertical-align: baseline;
  height: 1.12em;
  padding: .16em .40em .16em .26em;
  margin: .045em 0;
  box-sizing: content-box;
  overflow: visible;
  color: var(--landing-hero-ink);
  color: color-mix(in srgb, var(--landing-hero-avatar-ink) 28%, var(--landing-hero-ink));
}
[data-landing-hero] .landing-hero-pill::before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  top: 0;
  height: 100%;
  width: var(--landing-hero-bg-width, 100%);
  transform: translateX(-50%);
  border-radius: 1em;
  background: var(--landing-hero-pill);
  transition: width var(--landing-hero-bg-duration, 0ms) cubic-bezier(.22, .7, .25, 1), background-color 320ms ease;
}
[data-landing-hero] .landing-hero-word-slot { display: inline-block; position: relative; width: max-content; height: auto; overflow: visible; text-align: left; letter-spacing: -.015em; flex: 0 0 auto; }
[data-landing-hero] .landing-hero-word { display: block; position: relative; width: max-content; white-space: nowrap; line-height: 1.12; font-weight: 520; }
[data-landing-hero].landing-hero-generating .landing-hero-word::after { content: ""; position: absolute; right: -.105em; top: .2em; width: max(1.5px, .025em); height: .67em; border-radius: 2px; background: var(--landing-hero-avatar-accent); opacity: .7; animation: landing-hero-caret .85s steps(1, end) infinite; }
[data-landing-hero] .landing-hero-avatar { display: inline-block; width: 1.03em; height: 1.03em; flex: 0 0 auto; position: relative; transform-origin: 50% 65%; animation: landing-hero-look 6s ease-in-out infinite; }
[data-landing-hero] .landing-hero-avatar > svg { display: block; width: 100%; height: 100%; overflow: visible; }
[data-landing-hero] .landing-hero-subtitle { color: var(--landing-hero-muted); font-size: clamp(14px, 1.9cqw, 22px); line-height: 1.65; margin: 28px auto 0; max-width: 900px; font-weight: 400; }
[data-landing-hero][data-hero-locale="en"] .landing-hero-heading { font-size: clamp(26px, 6.55cqw, 104px); }
[data-landing-hero][data-hero-locale="ja"] .landing-hero-heading { font-size: clamp(26px, 7cqw, 100px); }
[data-landing-hero][data-hero-locale="ko"] { font-family: -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans KR", sans-serif; word-break: keep-all; }
[data-landing-hero][data-hero-locale="ko"] .landing-hero-heading { font-size: clamp(26px, 6.3cqw, 96px); }
[data-landing-hero].landing-hero-suspended *, [data-landing-hero].landing-hero-suspended *::after,
[data-landing-hero].landing-hero-reduced *, [data-landing-hero].landing-hero-reduced *::after { animation-play-state: paused !important; }
[data-landing-hero].landing-hero-reduced .landing-hero-word::after { display: none; }
@keyframes landing-hero-caret { 0%, 60%, 100% { opacity: .7; } 61%, 99% { opacity: .15; } }
@keyframes landing-hero-look { 0%, 37%, 100% { transform: translateY(0) rotate(-3deg); } 47%, 65% { transform: translateY(-2px) rotate(4deg); } 80% { transform: translateY(0) rotate(-1deg); } }
@container (max-width: 560px) {
  [data-landing-hero] .landing-hero-subtitle { font-size: 14px; max-width: 390px; margin-top: 23px; }
  [data-landing-hero][data-hero-locale="en"] .landing-hero-second,
  [data-landing-hero][data-hero-locale="ja"] .landing-hero-second,
  [data-landing-hero][data-hero-locale="ko"] .landing-hero-second { flex-direction: column; align-items: center; gap: .06em; }
  [data-landing-hero][data-hero-locale="en"] .landing-hero-heading { font-size: clamp(28px, 7.5cqw, 42px); }
  [data-landing-hero][data-hero-locale="ja"] .landing-hero-heading { font-size: clamp(26px, 7.3cqw, 40px); }
  [data-landing-hero][data-hero-locale="ko"] .landing-hero-heading { font-size: clamp(26px, 7.4cqw, 40px); }
}
@media (prefers-reduced-motion: reduce) {
  [data-landing-hero] *, [data-landing-hero] *::before, [data-landing-hero] *::after { animation: none !important; transition: none !important; }
}
