/* Small feedback follows the measured reference CSS; no whole-image rocking loops. */
/* Copy moves only during a page turn, then settles at its fixed layout coordinates. */
.homepage[data-busy="true"] .shared-actor{pointer-events:none}
.homepage .home-chapter{transition:none}
.homepage .home-chapter .reveal{transition:none!important;translate:0 var(--copy-title-y,0px)!important;animation:none!important}
.homepage .story-copy p.reveal{translate:0 var(--copy-body-y,0px)!important}
.homepage .story-copy .primary.reveal,.homepage .hero-purchase.reveal{translate:0 var(--copy-action-y,0px)!important}
.homepage .hero-welcome,.homepage .uses-labels,.homepage .journey-top,.homepage .journey-bottom{translate:0 var(--copy-bubble-y,0px);transition:none;animation:none}
.homepage .home-chapter.is-current .reveal{opacity:1}
.homepage .cut-label:before,.homepage .with-tail:after{transition:none!important;animation:none!important}
.homepage .is-current .cut-label:before{opacity:1;scale:1}
.homepage .is-current .with-tail:after{opacity:1;translate:none}
.homepage .paper-words,.homepage .paper-words span{animation:none!important;transition:none!important;translate:none!important;transform:none!important;scale:1;opacity:1}
header a:hover,.legal-links a:hover{animation:none!important}
html:has(body.home-route){height:100%;overflow:clip}body.home-route{position:fixed;inset:0;width:100%;overflow:clip}
.menu-brand{display:flex;align-items:center;gap:7px}.menu-brand img{width:52px;height:52px;object-fit:contain}
@media(max-width:800px){.stage-canvas{top:12px;transform:translateX(-50%) scale(var(--scene-scale));transform-origin:50% 0}.homepage .chapter-nav button{height:32px;width:28px}}
.guide-alt{position:absolute;inset:0;opacity:0;transition:opacity .4s .15s}.guide-back{transition:opacity .4s}.guide-alt .guide-object{position:absolute;width:27%;height:23%;object-fit:contain;scale:.85;translate:0 15px;transition:scale .65s cubic-bezier(.165,.84,.44,1),translate .65s cubic-bezier(.165,.84,.44,1);transition-delay:calc(var(--object-i)*.035s)}.guide-object-0{left:1%;top:15%}.guide-object-1{left:37%;top:0}.guide-object-2{right:0;top:18%}.guide-object-3{left:1%;top:47%}.guide-object-4{left:16%;top:69%}.guide-object-5{right:0;top:72%}.homepage[data-variant="1"] .guide-back,.homepage[data-variant="2"] .guide-back{opacity:0}.homepage[data-variant="1"] .guide-alt-1,.homepage[data-variant="2"] .guide-alt-2{opacity:1}.homepage[data-variant="1"] .guide-alt-1 .guide-object,.homepage[data-variant="2"] .guide-alt-2 .guide-object{scale:1;translate:0 0}body:has(dialog[open]) .paper-words{animation-play-state:paused!important}
@keyframes nq-arrow{0%,100%{transform:translateX(0)}10%{transform:translateX(3px)}}
@keyframes nq-menu-in{from{opacity:0;transform:translateY(-25px) scale(.985)}to{opacity:1;transform:none}}
@keyframes nq-menu-out{to{opacity:0;transform:translateY(-18px) scale(.985)}}
@keyframes nq-symbol{0%{transform:scale(1) rotate(0)}10%{transform:scale(.75) rotate(-45deg)}100%{transform:scale(1) rotate(-90deg)}}
@media(any-hover:hover){a:hover>.arrow:after,button:hover>.arrow:after{animation:nq-arrow .42s cubic-bezier(.165,.84,.44,1)}.primary{transition:background-color .64s cubic-bezier(.25,.46,.45,.94)}.primary:hover{background:#45443f;transition-duration:.42s}.motion-playback a:hover>.arrow:after{animation:nq-arrow .42s cubic-bezier(.165,.84,.44,1)!important}.faq-grid details:not([open]) summary:hover:after{animation:nq-symbol .42s cubic-bezier(.25,.46,.45,.94)}}
#menu{width:calc(100% - 52px);max-width:1440px;height:calc(100dvh - 52px);max-height:none;padding:36px 55px;background:white;border-radius:4px;overflow:auto}#menu::backdrop{background:#e6e6e6}#menu[open]{animation:nq-menu-in .6s cubic-bezier(.165,.84,.44,1)}#menu.is-closing{animation:nq-menu-out .3s cubic-bezier(.55,.085,.68,.53) forwards}.motion-playback #menu[open]{animation:nq-menu-in .6s cubic-bezier(.165,.84,.44,1)!important}.motion-playback #menu.is-closing{animation:nq-menu-out .3s cubic-bezier(.55,.085,.68,.53) forwards!important}#menu .dialog-head{max-width:1280px;margin:auto}#menu .dialog-head h2{font-size:30px;letter-spacing:-1px}#menu nav{display:grid;grid-template-columns:1fr 1fr;gap:0 64px;max-width:900px;margin:7vh auto 0}#menu nav a{font-size:20px;min-height:76px;border-color:#e3e3df}#menu nav a:nth-child(2){font-weight:850}#menu .menu-mascot{width:130px;margin:38px auto 0}.faq-grid details p{overflow:hidden}.faq-grid details[open] summary{color:#5c574d}.faq-grid summary:after{transition:transform .24s}.faq-grid details[open] summary:after{transform:rotate(180deg)}
@media(max-width:600px){#menu{width:calc(100% - 24px);height:calc(100dvh - 24px);padding:22px}#menu nav{grid-template-columns:1fr;margin:20px auto 0;gap:0}#menu nav a{font-size:17px;min-height:54px}#menu .menu-mascot{width:95px;margin-top:20px}}
@media(prefers-reduced-motion:reduce){body:not(.motion-playback) #menu[open]{animation:none}body:not(.motion-playback) .primary{transition:none}}
@media(max-width:800px){.chapter-uses .story-copy h2 br:nth-of-type(1),.chapter-uses .story-copy p br:nth-of-type(2){display:initial}.story-copy h2{font-size:40px}.story-copy p{font-size:max(28px,calc(14px / var(--scene-scale)));line-height:1.6}.story-copy .primary{width:600px;min-height:calc(44px / var(--scene-scale))}.uses-labels{left:auto;right:24px}.uses-labels .cut-label{font-size:max(24px,calc(12px / var(--scene-scale)))}.guide-copy h2{font-size:38px}.guide-copy p{font-size:max(28px,calc(14px / var(--scene-scale)))}}
