@keyframes heroRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes phoneFloat{0%,100%{transform:translateY(0) rotate(3deg)}50%{transform:translateY(-10px) rotate(3deg)}}@keyframes scan{0%{top:8%}50%{top:88%}100%{top:8%}}.hero-copy .eyebrow{animation:heroRise .7s .08s both}.hero-copy h1{animation:heroRise .8s .18s both}.hero-lede{animation:heroRise .8s .32s both}.hero-actions{animation:heroRise .8s .42s both}.trust-points,.availability-note{animation:heroRise .8s .55s both}.phone-frame{animation:phoneFloat 7s ease-in-out infinite}.reveal{opacity:1;transform:translateY(0)}.js-motion .reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.js-motion .reveal.is-visible{opacity:1;transform:translateY(0)}.problem-grid .col-md-6:nth-child(2) .reveal{transition-delay:.1s}.problem-grid .col-md-6:nth-child(3) .reveal{transition-delay:.2s}.problem-grid .col-md-6:nth-child(4) .reveal{transition-delay:.3s}.features-section .row>.col-md-6:nth-child(even) .reveal{transition-delay:.1s}.step-visual{transition:background-color .45s}.journey-widget[data-active="1"] .step-visual{background:#eee6da}.journey-widget[data-active="2"] .step-visual{background:#f1e5d8}.journey-widget[data-active="3"] .step-visual{background:#e8e9de}.score-ring{transition:background 1s ease}.step-tab:focus-visible,.demo-product:focus-visible{outline:3px solid var(--gold);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.js-motion .reveal{opacity:1;transform:none}}
@media(max-width:767.98px){.phone-frame{animation:none}}
