/* Kevin30/10 15:36+15:45+15:52: shared tool title and viewport stack. */
.screen{position:sticky;top:0;background:var(--paper)}.screen.lime{background:var(--lime)}.screen.tint{background:var(--tint)}.footer-b2{position:relative;z-index:10;background:var(--paper)}
.hero .tool-heading{display:flex;align-items:center;gap:22px;font-size:102px;line-height:1.08;letter-spacing:-.06em}.tool-heading>svg{width:78px;height:78px;flex:0 0 auto}.tool-heading>span{display:block}.hero-grid{padding-bottom:24px}.next-screen{display:none}
.demo-centre{width:100%;flex:1;min-height:0;display:grid;place-items:center}.demo-player{position:relative;flex:none;width:75%;max-width:840px;aspect-ratio:1440/820;display:block;background:var(--paper);border-radius:12px;box-shadow:0 24px 64px -28px #26315355;cursor:pointer;touch-action:pan-y}.demo-stage{height:100%;width:100%;position:relative;overflow:hidden}.journey-frame{display:block;width:100%;height:100%;object-fit:contain}.demo-cursor{position:absolute;left:50%;top:50%;width:38px;height:48px;pointer-events:none;transform:translate(-3px,-3px);filter:drop-shadow(0 3px 3px #26315366);z-index:2}.demo-cursor svg{width:100%;height:100%;display:block}.click-halo{position:absolute;width:44px;height:44px;margin:-22px 0 0 -22px;border:4px solid var(--blue);border-radius:50%;box-shadow:0 0 0 5px #E4EE99cc;background:#E4EE9944;pointer-events:none;opacity:0;z-index:1}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.document-roll{width:100%;min-height:0;flex:1;overflow:auto;overscroll-behavior:contain;padding:22px 0 32px;scrollbar-width:thin;scrollbar-color:var(--blue) #4458AC12}.document-sheet{width:calc(100% - 480px);max-width:700px;min-width:0;margin:0 auto;background:var(--paper);border-radius:12px;padding:32px;box-shadow:0 22px 50px -30px #26315355}.document-part{position:relative}.document-part pre{font:400 12px/1.75 DM,Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.annotation{position:absolute;width:192px;top:0;color:var(--blue);font:400 13px/1.5 DM}.annotation strong{display:block;font:700 20px/1.25 Jakarta;letter-spacing:-.03em;margin-bottom:9px}.annotation span{display:block;max-width:23ch}.annotation.left{right:calc(100% + 64px);text-align:right}.annotation.right{left:calc(100% + 64px)}.annotation:after{content:'';position:absolute;top:11px;width:48px;height:1px;background:var(--blue)}.annotation:before{content:'';position:absolute;top:8px;width:7px;height:7px;background:var(--blue);border-radius:50%}.annotation.left:after{left:calc(100% + 12px)}.annotation.left:before{left:calc(100% + 57px)}.annotation.right:after{right:calc(100% + 12px)}.annotation.right:before{right:calc(100% + 57px)}
.related-screen{height:100%;display:flex;flex-direction:column;justify-content:center;padding-block:54px}.related-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;width:100%;max-width:1120px}.related-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-height:370px;padding:38px;border-radius:18px;background:var(--paper);color:var(--blue);text-decoration:none;transition:transform .16s}.related-card:hover{transform:translateY(-4px)}.related-icon{display:grid;place-items:center;width:90px;height:90px;border-radius:18px;background:var(--lime);margin-bottom:40px}.related-icon svg{width:52px;height:52px}.related-card h3{font:700 42px/1.15 Jakarta;letter-spacing:-.04em;margin:0 0 16px}.related-card p{font-size:17px;margin:0;max-width:30ch;color:var(--ink)}.related-arrow{font-size:28px;line-height:1;align-self:flex-end;margin-top:auto;padding-top:20px}
@media(min-width:761px) and (max-width:1000px){.hero .tool-heading{font-size:88px;gap:16px}.tool-heading>svg{width:62px;height:62px}.document-sheet{width:calc(100% - 340px);padding:24px}.annotation{width:132px;font-size:11px}.annotation strong{font-size:16px}.annotation.left{right:calc(100% + 40px)}.annotation.right{left:calc(100% + 40px)}.annotation:after{width:24px}.annotation.left:before{left:calc(100% + 33px)}.annotation.right:before{right:calc(100% + 33px)}}
@media(max-width:760px){.hero .tool-heading{font-size:56px;gap:13px;margin-bottom:18px}.tool-heading>svg{width:43px;height:43px}.hero-grid{padding-bottom:28px}.demo-player{max-width:256.5px;border-radius:8px}.demo-cursor{width:26px;height:33px}.click-halo{width:26px;height:26px;margin:-13px 0 0 -13px;border-width:2px;box-shadow:0 0 0 3px #E4EE99cc}.document-roll{padding:6px 0 20px}.document-sheet{width:100%;padding:22px;border-radius:10px}.document-part pre{font-size:12px;line-height:1.75}.annotation{position:relative;width:auto;left:auto!important;right:auto!important;top:auto;text-align:left!important;margin:12px 0 24px;font-size:12px;border-left:2px solid var(--blue);padding-left:13px}.annotation strong{font-size:19px;margin-bottom:6px}.annotation span{max-width:none}.annotation:after{left:-2px!important;right:auto!important;top:100%;width:1px;height:15px}.annotation:before{left:-5px!important;right:auto!important;top:calc(100% + 13px);width:7px;height:7px}.related-screen{padding-block:38px}.related-grid{grid-template-columns:1fr;gap:16px}.related-card{min-height:195px;padding:24px}.related-icon{width:54px;height:54px;margin-bottom:18px;border-radius:12px}.related-icon svg{width:32px;height:32px}.related-card h3{font-size:31px;margin-bottom:10px}.related-card p{font-size:14px;line-height:1.5;max-width:24ch}.related-arrow{position:absolute;right:24px;bottom:24px;font-size:25px}.related-screen .section-head{margin-bottom:26px}}
@media(prefers-reduced-motion:reduce){.screen{position:relative;top:auto}html{scroll-behavior:auto}.related-card{transition:none}.demo-cursor,.click-halo{display:none}}
@media(min-width:761px){.document-part pre{font-size:11px;line-height:1.7}}
#result .section-head{margin-bottom:20px}.document-roll{padding-top:6px}
html{scroll-behavior:auto}
/* At390, keep the real desktop journey readable in a compact horizontal frame. */
@media(max-width:760px){.demo-player{width:100%;max-width:342px}.demo-cursor{width:32px;height:40px}}

/* BRAND-2 30/10 21:40 mobile review: no hero artifact; action-sized camera. */
@media(max-width:760px){
 .hero-grid{display:flex;flex-direction:column;justify-content:center;padding-block:32px;gap:0}
 .hero-copy{display:block!important}.hero-image{display:none}
 .hero .tool-heading{margin-bottom:32px}.hero .sub{font-size:32px;max-width:16ch;margin-bottom:24px}
 .hero .lede{font-size:17px;line-height:1.6;margin-bottom:32px}
 .hero-action{flex-direction:column;align-items:flex-start;gap:18px}
 .hero-action .allowance{font-size:13px;max-width:34ch}
 .demo-player{aspect-ratio:342/410;max-height:calc(100svh - 230px);width:100%;max-width:342px;border-radius:14px}
 .demo-stage .journey-frame{position:absolute;max-width:none;object-fit:fill;transform-origin:0 0}
 .demo-cursor{width:32px;height:40px}
}
@media(max-width:760px) and (max-height:700px){.hero .tool-heading{margin-bottom:20px}.hero .sub{font-size:28px;margin-bottom:18px}.hero .lede{font-size:16px;margin-bottom:24px}.hero-action{gap:12px}}
