/* Falcon flight motion: fixed intro, a single hero slash, and opposing marquees. */
.faq summary span:before,.faq summary span:after{transition:transform 180ms cubic-bezier(.2,.9,.2,1)}
.motion-header{transition:transform var(--motion-header);will-change:transform}.motion-header.is-hidden{transform:translateY(calc(-100% - 4px))}.motion-header:focus-within{transform:none}.motion-header .header-actions .button{display:inline-flex}
.falcon-intro{display:none;position:fixed;inset:0;z-index:200;overflow:hidden;isolation:isolate;pointer-events:auto;background:var(--ink)}
html[data-intro=playing] .falcon-intro,html[data-intro=pending] .falcon-intro{display:block;animation:fp-intro-exit var(--motion-intro) cubic-bezier(.2,.9,.2,1) forwards}
.fp-intro-stripe{position:absolute;left:-10%;top:65%;width:120vmax;height:13vmin;background:var(--falcon);clip-path:polygon(0 32%,100% 0,88% 100%,8% 80%);transform:translate3d(-110vw,65vh,0) rotate(-32deg);animation:fp-wing-swipe 820ms cubic-bezier(.2,.9,.2,1) both;pointer-events:none}
.fp-intro-stripe:nth-child(2){top:46%;animation-delay:60ms}.fp-intro-stripe:nth-child(3){top:27%;animation-delay:120ms}
.intro-lockup{position:absolute;left:50%;top:50%;width:min(270px,56vw);aspect-ratio:1;transform:translate(-50%,-50%);animation:fp-mark-arrive 320ms ease-out both;color:var(--falcon)}
.intro-lockup svg{display:block;width:100%;height:100%}.intro-lockup img{width:100%;height:auto}
@keyframes fp-wing-swipe{0%{transform:translate3d(-110vw,65vh,0) rotate(-32deg)}100%{transform:translate3d(120vw,-80vh,0) rotate(-32deg)}}
@keyframes fp-mark-arrive{from{transform:translate(-50%,-50%) scale(.92)}to{transform:translate(-50%,-50%) scale(1)}}
@keyframes fp-intro-exit{0%,66%{clip-path:polygon(0 0,100% 0,100% 100%,0 100%);visibility:visible}99%{visibility:visible}100%{clip-path:polygon(100% 0,100% 0,100% 0,100% 0);visibility:hidden;pointer-events:none}}
.fp-hero-highlight{isolation:isolate}.fp-hero-highlight .fp-hero-word{display:block;position:relative;clip-path:none}
.hero-play .fp-hero-word{animation:fp-speed-slash var(--motion-slash) cubic-bezier(.2,.9,.2,1) both}.hero-play .fp-flight-tag{animation:fp-tag-snap var(--motion-stamp) cubic-bezier(.2,.9,.2,1) .24s both}
@keyframes fp-speed-slash{0%{transform:translateX(-42px);opacity:0;text-shadow:-12px 0 0 color-mix(in srgb,var(--falcon) 30%,transparent),-26px 0 0 color-mix(in srgb,var(--falcon) 15%,transparent)}35%{opacity:1}72%{transform:translateX(6px);text-shadow:-6px 0 0 color-mix(in srgb,var(--falcon) 15%,transparent),-14px 0 0 color-mix(in srgb,var(--falcon) 6%,transparent)}100%{transform:translateX(0);opacity:1;text-shadow:0 0 0 transparent}}
@keyframes fp-tag-snap{0%{transform:translateX(-30px) skewX(-12deg);opacity:0}70%{transform:translateX(4px) skewX(-12deg);opacity:1}100%{transform:translateX(0) skewX(-12deg);opacity:1}}
.moving-marquee{overflow:hidden}.marquee-study{transform:rotate(-2deg);position:relative;z-index:1}.marquee-track{display:flex;width:max-content;animation:fp-marquee var(--motion-marquee) linear infinite;will-change:transform}.marquee-track>span{display:flex;align-items:center;flex:none;white-space:nowrap;gap:0}.marquee-track b{display:inline-flex;align-items:center;margin-inline:22px}.marquee-track .icon{width:28px;height:23px;flex:none;fill:currentColor;stroke:none}.moving-marquee:hover .marquee-track,.moving-marquee:focus-within .marquee-track{animation-play-state:paused}
.fp-speed-divider.moving-marquee{background:var(--ink);background-image:repeating-linear-gradient(0deg,transparent 0 7px,color-mix(in srgb,var(--steel) 22%,transparent) 7px 8px);background-size:120px 8px}.fp-speed-divider .marquee-track{animation-direction:reverse;transform:none}.fp-speed-divider .marquee-track span{margin:0;color:var(--paper)}.fp-speed-divider .marquee-track b{color:var(--falcon);margin-inline:24px}
@keyframes fp-marquee{to{transform:translateX(-50%)}}
.hero-falcon{animation:none;transform:none}.fp-updates-falcon,.character{animation:none}
.product-rail{cursor:grab}.product-rail.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}.product-rail.is-dragging a{pointer-events:none}.product-rail img{-webkit-user-drag:none;user-select:none}
.bottom-cta{position:fixed;left:0;bottom:0;width:100%;z-index:30;display:none;transform:translateY(110%);transition:transform 220ms cubic-bezier(.7,0,.3,1);border-top:3px solid var(--ink);padding:12px 16px max(14px,env(safe-area-inset-bottom));background:var(--paper)}.bottom-cta.is-visible{transform:translateY(0)}.bottom-cta p{font:700 10px/1.4 var(--font-label);text-transform:uppercase;letter-spacing:.07em}.bottom-cta .button{font-size:11px;min-height:44px;padding:10px 12px;gap:10px}.bottom-cta .icon{width:16px;height:16px}
html[data-motion=paused] .marquee-track{animation-play-state:paused}
html[data-motion=reduced] .falcon-intro{display:none!important}html[data-motion=reduced] .fp-hero-word,html[data-motion=reduced] .fp-flight-tag,html[data-motion=reduced] .fp-intro-stripe,html[data-motion=reduced] .intro-lockup,html[data-motion=reduced] .marquee-track{animation:none!important}html[data-motion=reduced] *,html[data-motion=reduced] *:before,html[data-motion=reduced] *:after{transition:none!important;scroll-behavior:auto!important}
@media(max-width:767px){.motion-header .header-actions .button{font-size:10px;padding:10px;min-height:40px;gap:0}.motion-header .brand{width:140px}.marquee-track b{margin-inline:14px}.marquee-track .icon{width:22px;height:18px}.bottom-cta{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center}.site-footer{padding-bottom:96px}.moving-marquee .marquee-track{font-size:17px}.fp-speed-divider .marquee-track{font-size:28px}.fp-hero-highlight .fp-hero-word{font-size:1em}.fp-intro-stripe{height:11vh;width:160vmax;left:-35%}}
@media(prefers-reduced-motion:reduce){.falcon-intro{display:none!important}.fp-hero-word,.fp-flight-tag,.fp-intro-stripe,.intro-lockup,.marquee-track{animation:none!important}*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}

/* One mobile announcement strip, with every editable claim in a seamless loop. */
@keyframes fp-trust-scroll{to{transform:translateX(-50%)}}
@media(max-width:1023px){
  .trust-strip{padding-inline:0}
  .fp-trust-track{display:flex;width:max-content;animation:fp-trust-scroll var(--motion-marquee) linear infinite}
  .fp-trust-group,.fp-trust-group[aria-hidden=true]{display:flex;flex:none;justify-content:flex-start;gap:28px;padding-inline:14px}
  .fp-trust-group>span{white-space:nowrap}
  html[data-motion=paused] .fp-trust-track,html[data-motion=reduced] .fp-trust-track{width:100%;animation:none;transform:none}
  html[data-motion=paused] .fp-trust-group,html[data-motion=reduced] .fp-trust-group{flex-wrap:wrap;justify-content:center;gap:6px 16px;width:100%;padding-inline:16px}
  html[data-motion=paused] .fp-trust-group>span,html[data-motion=reduced] .fp-trust-group>span{white-space:normal}
  html[data-motion=paused] .fp-trust-group[aria-hidden=true],html[data-motion=reduced] .fp-trust-group[aria-hidden=true]{display:none}
}
@media(max-width:1023px) and (prefers-reduced-motion:reduce){
  .fp-trust-track{width:100%;animation:none;transform:none}
  .fp-trust-group{flex-wrap:wrap;justify-content:center;gap:6px 16px;width:100%;padding-inline:16px}
  .fp-trust-group>span{white-space:normal}
  .fp-trust-group[aria-hidden=true]{display:none}
}
