/* Landing page layer; uses only shared design tokens. */
.lp-hero{background:radial-gradient(60% 50% at 85% 20%,color-mix(in srgb,var(--accent) 28%,var(--primary)) 0,var(--primary) 70%)}
.lp-proof{display:flex;flex-wrap:wrap;gap:var(--space-24);list-style:none;padding:0;margin:var(--space-32) 0 0;color:color-mix(in srgb,var(--primary-foreground) 64%,var(--primary));font-size:var(--text-caption)}
.lp-proof b{display:block;color:var(--primary-foreground);font-size:var(--text-title);line-height:var(--line-reading)}
.lp-preview{display:grid;gap:var(--space-16)}
.lp-pulse{animation:lp-pulse 1.6s ease-in-out infinite}
@keyframes lp-pulse{50%{opacity:.3}}
@media(prefers-reduced-motion:reduce){.lp-pulse{animation:none}}
.lp-transcript{display:grid;gap:var(--space-8)}
.lp-line{margin:0;padding:var(--space-8) var(--space-12);border-radius:var(--radius-control);font-size:var(--text-body);line-height:var(--line-body);background:color-mix(in srgb,var(--primary-foreground) 6%,var(--primary))}
.lp-line span{display:block;font-size:var(--text-small);letter-spacing:.1em;text-transform:uppercase;color:color-mix(in srgb,var(--primary-foreground) 56%,var(--primary))}
.lp-line.them{border-inline-start:var(--space-4) solid var(--accent)}
.lp-line.them span{color:var(--accent)}
.lp-line.you{opacity:.7}
.lp-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-16)}
.lp-step{display:flex;flex-direction:column;gap:var(--space-8)}
.lp-step h3{margin:0;font-size:var(--text-title)}
.lp-step p{flex:1}
.lp-step ul{list-style:none;padding:0;margin:var(--space-8) 0 0;display:flex;flex-wrap:wrap;gap:var(--space-8)}
.lp-step li{padding:var(--space-4) var(--space-12);border-radius:var(--radius-pill);background:var(--muted);font-size:var(--text-caption)}
.lp-step.featured{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}
.lp-step.featured p{color:color-mix(in srgb,var(--primary-foreground) 70%,var(--primary))}
.lp-step.featured li{background:color-mix(in srgb,var(--primary-foreground) 12%,var(--primary))}
.lp-num{color:var(--accent);font-weight:700;font-size:var(--text-caption);letter-spacing:.12em}
.lp-bento{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-16)}
.lp-tile.wide{grid-column:span 2}
.marketing-cta .moment-start{flex:none}
@media(max-width:800px){.lp-steps,.lp-bento{grid-template-columns:1fr}.lp-tile.wide{grid-column:auto}.marketing-cta .moment-start{margin-top:var(--space-16);width:100%}}
/* Motion layer */
html{scroll-behavior:smooth}
.lp-progress{position:fixed;inset-block-start:0;inset-inline:0;height:3px;background:var(--accent);transform:scaleX(0);transform-origin:left;z-index:60;pointer-events:none}
[dir=rtl] .lp-progress{transform-origin:right}
.moment-nav{position:sticky;top:0;z-index:50;transition:background .3s,backdrop-filter .3s,box-shadow .3s}
.moment-nav.lp-stuck{background:color-mix(in srgb,var(--primary) 78%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 1px 0 color-mix(in srgb,var(--primary-foreground) 12%,transparent)}
.marketing-card{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,opacity .7s ease}
@media(prefers-reduced-motion:no-preference){
  .lp-js .lp-reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
  .lp-js .lp-reveal.lp-in{opacity:1;transform:none}
  .marketing-card:hover{transform:translateY(-4px)!important;border-color:var(--accent);box-shadow:0 12px 32px color-mix(in srgb,var(--accent) 18%,transparent)}
  .moment-copy>*{animation:lp-up .8s cubic-bezier(.2,.7,.2,1) both}
  .moment-copy>:nth-child(2){animation-delay:.1s}.moment-copy>:nth-child(3){animation-delay:.2s}.moment-copy>:nth-child(4){animation-delay:.3s}.moment-copy>:nth-child(5){animation-delay:.4s}
  .lp-preview{animation:lp-up .9s .2s cubic-bezier(.2,.7,.2,1) both,lp-float 6s 1.2s ease-in-out infinite}
  .lp-line{animation:lp-up .6s cubic-bezier(.2,.7,.2,1) both}
  .lp-line:nth-child(1){animation-delay:.8s}.lp-line:nth-child(2){animation-delay:1.6s}.lp-line:nth-child(3){animation-delay:3.4s}
  .moment-status span:last-child{animation:lp-up .5s 2.2s both,lp-glow 2s 2.7s ease-in-out infinite;border-radius:var(--radius-pill)}
  .moment-guidance{animation:lp-up .6s 2.4s both}
  .moment-guidance li{animation:lp-up .5s both}
  .moment-guidance li:nth-child(1){animation-delay:2.7s}.moment-guidance li:nth-child(2){animation-delay:3s}.moment-guidance li:nth-child(3){animation-delay:3.3s}
  .moment-foot strong{animation:lp-up .5s 3.6s both}
  .lp-tile .icon{transition:transform .3s ease}.lp-tile:hover .icon{transform:scale(1.15) rotate(-6deg)}
}
@keyframes lp-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes lp-float{50%{transform:translateY(-8px)}}
@keyframes lp-glow{50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--accent) 25%,transparent)}}
