.home-hero--airplane{overflow:clip}.home-hero--airplane .home-hero-grid{background:#fff}html[data-airplane-scroll=native],html[data-airplane-scroll=native] body{overflow:clip visible}.airplane-assembly{pointer-events:none;-webkit-user-select:none;user-select:none;background:#fff;align-content:center;align-self:stretch;min-width:0;min-height:min(480px,100svh - 100px);margin:0;display:grid;position:relative}.airplane-assembly__art{aspect-ratio:1.36;isolation:isolate;width:100%;max-height:min(740px,100svh - 190px);position:relative}.airplane-assembly__canvas,.airplane-assembly__fallback,.airplane-assembly__fallback img{object-fit:contain;width:100%;height:100%;display:block;position:absolute;inset:0}.airplane-assembly__canvas{opacity:0}.airplane-assembly__fallback{display:none}.airplane-assembly[data-assembly-mode="3d"] .airplane-assembly__canvas{opacity:1}.airplane-assembly__canvas{background:#fff;transition:opacity .18s ease-out}.airplane-assembly__caption{z-index:1;visibility:hidden;justify-self:center;width:min(280px,60%);margin-top:-5px;margin-bottom:18px;font-family:Inter,sans-serif;position:relative}.airplane-assembly[data-assembly-ready] .airplane-assembly__caption{visibility:visible}.airplane-assembly[data-assembly-mode=frozen] .airplane-assembly__caption{visibility:hidden}.airplane-assembly__stage{letter-spacing:.025em;color:#424b56;align-items:center;gap:16px;font-size:11px;line-height:1.4;display:flex}.airplane-assembly__stage>:first-child{color:#064dc4;font-variant-numeric:tabular-nums;white-space:nowrap}.airplane-assembly__track{background:#e0e4e9;height:1px;margin:11px 0 9px;overflow:hidden}.airplane-assembly__track>span{height:100%;transform:scaleX(var(--assembly-progress,0));transform-origin:0;background:#064dc4;display:block}.airplane-assembly__hint{letter-spacing:.07em;color:#8b929a;font-size:9px;display:block}.airplane-assembly[data-assembly-state=complete] .airplane-assembly__hint{visibility:hidden}@media (width>=901px){.home-hero[data-assembly-layout="3d"] .home-hero-grid{min-height:calc(var(--assembly-base-height) + var(--assembly-runway));align-items:start}.home-hero[data-assembly-layout="3d"] .home-hero-copy{align-self:start}.home-hero[data-assembly-copy-sticky=true] .home-hero-copy{top:var(--assembly-nav-height,78px);position:sticky}.home-hero[data-assembly-layout="3d"] .airplane-assembly{top:var(--assembly-nav-height,78px);align-self:start;height:min(740px,100svh - 100px);position:sticky}}@media (width<=900px){.airplane-assembly{width:100%;min-height:0;padding:12px 0 24px}.airplane-assembly__art{aspect-ratio:1.5;max-height:none}.airplane-assembly__caption{margin-top:-6px;margin-bottom:0}.airplane-assembly__canvas,.airplane-assembly__caption{display:none}.airplane-assembly__fallback{display:block}}@media (prefers-reduced-motion:reduce){.airplane-assembly__canvas{transition:none}}.hero-animated-logo{pointer-events:none;width:100vw;position:absolute;inset:0 auto 0 50%;transform:translate(-50%)}.hero-animated-logo .hero-animated-logo__art{height:auto;width:min(82vw, 1100px, calc((100svh - var(--nav-height,78px) - 170px) * 1.60832));aspect-ratio:1856/1154;max-height:none;animation:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-animated-logo__svg,.hero-animated-logo__svg svg,.hero-logo-idle,.hero-fan-start,.hero-logo-propeller{width:100%;height:100%;display:block;position:absolute;inset:0}.hero-animated-logo__svg svg{overflow:visible}.hero-animated-logo .hero-logo-piece{animation:hero-logo-assemble var(--letter-duration) cubic-bezier(.16, 1, .3, 1) calc(var(--part-delay) + var(--timeline-offset,0s)) 1 both paused;display:block;position:absolute}.hero-logo-idle{will-change:transform}.hero-logo-idle--gear{animation:hero-logo-gear-idle 7s ease-in-out calc(var(--gear-idle-delay) + var(--timeline-offset,0s)) infinite both paused}.hero-logo-idle--rulers{animation:hero-logo-rulers-idle 8.6s ease-in-out calc(var(--rulers-idle-delay) + var(--timeline-offset,0s)) infinite both paused}.hero-animated-logo .hero-fan-start{animation:hero-logo-fan-start var(--fan-start-duration) cubic-bezier(.333333, 0, .666667, .333333) calc(var(--fan-start-delay) + var(--timeline-offset,0s)) 1 both paused}.hero-animated-logo .hero-logo-propeller{will-change:transform;animation:hero-logo-propeller 6s linear calc(var(--fan-loop-delay) + var(--timeline-offset,0s)) infinite paused}.hero-animated-logo[data-motion-state=running] .hero-logo-idle,.hero-animated-logo[data-motion-state=running] .hero-fan-start,.hero-animated-logo[data-motion-state=running] .hero-logo-propeller,.hero-animated-logo[data-motion-state=running] .hero-logo-piece{animation-play-state:running}.hero-animated-logo[data-motion-state=reduced] .hero-logo-idle,.hero-animated-logo[data-motion-state=reduced] .hero-fan-start,.hero-animated-logo[data-motion-state=reduced] .hero-logo-piece,.hero-animated-logo[data-motion-state=reduced] .hero-logo-propeller{animation:none}@keyframes hero-logo-assemble{0%{opacity:0;transform:translate(var(--part-x), var(--part-y)) rotate(var(--part-angle)) scale(var(--part-scale,.9))}to{opacity:1;transform:translate(0)rotate(0)scale(1)}}@keyframes hero-logo-gear-idle{0%,48%,to{transform:rotate(0)}14%{transform:rotate(2.5deg)}32%{transform:rotate(-2.5deg)}}@keyframes hero-logo-rulers-idle{0%,48%,to{transform:rotate(0)}15%{transform:rotate(-1.6deg)}32%{transform:rotate(1.6deg)}}@keyframes hero-logo-propeller{to{transform:rotate(360deg)}}@keyframes hero-logo-fan-start{0%{transform:rotate(0)}to{transform:rotate(36deg)}}@media (prefers-reduced-motion:reduce){.hero-animated-logo .hero-logo-propeller,.hero-animated-logo .hero-logo-piece,.hero-animated-logo .hero-logo-idle,.hero-animated-logo .hero-fan-start{animation:none!important}}.hero-animated-logo[data-motion-quality=light] .hero-logo-piece{--part-scale:1;--part-angle:0deg!important}.hero-animated-logo[data-logo-state=assembling] .hero-logo-piece{will-change:transform, opacity}.hero-animated-logo[data-motion-state=paused] .hero-logo-idle,.hero-animated-logo[data-motion-state=paused] .hero-logo-propeller,.hero-animated-logo[data-motion-state=reduced] *{will-change:auto}@media (width<=900px){.hero-animated-logo .hero-animated-logo__art{width:min(90vw, 900px, calc((100svh - var(--nav-height,78px) - 170px) * 1.60832))}}@media (width<=560px){.hero-animated-logo .hero-animated-logo__art{width:min(96vw, calc((100svh - var(--nav-height,78px) - 100px) * 1.60832))}}
