  html[data-theme="light"] .faces-logo-word::before { -webkit-text-stroke-color:rgb(83 99 118 / .55); }
  html[data-theme="light"] .faces-logo-word::after { -webkit-text-stroke-color:rgb(83 99 118 / .3); }
  /* Exact existing Faces lettering; outlines drift within the floating lockup. */
  #faces-title .faces-logo-word { position:relative; display:inline-block; isolation:isolate; font:inherit; letter-spacing:inherit; }
  .faces-logo-word::before,.faces-logo-word::after {
    content:attr(data-outline); position:absolute; inset:0; z-index:-1; pointer-events:none;
    font:inherit; letter-spacing:inherit; color:transparent; -webkit-text-fill-color:transparent;
    -webkit-text-stroke:1px rgb(196 222 255 / .68); transform-origin:center;
    animation:faces-logo-outline-near 17s ease-in-out -3s infinite;
  }
  .faces-logo-word::after {
    -webkit-text-stroke:1px rgb(243 242 239 / .38);
    animation:faces-logo-outline-far 23s ease-in-out -11s infinite;
  }
  @keyframes faces-logo-outline-near {
    0%,100% { transform:translate(-4px,2px) scale(1.018); }
    28% { transform:translate(5px,-3px) scale(1.018); }
    53% { transform:translate(2px,4px) scale(1.018); }
    78% { transform:translate(-5px,-2px) scale(1.018); }
  }
  @keyframes faces-logo-outline-far {
    0%,100% { transform:translate(5px,-2px) scale(1.035); }
    31% { transform:translate(-3px,4px) scale(1.035); }
    62% { transform:translate(-6px,-3px) scale(1.035); }
    83% { transform:translate(3px,3px) scale(1.035); }
  }
  html[data-motion="reduce"] .faces-drift-cta .cta-floating-frame { animation:none !important; }
  html[data-motion="reduce"] .faces-drift-cta .cta-floating-frame--back { transform:translate(6px,6px); }
  html[data-motion="reduce"] .faces-drift-cta > i { transition:none !important; transform:none !important; }
  html[data-motion="reduce"] .faces-drift-cta { transition:none !important; transform:none !important; }
  html[data-motion="reduce"] .faces-logo-word::before,
  html[data-motion="reduce"] .faces-logo-word::after,
  html[data-motion="reduce"] .faces-drift-cta::before { animation:none !important; transition:none !important; }
  @media(prefers-reduced-motion:reduce) {
    .faces-shell .faces-primary.faces-drift-cta .cta-floating-frame { animation:none !important; }
    .faces-shell .faces-primary.faces-drift-cta .cta-floating-frame--back { transform:translate(6px,6px); }
    .faces-shell .faces-primary.faces-drift-cta > i { transition:none !important; transform:none !important; }
    .faces-shell .faces-primary.faces-drift-cta { transition:none !important; transform:none !important; }
    .faces-logo-word::before,.faces-logo-word::after,.faces-shell .faces-primary.faces-drift-cta::before { animation:none !important; transition:none !important; }
  }

/* The existing homepage, renderer, header and CTA sizes remain authoritative. */
body[data-faces-state="landing"] .faces-hero__line {
  animation:faces-hero-float 28s ease-in-out infinite;
}
body[data-faces-state="landing"] #faces-title [data-title-visual] > * {
  --word-float-x:clamp(4px,.04em,8px);
  --word-float-y:clamp(9px,.1em,18px);
  --word-float-direction:1;
  display:inline-block;
  animation:faces-word-float 18s ease-in-out -3s infinite;
}
body[data-faces-state="landing"] #faces-title [data-title-visual] > i {
  --word-float-direction:-.7;
  animation-duration:23s;
  animation-delay:-11s;
}
body[data-faces-state="landing"] #faces-title .faces-logo-word {
  --word-float-direction:-1;
  animation-duration:21s;
  animation-delay:-7s;
}
@keyframes faces-word-float {
  0%,100% { translate:calc(var(--word-float-x) * -.6 * var(--word-float-direction)) calc(var(--word-float-y) * .5 * var(--word-float-direction)); }
  27% { translate:calc(var(--word-float-x) * var(--word-float-direction)) calc(var(--word-float-y) * -.7 * var(--word-float-direction)); }
  56% { translate:calc(var(--word-float-x) * .2 * var(--word-float-direction)) calc(var(--word-float-y) * .8 * var(--word-float-direction)); }
  81% { translate:calc(var(--word-float-x) * -.8 * var(--word-float-direction)) calc(var(--word-float-y) * -.2 * var(--word-float-direction)); }
}
@keyframes faces-hero-float {
  0%,100% { translate:0 0; }
  28% { translate:6px -5px; }
  57% { translate:-4px -8px; }
  79% { translate:-6px 4px; }
}
html[data-motion="reduce"] .faces-hero__line,
html[data-motion="reduce"] #faces-title [data-title-visual] > * { animation:none !important; translate:none; }
@media(prefers-reduced-motion:reduce) {
  body[data-faces-state="landing"] .faces-hero__line,
  body[data-faces-state="landing"] #faces-title [data-title-visual] > * { animation:none !important; translate:none; }
}
body[data-faces-state="landing"] [data-landing-content] {
  position: absolute;
  left: 50%;
  top: 50%;
  width: min(980px, calc(100% - 48px));
  transform: translate(-50%, -50%);
  transition: left 800ms cubic-bezier(.2,.8,.2,1), top 800ms cubic-bezier(.2,.8,.2,1), transform 800ms cubic-bezier(.2,.8,.2,1), width 800ms cubic-bezier(.2,.8,.2,1);
}
body:is([data-home-demo="active"],[data-home-demo="leaving"]) [data-landing-content] {
  left: calc(83.3333% - var(--edge) / 2);
  width: calc(33.3333% - var(--edge));
  transform: translate(-50%, -50%);
}
body[data-faces-state="landing"] .faces-lockup,
body[data-faces-state="landing"] .faces-hero__line { transition: font-size 800ms cubic-bezier(.2,.8,.2,1), margin-top 800ms cubic-bezier(.2,.8,.2,1); }
body:is([data-home-demo="active"],[data-home-demo="leaving"]) main .faces-lockup {
  font-size: clamp(34px, 4.25vw, 74px) !important;
}
body:is([data-home-demo="active"],[data-home-demo="leaving"]) .faces-hero__line {
  font-size: clamp(16px, 1.35vw, 20px);
  margin-top: 24px;
}
body[data-faces-state="landing"] [data-start-onboarding] {
  width: 300px;
  max-width: calc(100% - 14px);
  min-width: 0;
  transition: width 800ms cubic-bezier(.2,.8,.2,1), min-height 800ms cubic-bezier(.2,.8,.2,1), margin-top 800ms cubic-bezier(.2,.8,.2,1), padding 800ms cubic-bezier(.2,.8,.2,1), color var(--motion-fast), background var(--motion-fast);
}
body:is([data-home-demo="active"],[data-home-demo="leaving"]) [data-start-onboarding] {
  width: 220px;
  min-height: 48px;
  margin-top: 28px;
  padding: 14px 22px;
  gap: 20px;
}
body:is([data-home-demo="active"],[data-home-demo="leaving"]) [data-start-onboarding] > span:not([aria-hidden]) { white-space:nowrap; }
body:is([data-home-demo="active"],[data-home-demo="leaving"]) .faces-primary.faces-drift-cta > .faces-hero__cta-copy { font-size:13px; }
body[data-home-demo] .faces-footer__hint { visibility: hidden; }
.faces-home-demo {
  position: fixed;
  z-index: 20;
  inset: 0;
  pointer-events: none;
  text-align: center;
  color: var(--text-primary);
}
.faces-home-demo__controls {
  position: absolute;
  left: 33.3333%;
  bottom: max(32px, env(safe-area-inset-bottom));
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 16px;
  color: var(--faces-muted);
  font: 500 10px/1.5 var(--font-utility);
}
.faces-home-demo__controls[data-ready="false"],
body[data-home-demo="leaving"] .faces-home-demo { visibility: hidden; }
.faces-home-demo__controls time { position:absolute; left:calc(100% + 16px); min-width:3ch; font-variant-numeric:tabular-nums; }
.faces-home-demo__controls [data-home-demo-phase]:not(:empty) { position:absolute; left:50%; bottom:calc(100% + 8px); width:280px; max-width:calc(100vw - 32px); transform:translateX(-50%); text-align:center; }
.faces-home-demo__controls [data-home-demo-phase]:empty { display:none; }
.faces-home-demo__caption:not(.sr-only) {
  position: absolute;
  left: 33.3333%;
  bottom: 86px;
  transform: translateX(-50%);
  width: min(600px, calc(66.6667% - 48px));
  height: 3em;
  margin: 0;
  overflow: hidden;
  font: 400 14px/1.5 "Space Grotesk Proof", sans-serif;
}
.faces-home-demo__caption:empty { visibility: hidden; }
.faces-home-demo__actions {
  position:absolute;
  top:50%; left:33.3333%;
  width:min(400px, calc(66.6667% - 48px));
  padding:20px;
  border:1px solid var(--faces-rule);
  background:var(--surface-page);
  opacity:0;
  transform:translate(-50%, -45%);
  transition:opacity 240ms ease, transform 240ms ease;
}
.faces-home-demo__actions.is-visible { opacity:1; transform:translate(-50%, -50%); pointer-events:auto; }
.faces-home-demo__actions .faces-switch { gap:24px; min-height:56px; }
.faces-home-demo__actions .faces-switch b { font-size:20px; }
.faces-home-demo__actions .faces-switch small { font:400 14px/1.4 "Space Grotesk Proof",sans-serif; text-transform:none; letter-spacing:0; }
.faces-home-demo__actions .faces-switch__track { flex-shrink:0; }
.faces-home-demo__actions { padding-top:46px; }
.faces-home-demo__pointer { position:absolute; right:6px; top:-14px; width:64px; height:64px; color:#68a7ff; pointer-events:none; }
.faces-home-demo__actions[data-stage="invited"].is-visible { animation:faces-mic-attention 1600ms ease-in-out infinite; }
.faces-home-demo__actions[data-stage="invited"] .faces-home-demo__pointer { animation:faces-mic-point 900ms ease-in-out infinite; }
@keyframes faces-mic-point { 50% { transform:translateY(6px); } }
@keyframes faces-mic-attention { 50% { border-color:#68a7ff; box-shadow:0 0 0 4px color-mix(in srgb, #68a7ff 18%, transparent); } }
@media (max-width:768px), (max-width:950px) and (max-height:500px) {
  body:is([data-home-demo="active"],[data-home-demo="leaving"]) [data-landing-content] {
    position:fixed; left:50%; top:auto; bottom:max(28px,env(safe-area-inset-bottom));
    width:calc(100% - 48px); transform:translateX(-50%); text-align:center;
  }
  body:is([data-home-demo="active"],[data-home-demo="leaving"]) :is(.faces-lockup,.faces-hero__line) { display:none; }
  body:is([data-home-demo="active"],[data-home-demo="leaving"]) [data-start-onboarding] { width:170px; min-height:44px; margin-top:0; padding:12px 20px; gap:24px; }
  body:is([data-home-demo="active"],[data-home-demo="leaving"]) .faces-primary.faces-drift-cta > .faces-hero__cta-copy { font-size:12px; }
  .faces-home-demo__controls { left:50%; top:auto; bottom:max(108px,calc(env(safe-area-inset-bottom) + 88px)); gap:12px; font-size:9px; }
  .faces-home-demo__caption:not(.sr-only) { left:50%; top:auto; bottom:max(164px,calc(env(safe-area-inset-bottom) + 144px)); width:calc(100% - 32px); font-size:12px; }
  .faces-home-demo__actions { top:32%; left:50%; width:calc(100% - 48px); padding:46px 16px 16px; }
  .faces-home-demo__actions .faces-switch b { font-size:18px; }
  .faces-home-demo__actions .faces-switch small { font-size:12px; }
  .faces-home-demo__pointer { right:2px; }
}
@media (min-width:600px) and (max-width:950px) and (max-height:500px) {
  body:is([data-home-demo="active"],[data-home-demo="leaving"]) [data-landing-content] { left:83.3333%; width:calc(33.3333% - 32px); }
  .faces-home-demo__caption:not(.sr-only),.faces-home-demo__controls,.faces-home-demo__actions { left:83.3333%; }
  .faces-home-demo__caption:not(.sr-only) { width:calc(33.3333% - 32px); }
  .faces-home-demo__controls { bottom:100px; }
  .faces-home-demo__controls time { left:calc(100% + 8px); }
  .faces-home-demo__actions { width:calc(33.3333% - 32px); }
}
@media (prefers-reduced-motion: reduce) {
  body[data-faces-state="landing"] :is([data-landing-content], .faces-lockup, .faces-hero__line, [data-start-onboarding]) { transition: none; }
  .faces-home-demo__actions { transition:none; animation:none !important; }
  .faces-home-demo__pointer { animation:none !important; }
}
