/* Mobile has its own reading order and controls. Desktop rules stay in their original files. */
.mobile-menu-toggle{display:none}
@media(max-width:1023px){
 .nav{height:68px;padding:0 22px;gap:14px}
 .nav>a>img{width:126px}
 .nav>.button{margin-left:auto;font-size:12px;padding:12px 16px;gap:9px;min-height:44px}
 .mobile-menu-toggle{display:flex;width:44px;height:44px;border:1px solid #dbe1d7;border-radius:50%;background:transparent;align-items:center;justify-content:center;flex-direction:column;gap:5px;flex-shrink:0}
 .mobile-menu-toggle span{width:17px;height:1px;background:#2b3b2d;transition:transform .2s}
 .mobile-menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3px) rotate(45deg)}
 .mobile-menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3px) rotate(-45deg)}
 .nav nav{display:none;position:absolute;top:68px;left:0;right:0;background:#fffffff7;backdrop-filter:blur(22px);padding:14px 22px 24px;border-bottom:1px solid #dbe3d5;box-shadow:0 16px 25px #2233270a;gap:0}
 .nav.menu-open nav{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}
 .nav nav a{padding:17px 0;font-size:16px;border-bottom:1px solid #e5e9e1}
}
@media(max-width:760px){
 html{scroll-padding-top:84px}
 body{overflow-x:clip}
 .wrap{padding-left:22px;padding-right:22px}
 h2,.journey-map-section h2,.journey-section h2,.analytics-intro h2{font-size:clamp(34px,9vw,46px);line-height:1.09;letter-spacing:-.045em;text-wrap:pretty}
 h2 br{display:none}h2 span{display:inline}
 .section-intro{margin-bottom:30px}
 .eyebrow{font-size:10px;letter-spacing:.1em;margin-bottom:17px;line-height:1.5}
 .lead,.section-intro .lead,.journey-map-section .lead,.analytics-intro .lead{font-size:17px;line-height:1.55;margin-top:18px}
 .button{min-height:48px;padding:14px 19px;gap:15px;font-size:13px}
 .actions{flex-wrap:wrap;justify-content:flex-start;gap:12px}
 /* A clear introduction, then a portrait crop of the same continuous film. */
 .hero-cinema{height:auto;min-height:0;max-height:none;background:#263b2e}
 .hero-cinema .hero-inner{display:block;padding:0;height:auto}
 .hero-cinema .hero-copy{max-width:none;background:#fff;color:#26372d;padding:34px 22px 30px;text-align:left}
 .hero-cinema h1{font-size:clamp(38px,10.1vw,62px);line-height:1.05;letter-spacing:-.052em;text-wrap:balance}
 .hero-cinema .hero-line{white-space:normal;display:block;color:#23352b!important}
 .hero-cinema .hero-line.hero-accent{color:#78906f!important;margin-top:5px}
 .hero-cinema .lead{font-size:16px;line-height:1.55;margin:20px 0 0;color:#687363;max-width:540px}
 .hero-cinema .lead strong{color:#33492f;font-weight:500}
 .hero-cinema .actions{margin-top:23px;gap:10px}
 .hero-cinema .button{color:#fff;background:#2f4436;border-color:#2f4436;font-size:13px}
 .hero-cinema .button.secondary{color:#334a36;background:transparent;border-color:#c7d1c1;backdrop-filter:none}
 .hero-films{top:var(--mobile-copy-height,360px)}
 .hero-films video{object-position:72% center}
 .hero-cinema:before{top:var(--mobile-copy-height,360px);background:linear-gradient(180deg,#12271a30,transparent 30%,#11221830 65%,#11221885)}
 .hero-cinema .hero-demo{height:560px;max-width:none;margin:0;padding:18px 20px 15px;position:relative;justify-content:flex-end}
 .hero-cinema .hero-people{top:16px;left:16px;right:16px;width:calc(100% - 32px);justify-content:space-between;gap:0;padding:5px;border-radius:40px}
 .hero-cinema .hero-people button{flex:1;justify-content:center;padding:8px 5px;gap:7px;font-size:13px;min-height:47px;min-width:0}
 .hero-cinema .hero-people small{font-size:10px}
 .hero-cinema .hero-people button>i{width:25px;height:25px}
 .hero-story{width:100%;max-width:none}
 .hero-sales-path{font-size:10px;padding:10px;gap:5px;margin-bottom:8px;background:#1e382b88}
 .hero-story-stage{height:292px;margin-top:0}
 .hero-cinema .story-bubble{padding:13px 14px;right:10px}
 .hero-cinema .story-customer{left:20px;right:0}
 .story-bubble p{font-size:14px;line-height:1.45}
 .hero-cinema .story-speaker{font-size:12px}.story-role{font-size:10px}
 .hero-cinema .story-outcome h3{font-size:26px;line-height:1.12}
 .hero-cinema .story-file-label strong{font-size:12px}
 .hero-story-controls{margin-top:5px;gap:14px}
 .hero-story-controls button{min-height:44px;font-size:12px}
 .hero-cinema+.customers{height:88px;padding:12px 0}
 .logo-track{flex:0 0 760px;min-width:760px;gap:35px;padding:0 18px;animation-duration:27s}
 .hero-cinema+.customers .logo-track img{height:31px;width:111px}
 .hero-cinema+.customers .logo-track img:first-child{height:38px}
 .logo-viewport:hover .logo-track{animation-play-state:running}
 /* Data comes together above the brain, then branches into customer responses. */
 .journey-map-section.wrap{padding:58px 22px 48px;scroll-margin-top:68px}
 .journey-map-section .section-intro{padding:0;margin:0 0 24px}
 .journey-map-section .journey-map{padding:0;overflow:visible}
 .jm-industries{padding:0 0 20px;margin:0 0 25px}
 .jm-industry-blocks{display:flex;flex-wrap:wrap;gap:5px 12px;justify-content:flex-start}
 .jm-industry-block{padding:4px 0;min-height:29px;font-size:12px;gap:5px}
 .jm-industry-block svg{width:16px;height:16px}
 .jm-columns{display:flex;flex-direction:column;gap:32px}
 .jm-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .jm-column-heading{height:auto;min-height:0;margin:0 0 12px}
 .jm-column-heading>span{font-size:13px;font-weight:550;max-width:none}
 .jm-inputs>.jm-column-heading{grid-column:1/-1;margin-bottom:6px}
 .jm-inputs .jm-source{padding:12px 10px;margin:0;border-radius:9px;min-width:0;background:#fafff7;position:relative;z-index:1}
 .jm-source-label{display:block;margin:0 0 7px;min-height:50px}
 .jm-source-icon{display:block;margin-bottom:6px;font-size:17px}
 .jm-source-label strong{display:block;font-size:12px;line-height:1.35;font-weight:550}
 .jm-source>p{font-size:11px;line-height:1.5;color:#5e7053}
 .jm-engine-column>.jm-column-heading{display:block;margin:0;text-align:center}
 .jm-engine-column{margin-top:6px}
 .jm-engine{min-height:0}
 .jm-brain-visual{min-height:270px;height:270px}
 .jm-brain-visual .jm-sculptural-brain,.jm-brain-energy{height:270px}
 .jm-journeys{padding-left:18px}
 .jm-journeys>.jm-column-heading{margin-bottom:15px}
 .jm-path{padding:15px 16px;margin-bottom:14px;border-radius:12px}
 .jm-path-header h3{font-size:15px}.jm-avatar{height:28px;width:28px;font-size:12px}
 .jm-reply{margin:9px 0 11px}.jm-reply>p{font-size:14px;line-height:1.4;color:#4e6244}
 .jm-path-next{display:flex;gap:12px;align-items:center;padding-top:10px}
 .jm-path-next>span{font-size:10px;max-width:55px;white-space:normal}
 .jm-path-next>p{font-size:13px;line-height:1.4;margin:0;color:#405636}
 .jm-feedback{margin:12px 0 0;padding:18px;border-radius:10px}
 .jm-feedback strong{font-size:16px;line-height:1.35;display:block}.jm-feedback p{font-size:13px;margin-top:8px}
 /* Tapping advances both the dialogue and the model's reasoning. No scroll trap. */
 .journey-section{padding:58px 0 48px;scroll-margin-top:68px}
 .journey-section>.wrap{padding:0 16px}
 .journey-section .section-intro{padding:0 6px;text-align:left;margin-bottom:28px}
 .journey-scroll{height:auto!important;scroll-margin-top:82px}
 .journey-console{position:relative;top:auto;height:auto;min-height:0;max-height:none;display:block;border-radius:14px}
 .demo-selection{padding:0 14px}
 .industry-options{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:15px 0}
 .industry-options button{padding:11px 7px;font-size:13px;min-height:44px;min-width:0}
 .journey-options-row{display:block;padding:12px 0 15px;min-height:0}
 .journey-options-row>span:first-child{display:block;font-size:11px;margin-bottom:10px}
 .journey-options{display:flex;flex-wrap:wrap;gap:6px}
 .journey-options button{min-height:44px;padding:9px 12px;font-size:12px}
 .demo-workspace{display:flex;flex-direction:column;min-height:0}
 .conversation-panel{border-right:0;border-bottom:1px solid #3c493a}
 .conversation-heading{padding:15px 17px}
 .conversation-heading strong{font-size:16px}.conversation-heading p{font-size:12px}
 .demo-thread{flex:none;height:290px;padding:0 16px 17px;overscroll-behavior:auto}
 .demo-message{font-size:14px;line-height:1.5;padding:12px 14px;margin-top:12px;max-width:96%}
 .demo-message small{font-size:11px}.demo-date{font-size:11px;margin-top:12px}
 .reasoning-panel{padding:22px 17px 13px}
 .reasoning-top .eyebrow{font-size:10px}
 .intent-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:12px;flex:none;margin:15px 0 12px;align-items:end}
 .intent-label{font-size:10px;line-height:1.3;display:block}
 .intent-value{gap:5px;flex-wrap:wrap;margin-top:7px}
 .intent-value strong{font-size:58px}.intent-value>span{font-size:14px}.intent-value small{font-size:11px;padding:3px 5px}
 .intent-chart svg{height:82px}.chart-key{font-size:8px;gap:8px}
 .decision-card{padding:15px 0;min-height:0}.decision-card h3{font-size:19px;line-height:1.35}
 .remembered{padding:12px}.remembered>p{font-size:12px;line-height:1.5}
 .demo-controls{margin-top:12px;gap:10px;justify-content:space-between;min-height:48px}
 .demo-controls>span{font-size:11px;max-width:110px;line-height:1.4}
 .demo-controls button{min-height:46px;border:1px solid #798b6e;border-radius:28px;padding:10px 16px;background:#e0e9d6;color:#2c422b;font-size:13px;white-space:nowrap}
 /* One team, one continuous section. */
 .team-section.wrap{padding:58px 22px 38px}
 .team-section .section-intro{margin-bottom:28px}
 .account-team{margin-top:0}
 .team-section .dedicated-team-roles .team-experience{display:block;padding:0 0 26px;border-top:0;margin-bottom:0}
 .team-section .team-experience>strong{display:block;font-size:58px;line-height:1.05}
 .team-experience>strong>span{font-size:12px;margin-bottom:10px}
 .team-section .team-experience>p{font-size:16px;margin-top:15px;line-height:1.5}
 .team-section .dedicated-role{display:block;padding:26px 0;border-bottom:1px solid #ccd8c4}
 .team-section .dedicated-role+.dedicated-role{border-top:0}
 .team-section .dedicated-role h3{font-size:26px;max-width:320px;margin-bottom:13px}
 .team-section .dedicated-role strong{font-size:16px;line-height:1.45;display:block}
 .team-section .dedicated-role p{font-size:15px;line-height:1.55;margin-top:9px;max-width:none}
 /* The product demo becomes a phone dashboard, not a scaled desktop screenshot. */
 .signals-section{padding:58px 0 48px}
 .analytics-section{padding:0 18px}
 .analytics-intro{padding:0 4px;margin-bottom:28px}
 .analytics-intro .lead{min-height:0}
 .ask-demo{border-radius:14px;box-shadow:0 15px 35px #38503008}
 .ask-toolbar{height:auto;min-height:65px;display:block;padding:12px}
 .ask-tool-name{display:none}
 .ask-toolbar .feature-switch{display:flex;width:100%;gap:3px}
 .ask-toolbar .feature-switch button{min-height:44px;flex:1;padding:9px;font-size:13px}
 .ask-stage{height:360px;transition:height .5s ease}
 .ask-demo[data-phase=result] .ask-stage{height:740px}
 .ask-demo[data-mode=testing] .ask-stage{height:580px}
 .ask-demo[data-mode=testing][data-phase=result] .ask-stage{height:730px}
 .ask-composer{top:88px;width:calc(100% - 28px)}
 .ask-prompt-label{font-size:23px;max-width:260px;margin:0 auto 22px}
 .ask-input-shell{gap:8px;padding:12px;border-radius:12px;align-items:center}
 .ask-input-symbol{display:none}
 .ask-input-shell input{display:none}
 .mobile-question{display:block;flex:1;min-width:0;font:400 17px/1.5 var(--font);color:#334b31;white-space:normal;min-height:52px;overflow-wrap:break-word}
 .mobile-question:empty:before{content:'Ask about your Journeys…';color:#7e8c71}
 .ask-input-shell button{height:44px;width:44px}
 .ask-prompt-hint{font-size:11px;line-height:1.5;margin-top:16px}
 .ask-demo[data-phase=loading] .ask-composer,.ask-demo[data-phase=result] .ask-composer{top:16px;width:calc(100% - 28px)}
 .ask-demo[data-phase=loading] .ask-input-shell,.ask-demo[data-phase=result] .ask-input-shell{padding:10px 12px}
 .ask-demo[data-phase=loading] .mobile-question,.ask-demo[data-phase=result] .mobile-question{font-size:14px;min-height:44px}
 .ask-demo[data-phase=loading] .ask-input-shell button,.ask-demo[data-phase=result] .ask-input-shell button{width:40px;height:44px}
 .ask-loading{top:170px;padding:0 25px}.ask-loading strong{font-size:18px}.ask-loading>span{font-size:12px;line-height:1.5}
 .ask-dashboard{inset:110px 14px auto}
 .dashboard-heading{gap:10px;margin-bottom:16px}
 .dashboard-heading h3{font-size:23px}.dashboard-eyebrow{font-size:10px;color:#697e59;line-height:1.5}
 .dashboard-period{font-size:10px;padding:6px 8px;text-align:right}
 .ask-kpis{gap:7px;margin-bottom:12px}
 .ask-kpis>div{padding:12px 8px;min-width:0;border-radius:8px}
 .ask-kpis span{font-size:10px;min-height:30px;line-height:1.4;color:#627954;margin-bottom:8px}
 .ask-kpis strong{font-size:28px;letter-spacing:-.05em}
 .ask-dashboard-detail{display:block}
 .performance-plot,.word-findings{padding:16px 14px;margin-bottom:12px;border-radius:9px}
 .plot-heading{gap:8px;align-items:flex-start}.plot-heading strong{font-size:13px}.plot-heading>span{font-size:10px;max-width:65px;text-align:right}
 .weekly-chart{height:155px;gap:23px;padding:17px 14px 19px}
 .weekly-chart strong{font-size:11px}.weekly-chart>div>span{font-size:10px}
 .detected-terms{gap:5px;margin-top:13px}.detected-terms>span{font-size:10px;padding:6px;gap:6px}
 .word-findings blockquote{font-size:14px;margin:13px 0}
 .word-alert>span{font-size:12px;line-height:1.4}.word-alert small{font-size:10px;color:#667d56}
 .ask-demo-footer{gap:20px;padding:7px 15px}.ask-demo-footer button{min-height:44px;font-size:13px}.ask-demo-progress{max-width:none}
 .test-composer{inset:25px 16px auto}
 .test-compose-title h3{font-size:26px}
 .test-variants{grid-template-columns:1fr;gap:8px;margin-top:22px}
 .test-variants>div{padding:13px;gap:12px}.test-variants>i{font-size:10px}
 .test-variants strong{font-size:14px;margin-top:4px}
 .test-settings{gap:12px;grid-template-columns:1fr 1fr;margin:17px 0;padding:17px 0}
 .test-settings>span{font-size:10px}.test-settings strong{font-size:13px;margin-top:5px}
 .test-composer button{min-height:44px;font-size:13px}
 .test-dashboard{inset:24px 15px auto}
 .test-dashboard .dashboard-heading{display:block}.test-dashboard .dashboard-period{display:inline-block;margin-top:12px}
 .test-result-layout{display:block;margin-top:20px}
 .test-comparison{padding:18px 14px}
 .test-result-row strong{font-size:13px}.test-result-row b{font-size:23px}
 .test-result-row small,.test-comparison>p{font-size:11px;line-height:1.5}
 .test-uplift{padding:22px;margin-top:15px}.test-uplift>strong{font-size:55px;margin-top:5px}.test-uplift p{font-size:15px;margin-top:6px}.test-uplift small{font-size:11px;margin-top:12px}
 /* Enterprise illustrations and evidence each keep their own breathing room. */
 .enterprise-section{padding-top:58px;padding-bottom:48px}
 .enterprise-editorial>article{display:flex;flex-direction:column;gap:23px;align-items:stretch;padding:27px 0}
 .enterprise-editorial .enterprise-copy{max-width:none;order:0}
 .enterprise-editorial .enterprise-copy h3{font-size:25px}
 .enterprise-editorial .enterprise-copy p{font-size:16px;line-height:1.5;margin-top:12px}
 .enterprise-editorial .enterprise-art{width:100%;height:210px;order:1}
 .data-motion-labels{left:8px;right:8px;bottom:15px;gap:4px;font-size:9px}.data-motion-labels span{padding:5px}
 .rule-sheet{width:calc(100% - 32px);padding:18px}
 .rule-sheet>div{font-size:12px;gap:12px}.rule-sheet b{font-size:10px}
 .enterprise-editorial .control-modes{gap:10px;height:215px}
 .control-mode{padding:18px 10px;border-radius:12px}
 .mode-name{font-size:16px}.mode-flow{margin-top:23px}.mode-flow>span{font-size:11px}.mode-flow strong{padding:10px 5px;font-size:11px;line-height:1.4}
 .enterprise-editorial .compliance-logos{height:140px;gap:15px}
 .enterprise-editorial .compliance-logos img{width:26%;height:104px}
 .enterprise-editorial .compliance-logos img[src*=gdpr]{width:29%;height:112px}
 .enterprise-bottom{display:block;margin:0;padding-top:20px}
 .enterprise-bottom p{font-size:14px;line-height:1.5;margin-bottom:18px}
 .enterprise-bottom .button{font-size:12px}
 .results{padding-top:58px;padding-bottom:50px}
 .section-top{display:block;margin-bottom:27px}.section-top .eyebrow{margin-bottom:14px}
 .result-grid{display:block}
 .result-grid article{padding:27px 0;border:0;border-top:1px solid #dfe5dc;border-radius:0;background:transparent}
 .result-grid article+article{border-left:0}
 .result-grid article>img{height:35px;width:132px;object-position:left;margin-bottom:23px}
 .result-grid .metric{font-size:76px;line-height:1.1;margin:0 0 12px}
 .result-grid h3{font-size:23px;min-height:0;max-width:300px}
 .result-grid p{font-size:15px;min-height:0;margin-top:12px}
 .result-grid .text-button{min-height:44px;font-size:13px;margin-top:13px}
 .closing{padding:58px 0}.closing h2{font-size:43px}.closing .wrap{text-align:left}.closing .lead{font-size:17px;margin:20px 0 0}.closing .actions{justify-content:flex-start;margin-top:25px}.closing .text-button{font-size:13px;min-height:44px}
 footer.wrap{padding:35px 22px 25px}.footer-main{display:flex;flex-direction:column;gap:22px;align-items:flex-start}.footer-main>p{font-size:14px}.footer-main>div{display:flex;flex-wrap:wrap;gap:6px 20px}.footer-main>div a,.footer-link{font-size:13px;min-height:44px;display:inline-flex;align-items:center}
 .footer-bottom{display:block;margin-top:20px;padding-top:22px}.footer-bottom>span{font-size:12px}.footer-bottom>div{display:flex;flex-wrap:wrap;gap:0 20px;margin-top:13px}.footer-bottom a{font-size:12px;min-height:44px;display:inline-flex;align-items:center}
 dialog{width:calc(100% - 28px)!important;max-width:540px!important;max-height:calc(100dvh - 36px);padding:23px!important;border-radius:18px;overflow-y:auto;overscroll-behavior:contain}
 dialog h2{font-size:34px;line-height:1.1}.dialog-bar{gap:12px}.dialog-bar button{min-height:44px;white-space:nowrap}.dialog-bar .eyebrow{font-size:9px}
 dialog p,.story-body{font-size:15px!important;line-height:1.55!important}
 #calc-form{grid-template-columns:1fr;gap:15px;margin-top:25px}#calc-form label{font-size:12px}#calc-form input{font-size:16px;min-height:48px;width:100%}.calc-output{padding:18px}.calc-output output{font-size:42px}dialog>.button{width:100%;font-size:12px;margin-top:20px}
}
.mobile-question{display:none}
@media(max-width:760px){.mobile-question{display:block}}
@media(max-width:359px){
 .nav{padding:0 14px;gap:9px}.nav>a>img{width:108px}.nav>.button{padding:10px 12px;font-size:11px}
 .hero-cinema .hero-copy{padding-left:18px;padding-right:18px}.hero-cinema .button{padding:13px 14px;font-size:12px;gap:8px}
 .hero-cinema .hero-people button>i{display:none}
 .hero-cinema .hero-demo{padding-left:16px;padding-right:16px}
 .jm-inputs{gap:6px}.jm-inputs .jm-source{padding:10px 7px}.jm-source-label strong{font-size:11px}.jm-source>p{font-size:10px}
 .intent-layout{grid-template-columns:1fr 1fr;gap:7px}.intent-value strong{font-size:51px}.intent-value small{font-size:9px}.intent-value>span{font-size:12px}
 .ask-kpis strong{font-size:24px}.ask-kpis>div{padding:11px 6px}.ask-kpis span{font-size:9px}
 .ask-demo[data-phase=result] .ask-stage{height:800px}.ask-demo[data-mode=testing] .ask-stage{height:610px}.ask-demo[data-mode=testing][data-phase=result] .ask-stage{height:770px}
 .mode-name{font-size:14px}.mode-flow strong{font-size:10px}.control-mode{padding:16px 7px}
}
@media(prefers-reduced-motion:reduce){.ask-stage,.mobile-menu-toggle span{transition:none}}
/* Final spacing and small-screen controls. */
.mobile-industry-field{display:none}
@media(max-width:760px){
 .hero-cinema .actions{display:flex;flex-direction:row;flex-wrap:nowrap}
 .hero-cinema .actions .button{font-size:12px;padding:13px 15px;gap:11px}
 .hero-films video{object-position:52% center}
 .hero-story-stage{mask-image:linear-gradient(180deg,transparent,#000 22px,#000)}
 .mobile-industry-field{display:flex;gap:15px;align-items:center;padding:14px 0 12px;border-bottom:1px solid #46513e;font-size:11px;color:#c1cdb8}
 .mobile-industry-field select{font:500 16px var(--font);color:#e9efdf;background:#2f3d2e;border:1px solid #66795a;border-radius:8px;padding:11px 10px;min-height:46px;min-width:0;flex:1}
 .industry-options{display:none}
 .journey-options-row{padding:10px 0}.journey-options-row>span:first-child{display:none}
 .demo-thread{height:230px}
 .reasoning-panel{padding-top:15px}.reasoning-top{display:none}
 .intent-layout{margin:0 0 9px}.intent-chart svg{height:64px}
 .remembered{display:none}
 .decision-card{padding:12px 0}.decision-card h3{font-size:17px;line-height:1.4}
 .demo-controls{margin-top:2px}
 .weekly-chart>div{max-height:none}
 .result-grid article{min-height:0}
 .result-grid p{margin-bottom:0}
 .result-grid .text-button{margin-top:19px}
}
@media(max-width:359px){.hero-cinema .actions .button{font-size:11px;padding:13px 12px;gap:8px}}
@media(max-width:760px){
 .ask-demo[data-phase] .ask-stage,.ask-demo[data-mode=testing][data-phase] .ask-stage{height:var(--mobile-stage-size,360px)}
}
@media(max-width:760px){h2 br{display:initial}}
@media(max-width:760px){.hero-sales-path{display:none}}
/* v34: the film is the opening screen, with the interface layered over it. */
.results-controls{display:none}
@media(max-width:760px){
 .nav{margin-bottom:-68px}
 .nav.over-hero:not(.menu-open){background:transparent;border-color:transparent;backdrop-filter:none}
 .nav.over-hero:not(.menu-open)>a>img{filter:brightness(0) invert(1)}
 .nav.over-hero:not(.menu-open)>.button{background:#ffffffec;border-color:transparent;color:#243b2b}
 .nav.over-hero:not(.menu-open) .mobile-menu-toggle{background:#ffffff12;border-color:#ffffff60;backdrop-filter:blur(10px)}
 .nav.over-hero:not(.menu-open) .mobile-menu-toggle span{background:#fff}
 .hero-cinema{height:100svh;min-height:560px;max-height:none;background:#2c3e31}
 .hero-cinema .hero-inner{height:100%;position:relative}
 .hero-films{inset:0}
 .hero-cinema:before{inset:0;background:linear-gradient(180deg,#13281bcc 0%,#18302566 24%,transparent 46%,#152b222e 70%,#11221888 100%)}
 .hero-films video{object-position:50% center}
 .hero-cinema .hero-copy{position:absolute;top:96px;left:22px;right:22px;padding:0;background:transparent;z-index:3}
 .hero-cinema h1{font-size:clamp(26px,7.5vw,34px);line-height:1.08;letter-spacing:-.035em;text-wrap:initial}
 .hero-cinema .hero-line,.hero-cinema .hero-line.hero-accent{color:#fff!important;white-space:normal;margin:0}
 .hero-cinema .lead{display:none}
 .hero-cinema .actions{margin-top:20px}
 .hero-cinema .actions .button{background:#fff;color:#2d4233;border-color:#fff;font-size:13px;min-height:46px;padding:12px 20px}
 .hero-cinema .actions .button.secondary{display:none}
 .hero-cinema .hero-demo{position:absolute;inset:0;height:100%;padding:0;max-width:none;pointer-events:none}
 .hero-cinema .hero-people{position:absolute;top:auto;bottom:18px;left:20px;right:20px;width:auto;pointer-events:auto;padding:4px;background:#1b34245c;border-color:#ffffff35}
 .hero-cinema .hero-people button{min-height:45px;padding:6px 5px}
 .hero-story{position:absolute;left:22px;right:22px;bottom:83px;width:auto;pointer-events:auto}
 .hero-story-stage{height:260px}
 .hero-story-controls{height:40px;margin:0}
 .hero-story-controls button{min-height:40px}
 .hero-cinema .story-bubble p{font-size:14px}
 .hero-cinema .story-bubble.is-previous{opacity:.65}
 /* Native page scrolling drives a compact sticky persuasion demo. */
 .journey-scroll{height:calc(100svh + 1450px)!important;scroll-margin-top:80px}
 .journey-console{position:sticky;top:80px;height:calc(100svh - 92px);min-height:480px;max-height:850px;display:flex;flex-direction:column}
 .demo-selection{flex-shrink:0;padding:0 12px}
 .mobile-industry-field{padding:9px 0;gap:12px}
 .mobile-industry-field select{min-height:42px;padding:8px 10px}
 .journey-options-row{padding:7px 0}
 .journey-options button{padding:7px 10px;min-height:38px}
 .demo-workspace{flex:1;min-height:0;display:flex;flex-direction:column}
 .conversation-panel{flex:1;min-height:125px}
 .conversation-heading{padding:10px 14px;flex-shrink:0}.conversation-heading strong{font-size:14px}
 .customer-avatar{width:32px;height:32px}
 .demo-thread{height:auto;min-height:0;flex:1;overflow:hidden;padding:0 13px 12px;touch-action:pan-y}
 .demo-message{font-size:13px;padding:10px 12px;margin-top:10px}
 .demo-date{margin:10px 0 0;font-size:10px}
 .reasoning-panel{flex:none;padding:12px 14px 8px}
 .intent-layout{margin:0 0 6px;grid-template-columns:.9fr 1.1fr}
 .intent-value strong{font-size:49px}.intent-label{font-size:10px}.intent-chart svg{height:50px}.chart-key{display:none}
 .decision-card{padding:9px 0}.decision-card h3{font-size:15px;line-height:1.35;margin-top:5px}.decision-kicker{font-size:10px}
 .demo-controls{min-height:42px;margin:0}.demo-controls button{min-height:40px;padding:8px 13px;font-size:12px}
 .demo-controls>span{max-width:155px;font-size:11px}
 /* Customer stories: one slide at a time, with swipe and explicit controls. */
 .results .result-grid{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 0 3px;align-items:stretch;overscroll-behavior-x:contain}
 .results .result-grid::-webkit-scrollbar{display:none}
 .results .result-grid>article{flex:0 0 100%;min-width:0;scroll-snap-align:start;border:1px solid #dce5d4;border-radius:16px;background:#fafff7;padding:27px 24px;display:flex;flex-direction:column}
 .results .result-grid>article+article{border-left:1px solid #dce5d4}
 .results .result-grid article>img{height:34px;margin-bottom:28px}
 .results .result-grid .metric{font-size:76px;line-height:1;margin:0 0 19px}
 .results .result-grid h3{font-size:24px;min-height:58px}
 .results .result-grid p{font-size:14px;min-height:75px;margin:12px 0 17px}
 .results .result-grid .text-button{margin-top:auto;font-size:12px;min-height:44px}
 .results-controls{display:flex;justify-content:space-between;align-items:center;margin-top:16px;gap:20px}
 .results-arrows{display:flex;gap:8px}
 .results-arrows button{display:grid;place-items:center;width:44px;height:44px;border:1px solid #c7d4be;background:#fafff6;border-radius:50%;color:#3f5936}
 .results-arrows button:disabled{opacity:.35;cursor:default}
 .results-arrows svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}
 .results-dots{display:flex;gap:0}
 .results-dots button{width:36px;height:44px;display:grid;place-items:center;background:none;border:0;padding:0}
 .results-dots button:before{content:'';display:block;width:7px;height:7px;background:#bccbb1;border-radius:8px;transition:width .25s,background .25s}
 .results-dots button[aria-current=true]:before{width:24px;background:#5b7850}
}
@media(max-width:760px) and (max-height:690px){
 .hero-cinema .hero-copy{top:88px}.hero-cinema h1{font-size:26px}.hero-cinema .actions{margin-top:14px}
 .hero-story-stage{height:215px}.hero-cinema .story-bubble{padding:11px 12px}.hero-cinema .story-bubble p{font-size:13px}
 .hero-cinema .story-context h3,.hero-cinema .story-outcome h3{font-size:22px;margin:5px 0 10px}
 .hero-cinema .story-data span{font-size:12px;padding-bottom:5px}.hero-cinema .story-data{gap:5px}
 .reasoning-panel{padding-top:8px}.intent-value strong{font-size:40px}.intent-chart svg{height:40px}
 .decision-card h3{font-size:13px}.decision-card{padding:6px 0}.demo-message{font-size:12px}
}
@media(max-width:760px) and (prefers-reduced-motion:reduce){
 .journey-scroll{height:auto!important}.journey-console{position:relative;top:auto;height:auto;min-height:0;max-height:none}.conversation-panel{flex:none}.demo-thread{height:230px;flex:none}
}
@media(max-width:760px){.hero-cinema .hero-story{width:calc(100% - 44px);right:auto}}
/* More room for the customer conversation and simpler mobile actions. */
@media(max-width:760px){
 .nav>.button{margin-right:10px}
 .hero-cinema .actions{display:none}
 .jm-source-label{min-height:34px}
 .journey-section>.wrap{padding-left:8px;padding-right:8px}
 .journey-console{top:74px;height:calc(100svh - 80px);min-height:480px}
 .journey-scroll{scroll-margin-top:74px}
 .mobile-industry-field{padding:6px 0}.mobile-industry-field select{min-height:40px;font-size:16px}
 .journey-options-row{padding:6px 0}.journey-options button{min-height:36px;padding:6px 10px}
 .conversation-heading{padding:8px 14px}
 .demo-thread{padding:0 12px 12px}.demo-message{font-size:14px;line-height:1.45;padding:11px 13px}
 .reasoning-panel{padding:8px 14px 5px}
 .intent-value strong{font-size:40px}.intent-chart svg{height:42px}.intent-layout{margin-bottom:3px}
 .decision-card{padding:6px 0}.decision-card h3{font-size:14px;line-height:1.35}
 .demo-controls{min-height:38px}.demo-controls button{min-height:38px;padding:7px 14px}
}
@media(max-width:760px) and (max-height:690px){
 .conversation-heading{padding:6px 12px}.conversation-heading .customer-avatar{height:25px;width:25px;font-size:12px}.conversation-heading p{display:none}
 .demo-message{font-size:13px;padding:9px 11px}.intent-value strong{font-size:34px}.intent-chart svg{height:33px}.decision-card h3{font-size:13px}
}
@media(max-width:760px) and (prefers-reduced-motion:reduce){.journey-console{height:auto;min-height:0;top:auto}.demo-thread{height:320px}}
/* The company carousel begins after the full opening viewport. */
@media(min-width:1024px){
 .hero-cinema{height:calc(100svh - 78px);height:calc(100dvh - 78px);max-height:none}
}
@media(min-width:761px) and (max-width:1023px){
 .hero-cinema{height:calc(100svh - 68px);height:calc(100dvh - 68px);max-height:none}
}
@media(max-width:760px){
 .hero-cinema{height:100svh;height:100dvh;max-height:none}
}
/* Restore the value proposition inside the full-screen mobile hero. */
@media(max-width:760px){
 .hero-cinema .hero-copy .lead{display:block;font-size:15px;line-height:1.5;max-width:440px;margin-top:18px;color:#e4ebdf;text-shadow:0 1px 12px #10221866}
 .hero-cinema .hero-copy .lead strong{color:#fff;font-weight:500}
 .hero-cinema:before{background:linear-gradient(180deg,#13281bd9 0%,#18302585 31%,#18302515 48%,#152b222e 70%,#11221888 100%)}
}
@media(max-width:760px) and (max-height:690px){
 .hero-cinema .hero-copy .lead{font-size:14px;line-height:1.4;margin-top:14px}
 .hero-cinema .story-context h3{font-size:18px;line-height:1.15;margin:4px 0 9px}
 .hero-cinema .story-context .story-data{gap:4px}.hero-cinema .story-context .story-data span{font-size:11px;line-height:1.35;padding-bottom:4px}
 .hero-cinema .story-context>small{font-size:9px;margin-top:8px}
}

/* A shared branch rail and a full-screen reading space for the conversation. */
@media(max-width:760px){
 .jm-journeys{padding-left:30px}
 .jm-journeys>.jm-column-heading{margin-bottom:30px;text-align:center}
 .jm-wire{stroke-linecap:round;stroke-linejoin:round}
 .journey-section>.wrap{padding-left:0;padding-right:0}
 .journey-section .section-intro{padding-left:22px;padding-right:22px}
 .journey-scroll{height:calc(100svh + 2000px)!important;scroll-margin-top:68px}
 .journey-console{top:68px;height:calc(100dvh - 68px);min-height:0;max-height:none;border-left:0;border-right:0;border-radius:0}
 .demo-selection{padding:0 16px}
 .demo-thread{padding:0 16px 16px}
 .demo-message{font-size:16px;line-height:1.45;padding:12px 14px;max-width:94%;margin-top:12px}
 .demo-message small{font-size:11px}
 .reasoning-panel{padding:9px 16px 7px}
 .intent-layout{grid-template-columns:1fr 1fr;gap:10px}
 .decision-card p{font-size:13px;line-height:1.4}
}
@media(max-width:760px) and (max-height:690px){
 .demo-message{font-size:15px;padding:10px 12px;margin-top:10px}
 .reasoning-panel{padding-top:6px}
 .decision-card h3{font-size:13px}
}
@media(max-width:760px) and (prefers-reduced-motion:reduce){
 .journey-scroll{height:auto!important}.journey-console{height:auto;top:auto;min-height:0}
 .demo-thread{height:360px}
}

@media(max-width:760px){
 .jm-engine-column>.jm-column-heading>span{position:relative;z-index:1;background:#edf3e8;padding:3px 8px}
 .reasoning-panel{display:grid;grid-template-columns:92px minmax(0,1fr);gap:6px 15px}
 .intent-layout{display:block;margin:0}.intent-label{font-size:9px;white-space:nowrap}
 .intent-value{gap:3px}.intent-value strong{font-size:34px}.intent-value>span{font-size:12px}.intent-value small{font-size:10px;padding:3px}
 .intent-chart svg{height:27px;margin-top:4px}
 .decision-card{border:0;padding:2px 0;min-height:0}.decision-card h3{font-size:14px;line-height:1.4;margin-top:6px}
 .demo-controls{grid-column:1/-1;margin-top:0}
}
@media(max-width:359px){
 .reasoning-panel{grid-template-columns:92px minmax(0,1fr);column-gap:12px}
 .intent-label{white-space:normal;font-size:9px}.intent-value strong{font-size:30px}.intent-value small{font-size:9px}
 .decision-card h3{font-size:13px}
}

/* Stable full-screen film, centered parallel Journeys, and score-led persuasion. */
@media(max-width:760px){
 .hero-cinema{height:100vh;height:100lvh;min-height:0;max-height:none}
 .hero-films,.hero-cinema:before{inset:0}
 .hero-films video{width:100%;height:100%;object-fit:cover}
 .jm-journeys{padding-left:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;align-items:stretch}
 .jm-journeys>.jm-column-heading{grid-column:1/-1;text-align:center;margin:0 0 23px}
 .jm-journeys>.jm-column-heading>span{position:relative;z-index:1;background:#edf3e8;padding:3px 8px}
 .jm-path{margin:0;padding:14px 9px;border-radius:12px;text-align:center;display:flex;flex-direction:column}
 .jm-path-header{flex-direction:column;gap:7px}.jm-path-header h3{font-size:15px}.jm-avatar{height:30px;width:30px;font-size:13px}
 .jm-reply{display:block;margin:14px 0}.jm-reply>p{font-size:13px;line-height:1.45}
 .jm-path-next{display:block;margin-top:auto;padding-top:12px}
 .jm-path-next>span{display:block;max-width:none;font-size:9px;margin-bottom:6px}
 .jm-path-next>p{font-size:12px;line-height:1.4}
 .journey-console{height:calc(100svh - 68px)}
 .conversation-panel{flex:0 0 34%;min-height:145px}
 .demo-message{font-size:14px;line-height:1.45;padding:10px 12px;margin-top:10px}
 .reasoning-panel{display:flex;flex-direction:column;flex:1;min-height:0;padding:15px 20px 8px;gap:0}
 .intent-layout{display:flex;flex-direction:column;align-items:stretch;flex:1;min-height:0;margin:0;gap:8px}
 .intent-label{font-size:11px;white-space:normal}.intent-value{margin-top:8px;gap:7px;flex-wrap:nowrap}
 .intent-value strong{font-size:76px;line-height:1}.intent-value>span{font-size:18px}.intent-value small{font-size:12px;padding:4px 7px}
 .intent-chart{flex:1;min-height:55px}.intent-chart svg{height:100%;min-height:55px;max-height:145px;margin:0}
 .decision-card{flex:none;border-top:1px solid #44513c;padding:10px 0 7px;margin-top:8px}
 .decision-card h3{font-size:14px;line-height:1.4;margin-top:5px}.decision-kicker{font-size:10px}
 .demo-controls{flex:none;min-height:40px;margin:0}.demo-controls button{min-height:40px}
}
@media(max-width:359px){
 .jm-journeys{gap:6px}.jm-path{padding:12px 6px}.jm-reply>p{font-size:12px}.jm-path-next>p{font-size:11px}
}
@media(max-width:760px) and (max-height:690px){
 .conversation-panel{flex-basis:31%;min-height:125px}
 .conversation-heading{padding:5px 12px}
 .reasoning-panel{padding:9px 16px 5px}
 .intent-value strong{font-size:53px}.intent-value{margin-top:4px}.intent-label{font-size:10px}
 .intent-chart,.intent-chart svg{min-height:37px}.intent-layout{gap:3px}
 .decision-card{padding:6px 0 3px;margin-top:4px}.decision-card h3{font-size:12px}
 .demo-controls{min-height:36px}.demo-controls button{min-height:36px}
}
@media(max-width:760px) and (prefers-reduced-motion:reduce){
 .journey-console{height:auto}.conversation-panel{flex:none}.demo-thread{height:240px}
 .reasoning-panel{flex:none}.intent-layout{flex:none}.intent-chart svg{height:110px}
}
/* Keep the full customer-context flow together on a phone screen. */
@media(max-width:760px){
 .journey-map-section.wrap{padding:24px 18px 22px}
 .journey-map-section .section-intro{margin-bottom:16px}
 .journey-map-section .eyebrow{margin-bottom:9px}
 .journey-map-section h2{font-size:28px;line-height:1.08;letter-spacing:-.04em}
 .journey-map-section .section-intro .lead{font-size:14px;line-height:1.4;margin-top:9px}
 .jm-industries{padding-bottom:10px;margin-bottom:12px}
 .jm-industry-blocks{gap:4px 9px;justify-content:center}
 .jm-industry-block{font-size:10px;min-height:20px;padding:0;gap:4px}.jm-industry-block svg{width:12px;height:12px}
 .jm-columns{gap:14px}
 .jm-inputs{gap:6px}.jm-inputs>.jm-column-heading{margin-bottom:1px}
 .jm-column-heading>span{font-size:11px}
 .jm-inputs .jm-source{padding:9px 8px}
 .jm-source-label{min-height:29px;margin-bottom:4px}.jm-source-label strong{font-size:11px;line-height:1.3}
 .jm-source>p{font-size:11px;line-height:1.35}
 .jm-engine-column{margin-top:0}
 .jm-brain-visual{height:180px;min-height:180px}
 .jm-brain-visual .jm-sculptural-brain,.jm-brain-energy{height:180px}
 .jm-journeys{gap:7px}.jm-journeys>.jm-column-heading{margin-bottom:10px}
 .jm-path{padding:10px 8px}
 .jm-path-header{flex-direction:row;justify-content:center;gap:5px}.jm-avatar{width:20px;height:20px;font-size:10px}.jm-path-header h3{font-size:13px}
 .jm-reply{margin:10px 0}.jm-reply>p{font-size:12px;line-height:1.35}
 .jm-path-next{padding-top:8px}.jm-path-next>span{margin-bottom:4px}.jm-path-next>p{font-size:11px;line-height:1.35}
 .jm-feedback{padding:11px 12px;margin-top:10px}.jm-feedback strong{font-size:13px;line-height:1.3}.jm-feedback p{font-size:11px;line-height:1.4;margin-top:5px}
}
@media(max-width:760px){
 .journey-map-section.wrap{padding-top:18px;padding-bottom:16px;scroll-margin-top:-16px}
 .journey-map-section .section-intro{margin-bottom:12px}
 .jm-columns{gap:10px}
 .jm-source-icon{display:none}
 .jm-inputs .jm-source{padding-top:8px;padding-bottom:8px}
 .jm-brain-visual{height:150px;min-height:150px}
 .jm-brain-visual .jm-sculptural-brain,.jm-brain-energy{height:150px}
}
@media(max-width:760px){
 .jm-brain-visual{height:clamp(130px,calc(100svh - 724px),150px);min-height:130px}
 .jm-brain-visual .jm-sculptural-brain,.jm-brain-energy{height:clamp(130px,calc(100svh - 724px),150px)}
}

/* The film covers Safari's largest viewport; controls fit its smallest viewport.
   Neither changes height when the browser toolbar collapses during a scroll. */
@media(max-width:760px){
 .hero-cinema{height:100vh;height:100lvh}
 .hero-cinema .hero-inner{height:100vh;height:100svh;max-height:100%}
 .hero-cinema .hero-demo{height:100%}
 .conversation-panel{flex-basis:43%;min-height:160px}
 .demo-message{font-size:16px;line-height:1.45;padding:11px 13px}
 .intent-chart svg{max-height:105px}
}
@media(max-width:760px) and (max-height:690px){
 .conversation-panel{flex-basis:40%;min-height:150px}
 .demo-message{font-size:15px;line-height:1.4;padding:9px 11px}
 .intent-chart svg{max-height:65px}
}
@media(max-width:760px) and (prefers-reduced-motion:reduce){
 .conversation-panel{flex:none}.demo-thread{height:280px}
 .intent-chart svg{height:100px}
}

@media(max-width:760px){.reasoning-top{display:block;flex-shrink:0;margin:0 0 4px}.reasoning-top .eyebrow{font-size:11px;line-height:1.3;margin:0}}

@media(max-width:760px){.hero-cinema .hero-sector{font-size:12px;margin-bottom:10px}}
@media(min-width:761px) and (max-width:1080px){.result-grid{grid-template-columns:repeat(2,1fr);row-gap:36px}.result-grid article{padding:0 0 0 34px;border-left:1px solid #dce4d2}.result-grid article:nth-child(odd){padding-left:0;border-left:0}.result-grid article:nth-child(n+3){padding-top:36px;border-top:1px solid #dce4d2}}
/* Match homepage supporting actions to the standard body CTA size. */
@media (max-width:760px) {
  .enterprise-bottom .button,
  .closing .actions > .button { font-size:14px; }
}
