@keyframes fx-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes fx-bars{0%,to{transform:scaleY(.35)}50%{transform:scaleY(1)}}@keyframes fx-drift{0%,to{transform:translate(0)rotate(0)}50%{transform:translate(-14px,10px)rotate(.6deg)}}.fx-hero{background:linear-gradient(160deg,#202225 0%,#16171a 60%,#0f1012 100%);justify-content:center;align-items:center;position:relative;overflow:hidden}@media (min-width:1024px){.fx-hero{align-self:start;height:100vh;position:sticky;top:0}}.fx-lines{opacity:.5;animation:22s ease-in-out infinite fx-drift;position:absolute;inset:0}.fx-stage{width:560px;max-width:80%;position:relative}.fx-mockup{background:#15171a;border:1px solid #ffffff14;border-radius:20px;overflow:hidden;transform:perspective(1400px)rotateX(7deg)rotateY(-9deg)rotate(-2deg);box-shadow:0 40px 80px -20px #0009}.fx-browser-bar{border-bottom:1px solid #ffffff0f;align-items:center;gap:8px;padding:12px 16px;display:flex}.fx-dot{background:#5c5f63;border-radius:999px;width:9px;height:9px}.fx-url{color:#f5f5f566;margin-left:8px;font-size:11.5px}.fx-app{min-height:340px;display:flex}.fx-sidebar{border-right:1px solid #ffffff0f;flex-direction:column;gap:2px;width:128px;padding:14px 10px;display:flex}.fx-sidebar-logo{align-items:center;gap:6px;padding:4px 6px 12px;display:flex}.fx-sidebar-brand{color:var(--fixit-light);font-size:10.5px;font-weight:700;line-height:1.1}.fx-sidebar-brand span{color:#f5f5f580;font-size:8.5px;font-weight:500}.fx-nav-section{margin-top:8px}.fx-nav-heading{letter-spacing:.05em;text-transform:uppercase;color:var(--fixit-green-light);margin:0 0 3px;padding:0 6px;font-size:9px;font-weight:700}.fx-nav-row{color:#f5f5f599;border-radius:8px;align-items:center;gap:8px;padding:6px 8px;font-size:11.5px;font-weight:500;display:flex}.fx-nav-row.is-active{color:var(--fixit-green-light);background:#4caf5029;font-weight:600}.fx-main{background:#1a1c1f;flex:1;padding:18px 20px}.fx-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--fixit-green-light);margin:0;font-size:10px;font-weight:700}.fx-greeting{color:var(--fixit-light);margin:4px 0 0;font-size:18px;font-weight:700}.fx-summary{color:#f5f5f58c;max-width:320px;margin:6px 0 0;font-size:11.5px;line-height:1.5}.fx-stats{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px;display:grid}.fx-stat{background:#ffffff08;border:1px solid #ffffff14;border-radius:12px;padding:10px}.fx-stat-label{letter-spacing:.04em;text-transform:uppercase;color:#f5f5f573;font-size:9px;font-weight:700}.fx-stat-value{margin-top:5px;font-size:19px;font-weight:700}.fx-stat-value.is-new{color:#60a5fa}.fx-stat-value.is-open{color:var(--fixit-green-light)}.fx-stat-value.is-owed{color:#ef4444}.fx-stat-sub{color:#f5f5f566;margin-top:2px;font-size:10px}.fx-float{background:#fff;border-radius:14px;align-items:center;gap:10px;padding:12px 16px;animation:5s ease-in-out infinite fx-float;display:flex;position:absolute;box-shadow:0 20px 40px -10px #00000059}.fx-card-resolved{top:-8%;right:-14%}.fx-card-dispatched{animation-delay:1.4s;bottom:6%;left:-16%}.fx-float-icon{border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.fx-card-resolved .fx-float-icon{background:#e7f6e8}.fx-card-dispatched .fx-float-icon{background:var(--fixit-dark)}.fx-float-title{color:#171717;font-size:13px;font-weight:600}.fx-float-sub{color:#737373;margin-top:1px;font-size:11.5px}.fx-badge{background:#fff;border-radius:999px;justify-content:center;align-items:center;animation:5s ease-in-out infinite fx-float;display:flex;position:absolute;box-shadow:0 16px 30px -8px #00000059}.fx-badge-voice{width:56px;height:56px;animation-delay:.6s;top:18%;left:-9%}.fx-badge-check{width:48px;height:48px;animation-delay:2.1s;bottom:24%;right:-8%}.fx-eq{align-items:flex-end;gap:2.5px;height:16px;display:flex}.fx-eq span{background:var(--fixit-green);border-radius:2px;width:3px;height:100%;animation:1.1s ease-in-out infinite fx-bars;display:block}.fx-eq span:nth-child(2){animation-delay:.12s}.fx-eq span:nth-child(3){animation-delay:.24s}.fx-eq span:nth-child(4){animation-delay:.36s}@media (prefers-reduced-motion:reduce){.fx-lines,.fx-float,.fx-badge{animation:none}.fx-eq span{animation:none;transform:scaleY(.7)}}
