/* Compact visual storytelling: one row, one idea at a time. */
.visual-carousel{position:relative;margin:28px 0 12px;min-width:0;max-width:100%}
.visual-carousel-viewport{overflow:hidden;border-radius:22px;touch-action:pan-y pinch-zoom}
.visual-carousel .visual-carousel-track{display:flex!important;grid-template-columns:none!important;gap:18px!important;margin:0!important;padding:0!important;list-style:none;align-items:stretch;transition:transform 350ms linear;will-change:transform}
.visual-carousel-track> *{flex:0 0 calc((100% - 18px)/2)!important;min-width:0!important;margin:0!important;box-sizing:border-box}
.visual-carousel .reading-journey-card{height:440px!important;display:flex;flex-direction:column;overflow:hidden;border:1px solid #304859;border-radius:20px;background:#101c2b}
.visual-carousel .reading-card-art{height:306px!important;min-height:306px!important;max-height:306px!important;aspect-ratio:auto!important;flex:0 0 306px;overflow:hidden}
.visual-carousel .story-art>img{width:100%;height:100%;object-fit:cover}
.visual-carousel .format-art>img{object-fit:cover!important;padding:0!important}
.visual-carousel .reading-card-copy{padding:18px 22px!important;min-height:0!important;flex:1}
.visual-carousel .reading-card-copy h3{font-size:24px!important;margin:3px 0 6px!important;line-height:1.2}
.visual-carousel .reading-card-copy p{font-size:16px!important;line-height:1.4!important;margin:0!important}
.visual-carousel .story-listen-art{position:relative!important;display:block!important;padding:0!important;isolation:isolate;background:#dfc39d!important;perspective:1000px}
.visual-carousel .story-listen-art .story-audio-art{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover!important;transform-origin:66% 62%;will-change:transform,filter}
.visual-carousel.is-in-view .story-listen-art .story-audio-art{animation:story-audio-float 8.6s ease-in-out infinite}
.story-audio-ring{position:absolute;z-index:1;left:71%;top:71%;width:27%;aspect-ratio:1;border:1px solid #83eddd9c;border-radius:50%;pointer-events:none;transform:translate(-50%,-50%) rotateX(65deg) rotateZ(-24deg);box-shadow:0 0 12px #8be9df38}
.visual-carousel.is-in-view .story-audio-ring-one{animation:story-audio-pulse 3.6s ease-out infinite}
.visual-carousel.is-in-view .story-audio-ring-two{animation:story-audio-pulse 3.6s ease-out 1.8s infinite;border-color:#f4d17b9c}
.story-audio-spark{position:absolute;z-index:2;color:#fff3c4;text-shadow:0 0 14px #fff3b8;font-size:clamp(12px,1.4vw,20px);pointer-events:none;opacity:0}
.story-audio-spark-one{left:57%;top:26%}.visual-carousel.is-in-view .story-audio-spark-one{animation:story-spark-rise 4.8s ease-out infinite}
.story-audio-spark-two{left:76%;top:43%}.visual-carousel.is-in-view .story-audio-spark-two{animation:story-spark-rise 5.6s ease-out 1.2s infinite}
.story-audio-spark-three{left:46%;top:50%}.visual-carousel.is-in-view .story-audio-spark-three{animation:story-spark-rise 5.2s ease-out 2.3s infinite}
@keyframes story-audio-float{0%,100%{transform:perspective(1200px) rotateY(-1.2deg) rotateX(.5deg) translateY(0);filter:saturate(.98)}50%{transform:perspective(1200px) rotateY(1deg) rotateX(-.4deg) translateY(-4px);filter:saturate(1.08)}}
@keyframes story-audio-pulse{0%{opacity:0;transform:translate(-50%,-50%) rotateX(65deg) rotateZ(-24deg)}25%{opacity:.42}100%{opacity:0;transform:translate(-50%,-50%) rotateX(65deg) rotateZ(-24deg)}}
@keyframes story-spark-rise{0%{opacity:0;transform:translate3d(0,10px,30px) rotateY(0)}18%{opacity:.85}75%{opacity:.55}100%{opacity:0;transform:translate3d(14px,-36px,70px) rotateY(160deg)}}
.visual-carousel .travel-card{height:400px!important;overflow:hidden;border:1px solid #304859;border-radius:20px;background:#101c2b}
.visual-carousel .travel-photo{aspect-ratio:auto!important;height:300px!important}
.visual-carousel .travel-card figcaption{height:100px;box-sizing:border-box;padding:17px 22px!important}
.visual-carousel .travel-card h3{font-size:25px!important;line-height:1.2!important;margin:0 0 6px!important}
.visual-carousel .travel-card p{font-size:16px!important;margin:0!important}
.visual-carousel-controls{display:flex;align-items:center;justify-content:center;gap:12px;padding-top:16px;font-size:14px;color:#b5c9d6}
.visual-carousel-controls button{min-height:44px;min-width:44px;border:1px solid #405764;border-radius:999px;background:#142432;color:#d9f8f5;cursor:pointer;padding:8px 15px;font:inherit}
.visual-carousel-controls [data-carousel-pause]{margin-left:12px;min-width:120px}
.visual-carousel button:focus-visible,.inline-journal-demo button:focus-visible{outline:3px solid #91e7de;outline-offset:3px}
.inline-journal-demo{margin:36px 0 20px;border:1px solid #314c5c;border-radius:24px;padding:28px;background:linear-gradient(130deg,#142d3a,#101b2b);scroll-margin-top:190px}
.inline-demo-intro{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;margin-bottom:24px}
.inline-demo-intro h3{font-size:clamp(28px,3.2vw,43px);line-height:1.12;margin:10px 0 12px}.inline-demo-intro p{font-size:17px;line-height:1.5;max-width:42ch;margin-bottom:0}
.inline-demo-player{display:grid;grid-template-columns:56px 1fr;gap:12px;align-items:center}.inline-demo-player>img{width:56px;height:56px;object-fit:cover;border-radius:50%}.inline-demo-player small{display:block;font-size:13px;color:#a9bdcd}.inline-demo-player button,.inline-demo-seek,#inline-journal-status{grid-column:1/-1}.inline-demo-player button{width:100%;justify-content:center;min-height:48px}.inline-demo-seek{font-size:12px;color:#b5c9d6}.inline-demo-seek input{display:block;width:100%;accent-color:#83e3d5;margin:9px 0 0}#inline-journal-status{font-size:12px;min-height:20px;color:#b5c9d6}
.inline-journal-paper{background:#f8f5ed;color:#263239;border-radius:5px;padding:30px 34px;box-shadow:0 16px 35px #0003;font-family:Georgia,'Times New Roman',serif}
.sample-journal-masthead{font:10px/1.4 system-ui,sans-serif;letter-spacing:.15em;border-bottom:2px solid #248d91;padding-bottom:10px;margin-bottom:18px;color:#42716f}
#inline-journal-transcript{column-count:2;column-gap:30px;font-size:16px;line-height:1.65}#inline-journal-transcript p{font:inherit;color:inherit;margin:0 0 12px}#inline-journal-transcript h4{column-span:all;font-size:29px;line-height:1.15;margin:0 0 16px;color:#152c34}
.inline-word.is-current{background:#efff35;color:#131900;border-radius:2px;box-shadow:0 0 8px #d6ff5744}.inline-sentence.is-current-sentence{background:#d8e8ed;border-radius:3px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.inline-journal-figure{display:grid;grid-template-columns:1.5fr 1fr;gap:8px 20px;align-items:center;border-top:1px solid #cad2cf;margin:16px 0 0;padding-top:12px}.inline-journal-figure svg{width:100%;max-height:100px}.inline-journal-figure figcaption{grid-column:1;font:11px system-ui,sans-serif;color:#566}.inline-journal-figure table{grid-column:2;grid-row:1/3;width:100%;font:13px system-ui,sans-serif;border-collapse:collapse}.inline-journal-figure th,.inline-journal-figure td{padding:6px;text-align:center;border-bottom:1px solid #ccd4d1}.inline-journal-figure caption{font-size:11px;padding-bottom:8px}
.journal-feature{grid-template-columns:1.25fr 1fr!important;gap:40px!important;align-items:center!important}.journal-feature .document-art-frame{aspect-ratio:3/2!important;height:auto!important;max-height:none!important;padding:0!important;border-radius:20px;overflow:hidden}.journal-feature .document-art-frame img{width:100%!important;height:100%!important;object-fit:cover!important;max-height:none!important}.journal-copy h2{font-size:clamp(31px,3.5vw,49px)!important;line-height:1.12!important}.journal-copy p,.journal-copy li{font-size:17px!important}.pdf-engine-section .reading-visual-caption,.travel-art-note{margin:10px 0!important;font-size:12px!important}.pdf-engine-section{padding-bottom:56px!important}
@media(max-width:700px){.visual-carousel-track> *{flex-basis:100%!important}.visual-carousel .reading-journey-card{height:422px!important}.visual-carousel .reading-card-art{height:294px!important;min-height:294px!important;max-height:294px!important;flex-basis:294px}.visual-carousel .reading-card-copy{padding:16px 18px!important}.visual-carousel .reading-card-copy h3{font-size:23px!important}.visual-carousel .travel-card{height:372px!important}.visual-carousel .travel-photo{height:276px!important}.visual-carousel .travel-card figcaption{height:96px;padding:16px 18px!important}.visual-carousel .travel-card h3{font-size:24px!important}.inline-journal-demo{padding:18px;margin-top:24px;scroll-margin-top:175px}.inline-demo-intro{grid-template-columns:1fr;gap:20px}.inline-journal-paper{padding:22px 18px}#inline-journal-transcript{column-count:1;font-size:16px;line-height:1.65}#inline-journal-transcript h4{font-size:26px}.inline-journal-figure{grid-template-columns:1fr}.inline-journal-figure table{grid-column:1;grid-row:auto}.inline-journal-figure figcaption{grid-column:1}.journal-feature{grid-template-columns:1fr!important;gap:24px!important}.journal-copy h2{font-size:34px!important}}
@media(prefers-reduced-motion:reduce){.visual-carousel .visual-carousel-track{transition:none!important}.visual-carousel.is-in-view .story-listen-art .story-audio-art,.story-audio-ring-one,.story-audio-ring-two,.story-audio-spark{animation:none!important}.story-audio-ring{opacity:.18}}
body.visual-motion-paused .visual-carousel-track{transition:none!important}
.visual-carousel .visual-carousel-track{width:100%!important;max-width:none!important}
.journal-feature .journal-screenshot,.journal-feature .journal-screenshot:has(.document-art-frame){width:100%!important;max-width:none!important}

/* Playback status remains available for errors without explanatory clutter. */
#inline-journal-status:empty{display:none}.inline-demo-seek{font-size:0}.inline-demo-seek input{font-size:initial}

/* Preserve the source 3:2 scene proportions, including the sprite and canvas. */
.visual-carousel .visual-carousel-track{transition:none!important}
.visual-carousel .visual-carousel-track>*{flex:0 0 min(82vw,440px)!important;height:auto!important}
.visual-carousel .reading-card-art{width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:3/2!important;flex:0 0 auto!important;box-sizing:border-box}
.visual-carousel .reading-card-copy{height:128px!important;min-height:128px!important;box-sizing:border-box;flex:0 0 128px!important}
.visual-carousel .travel-photo{height:auto!important;aspect-ratio:3/2!important;width:100%}
.visual-carousel .travel-card figcaption{height:104px!important;min-height:104px!important}
.visual-carousel .story-listen-art{padding:10px!important}
.visual-carousel .reading-demo-iphone{height:calc(100% - 20px)!important;max-height:270px!important;width:auto!important;aspect-ratio:851/1848!important;position:absolute;top:10px;bottom:10px}
@media(max-width:700px){.visual-carousel .reading-card-copy h3{font-size:21px!important}.visual-carousel .reading-card-copy p{font-size:15px!important}.visual-carousel .travel-card h3{font-size:21px!important}.visual-carousel .travel-card p{font-size:15px!important}.visual-carousel .story-narrator-badge{right:8px!important;bottom:9px!important;max-width:144px}.visual-carousel .story-narrator-badge small{font-size:9px}.visual-carousel .story-narrator-badge img{width:32px!important;height:32px!important}}

.snapshot-feature{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:32px;align-items:center;margin:34px 0 20px;padding:22px;border:1px solid #314c5c;border-radius:24px;background:linear-gradient(130deg,#142d3a,#101b2b)}
.snapshot-picture{min-width:0;overflow:hidden;border-radius:16px;aspect-ratio:3/2}.snapshot-picture img{display:block;width:100%;height:100%;object-fit:cover}
.snapshot-copy h3{font-size:clamp(29px,3vw,43px);line-height:1.12;margin:12px 0 16px}.snapshot-copy>p:not(.eyebrow){font-size:17px;line-height:1.6;color:#b9cbd7}.snapshot-steps{display:flex;gap:14px;flex-wrap:wrap;list-style:none;padding:0;margin:20px 0;font-size:14px;color:#e2f5f5}.snapshot-steps li{display:flex;gap:7px;align-items:center}.snapshot-steps span{display:grid;place-items:center;width:30px;height:30px;border:1px solid #3c737e;border-radius:8px;color:#7ce2d5}
@media(max-width:700px){.snapshot-feature{grid-template-columns:1fr;padding:16px;gap:20px}.snapshot-copy h3{font-size:32px}.snapshot-copy>p:not(.eyebrow){font-size:16px}.snapshot-steps{gap:11px}}
