body .flow-story>.room-demo-note{display:block;margin:10px auto 0;max-width:300px;font-size:12px;line-height:1.7;color:#426451;word-break:keep-all;text-wrap:balance}
/* Keep each bubble in its own table's layout, including when its text changes. */
body .story-animals{padding-top:0;column-gap:18px;row-gap:28px}
body .story-animals>div{display:flex;flex-direction:column;align-items:center;gap:12px;min-width:0}
body .story-animals>div>span{position:relative;inset:auto;box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:100%;max-width:190px;min-height:48px;margin:0;padding:9px 12px;border-radius:18px;background:#fffaf0;color:#174c37;font-size:17px;line-height:1.4;text-align:center;word-break:keep-all;overflow-wrap:anywhere;text-wrap:balance}
body .story-animals>div>span::after{content:"";position:absolute;left:28%;bottom:-6px;width:12px;height:12px;background:#fffaf0;transform:rotate(45deg);border-radius:0 0 3px 0}
body .story-animals>div:nth-child(even)>span::after{left:auto;right:28%}
body .story-animals>div>i{width:100%;flex-shrink:0}
@media(max-width:600px){body .story-animals{column-gap:16px;row-gap:26px;max-width:360px;margin:0 auto 30px}body .story-animals>div{gap:10px}body .story-animals>div>span{min-height:64px;padding:8px 10px;font-size:16px;line-height:1.4;border-radius:17px}body .story-animals>div>i{max-width:165px}}
.story-animals.is-animated i{position:relative;background:none!important;isolation:isolate}
.story-animals .hero-seat,.story-animals .hero-table{position:absolute;background-image:url('assets/lounge-separated-sprites.png');background-size:300% 300%;background-position:var(--scene-x) var(--scene-y);pointer-events:none;aspect-ratio:1}
.story-animals .hero-seat{width:58%;bottom:3%;z-index:1;clip-path:inset(5% 0 0)}
.story-animals .hero-seat-left{left:-2%}
.story-animals .hero-seat-right{right:-2%;transform-origin:50% 95%}
/* A complete, separate furniture sprite: never swapped or animated. */
.story-animals .hero-table{width:52%;left:24%;bottom:-8%;z-index:2;clip-path:inset(18% 0 0)}
.story-animals.is-animated>div>span{transition:opacity .25s ease,transform .35s ease}
.story-animals.is-changing>div>span{opacity:0;transform:translateY(6px)}
.hero-motion-toggle{display:block;margin:-12px auto 24px;border:0;background:transparent;color:var(--ink);font:inherit;font-size:11px;opacity:.65;padding:6px 12px;cursor:pointer}
.hero-motion-toggle:hover,.hero-motion-toggle:focus-visible{opacity:1;text-decoration:underline}
@media(prefers-reduced-motion:reduce){.story-animals.is-animated>div>span{transition:none}.hero-motion-toggle{display:none}}
