/* Balanced reading scale: 15px body copy, 13–14px controls and a 12px floor for supporting labels. */
body{font-size:15px;line-height:1.6}
.sector-switch button{font-size:14px;min-height:44px}.sector-switch button span{font-size:12px;color:#b3b3c1}
.language,.language select{font-size:14px}.language select{min-height:44px;padding:8px}
.outline{font-size:14px;line-height:1.5;min-height:44px;padding:11px 18px}
.opening{grid-template-columns:minmax(0,1fr) 350px;gap:20px 36px;padding:30px 0 26px}
.eyebrow{font-size:12px;letter-spacing:1.3px;line-height:1.6}
.opening h1 em{color:#acacb7}.intro-right>p{font-size:15px;line-height:1.65;max-width:390px;color:#bdbdc8}
.play-link{font-size:15px;line-height:1.5;grid-template-columns:44px auto;gap:5px 12px;min-height:52px}
.play-icon{width:42px;height:42px;font-size:22px}.play-link small{font-size:12px;letter-spacing:.7px;color:#b1b1bf}
.chapter-top{flex-wrap:wrap;gap:12px 20px;padding:5px 0}.chapter-tabs{gap:20px;flex-wrap:wrap}
.chapter-tabs button{font-size:14px;min-height:48px;line-height:1.5;color:#b8b8c6;padding:12px 0;align-items:center}.chapter-tabs button>span{font-size:12px;color:#a2a2b4}
.demo-tag{font-size:12px;line-height:1.6;letter-spacing:.4px;color:#b0b0c0;margin-left:auto}
.experience{grid-template-columns:210px minmax(0,1fr) 370px;gap:20px;min-height:540px}
.micro,.pain-rail>.micro{font-size:12px;line-height:1.6;letter-spacing:1px;color:#b2b2c2}
.pain-button{padding:14px 10px;gap:10px;min-width:0}.pain-button>span{font-size:12px;color:#a0a0b4}.pain-button strong{font-size:15px;line-height:1.5}.pain-button small{font-size:13px;line-height:1.6;color:#acacbe}
.pain-button [aria-hidden]{font-size:15px;color:#b0b0c0}.rail-bottom p{font-size:14px;color:#b3b3c4}.rail-bottom button{font-size:13px;min-height:44px;text-align:left}
.cinema{min-height:520px}.scene-status{font-size:12px;letter-spacing:.5px;gap:12px;align-items:flex-start}.scene-status>span{max-width:65%;color:#b0b3c9}.scene-status button{font-size:12px;min-height:44px;color:#b2b4c6;padding:0;white-space:nowrap}
.hotspot{font-size:12px;line-height:1.4;padding:9px 10px;max-width:170px;min-height:40px;white-space:normal;text-align:center;background:#08080df5}.hotspot span{font-size:13px;margin-left:5px;color:#a9b6ff}
.engine-focus .micro{font-size:12px}.engine-focus small,.experience[data-chapter="1"] .engine-focus small{font-size:14px;color:#b6b8cb}
.film-caption{gap:12px;bottom:20px}.film-caption>span{font-size:12px;color:#b3b3c8}.film-caption p{font-size:14px;line-height:1.6;color:#c5c5d5;max-width:none}.film-controls button{font-size:14px;min-height:44px}
.context-panel{padding:24px;align-self:start;margin-top:28px}.panel-eyebrow{font-size:12px;letter-spacing:.5px;flex-wrap:wrap;color:#b5b5c5}.ai-badge{font-size:12px;letter-spacing:.5px;color:#aebcff}
.context-panel h2{font-size:27px;line-height:1.3;margin:18px 0 12px}.context-panel>p,.panel-copy,.role-result{font-size:15px;line-height:1.65;color:#c0c0d0}
.fact{padding:13px 0 13px 16px;margin:16px 0}.fact strong{font-size:16px;line-height:1.6}.fact small{font-size:13px;line-height:1.7;color:#b4b4c8}
.panel-action{font-size:14px;line-height:1.5;min-height:48px;padding-top:15px;color:#ff7f89}
.module-nav{gap:8px}.module-nav button{font-size:13px;line-height:1.5;padding:8px 11px;min-height:44px;color:#c1c1d0}
.role-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.role-nav button{font-size:13px;min-height:44px;padding:8px;color:#c0c0d1}.role-result strong{font-size:14px}
.filter-row{font-size:15px;padding:13px 0;gap:12px}.filter-row i{font-size:16px}.filter-row small{font-size:13px;color:#b0b0c4}
.kds-head{font-size:12px;line-height:1.6;flex-wrap:wrap;gap:5px;padding:12px}.kds-lanes{gap:8px;padding:10px}.kds-lane>span{font-size:12px;min-height:38px;color:#b6b6c9;line-height:1.5}.ticket{font-size:13px;padding:10px 7px;min-height:86px}.ticket small{font-size:12px;color:#b8b8cc}.kds-insight{font-size:13px;line-height:1.7;padding:12px}
.time-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.time-nav button{font-size:13px;min-height:44px;padding:9px 5px;color:#b5b5c8}
.vision-state{font-size:26px;line-height:1.4}.vision-state small{font-size:15px;line-height:1.7;color:#bcbcd0}
.evidence-list{font-size:15px;line-height:1.7;padding:16px;color:#c2c2d4}.ai-answer{font-size:15px;color:#c8c8dc}.ai-answer small{font-size:12px;line-height:1.6;color:#aeb5d3}
.questions{gap:8px}.questions button{font-size:13px;line-height:1.5;min-height:44px;padding:9px;color:#c9c9da}
.path-intro>span:last-child{font-size:14px;line-height:1.6;color:#b6b6cb}.path-steps{gap:20px;flex-wrap:wrap}.path-steps button{min-height:60px;gap:12px;min-width:130px}.path-steps button:after{display:none}.path-steps button>span{font-size:12px;width:34px;height:34px}.path-steps button b{font-size:15px}.path-steps button small{font-size:13px;line-height:1.5;color:#b0b0c5}
.closing{gap:30px;padding:30px 0}.closing p{font-size:22px;line-height:1.5}.closing small{font-size:15px;line-height:1.6;color:#b4b4c8}.closing .outline{font-size:14px;flex-shrink:0}
body>footer{font-size:12px;line-height:1.6;color:#aeb0c4;letter-spacing:.7px;gap:20px;flex-wrap:wrap}body>footer button{font-size:14px;min-height:44px;color:#c2c2d5}body>footer>div{gap:20px}
#dialog{max-width:620px}#dialog p{font-size:15px;line-height:1.7;color:#c0c0d2}#dialog .dialog-note{font-size:13px!important;color:#aeb0c5!important}.dialog-link{font-size:15px;min-height:44px}.dialog-close{min-width:44px;min-height:44px;font-size:27px}
#contact-form label{font-size:15px}#contact-form input,#contact-form textarea{font-size:15px;line-height:1.6;min-height:48px}#contact-form input::placeholder,#contact-form textarea::placeholder{color:#aaaabd}#contact-form .contact-privacy{font-size:13px;line-height:1.7;color:#b4b4c9}#contact-status{font-size:15px}.contact-submit{font-size:15px;min-height:48px}
/* The guided story shares the same supporting type scale. */
#story-modal .story-brand small{font-size:12px;letter-spacing:.7px}#story-modal .story-demo{font-size:12px;letter-spacing:.5px;color:#b0b5cc}#story-modal .story-scenario{font-size:15px}
#story-modal .story-kicker{font-size:12px;letter-spacing:1px}#story-modal .story-heading p{font-size:15px;line-height:1.65;color:#b9bdcf}
#story-modal .story-timeline button{font-size:13px;line-height:1.5;min-height:44px;color:#b5b9d0}#story-modal .story-timeline button>span{font-size:12px;color:#a0a8c5}#story-modal .story-timeline button b{font-size:13px}
#story-modal .story-transport button{font-size:14px;min-height:44px}#story-modal .story-transport .story-play{min-width:120px}
#story-modal .story-signal>span,#story-modal .story-output>small,#story-modal .story-processing>b,#story-modal .story-processing>small,#story-modal .story-priority-core>span{font-size:12px;letter-spacing:.5px}
#story-modal .story-signal strong{font-size:17px;line-height:1.5}#story-modal .story-output p{font-size:15px;line-height:1.65}#story-modal .story-event small{font-size:12px}#story-modal .story-event strong{font-size:15px}
#story-modal .ledger-label,#story-modal .ledger-facts .story-signal>span,#story-modal .office-primary>span,#story-modal .office-primary small{font-size:12px;line-height:1.5}#story-modal .office-primary p{font-size:15px}#story-modal .office-reach span{font-size:13px}#story-modal .office-reach p{font-size:14px;line-height:1.6}
#story-modal .monitor-top b{font-size:15px}#story-modal .monitor-top small,#story-modal .monitor-column>span,#story-modal .monitor-ticket small,#story-modal .monitor-guidance>span,#story-modal .monitor-guidance>small{font-size:12px;line-height:1.5}#story-modal .monitor-ticket strong{font-size:17px}#story-modal .monitor-guidance p{font-size:15px!important;line-height:1.6}
#story-modal .phone-flow button{font-size:13px}#story-modal .phone-flow button small{font-size:12px}#story-modal .phone-demo{font-size:12px;letter-spacing:.5px}#story-modal .phone-priority>span{font-size:13px}
#story-modal .phone-tabs{font-size:12px}#story-modal .phone-ai>span{font-size:12px}#story-modal .phone-next-action small,#story-modal .phone-evidence>span{font-size:13px}
@media(max-width:1499px){
 .experience{grid-template-columns:minmax(0,1fr) 370px;gap:20px}.pain-rail{grid-column:1/-1;padding-top:24px}.rail-bottom{display:none}#pain-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.pain-button{border:1px solid #30303a;padding:14px;min-height:86px}.cinema{min-height:550px}.context-panel{margin:0 0 25px}.opening h1{font-size:clamp(34px,3.5vw,54px)}
}
@media(max-width:1000px){
 .topbar{height:auto;min-height:90px;gap:16px;flex-wrap:wrap;padding:15px 0}.top-actions{gap:12px}.sector-switch button{padding:8px 12px}
 .opening{grid-template-columns:1fr;gap:20px}.intro-right>p{max-width:760px}.intro-right{display:block}.chapter-tabs{width:100%;justify-content:space-between;gap:12px}.demo-tag{margin-left:0;padding-bottom:8px}
 .experience{display:block}.cinema{min-height:540px;margin:18px 0}.context-panel{padding:24px;margin:16px 0 28px}.scene-status{font-size:12px}.hotspot{font-size:13px;max-width:190px}.context-panel h2{font-size:27px}.closing{align-items:flex-start;flex-direction:column;gap:18px}
}
@media(max-width:600px){
 .topbar{display:grid;grid-template-columns:1fr auto;gap:12px;margin:0 5%;padding:16px 0}.brand{grid-column:1;grid-row:1;font-size:27px}.brand img{width:33px;height:34px}.top-actions{grid-column:2;grid-row:1}.top-actions .contact{display:none}.sector-switch{grid-column:1/-1;grid-row:2;width:100%;padding:4px;gap:5px}.sector-switch button{flex:1;font-size:15px;padding:9px 12px}.sector-switch button span{display:inline;font-size:12px;margin-left:7px}.language,.language select{font-size:15px}
 .opening{display:block;padding:24px 0}.eyebrow{font-size:12px;line-height:1.6;letter-spacing:.5px}.opening h1{font-size:34px;line-height:1.18;letter-spacing:-1.2px;margin:18px 0}.intro-right>p{font-size:15px;line-height:1.65}.play-link{font-size:15px;width:100%}.play-link small{font-size:12px;letter-spacing:.3px}
 .chapter-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 16px}.chapter-tabs button{font-size:14px;gap:8px;min-height:52px;padding:10px 0}.chapter-tabs b{max-width:none}.chapter-tabs button>span{font-size:12px}.demo-tag{font-size:12px;line-height:1.6;letter-spacing:.3px}
 .micro,.pain-rail>.micro{font-size:12px}.pain-rail{padding-top:22px}#pain-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.pain-button{min-height:98px;padding:12px 10px;gap:7px}.pain-button strong{font-size:14px;line-height:1.5}.pain-button small{font-size:12px;line-height:1.6}.pain-button>span{font-size:12px}.pain-button [aria-hidden]{display:none}
 .cinema{min-height:520px;margin:16px 0}.scene-status{top:0;left:0;right:0;font-size:12px;letter-spacing:.3px}.scene-status>span{max-width:60%}.scene-status button{font-size:12px}.world-wrap{inset:45px -18px 215px}
 #hotspots{position:absolute;left:0;right:0;bottom:76px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.hotspot{position:static;transform:none;max-width:none;width:100%;font-size:12px;min-height:48px;padding:8px;display:flex;align-items:center;justify-content:center;line-height:1.5}.hotspot span{font-size:14px;flex-shrink:0}
 .film-caption{bottom:8px;left:0;right:0;gap:8px}.film-caption>span{font-size:12px}.film-caption p{font-size:13px;line-height:1.6}.experience[data-chapter="1"] .engine-focus{top:55px}.experience[data-chapter="1"] .engine-focus strong{font-size:36px}.experience[data-chapter="1"] .engine-focus small{font-size:14px}.experience[data-chapter="1"] #hotspots{display:none}.experience[data-chapter="3"] .cinema{min-height:520px}
 .context-panel{padding:21px 18px}.context-panel h2{font-size:26px}.panel-eyebrow{font-size:12px;gap:8px}.ai-badge{font-size:12px}.context-panel>p,.panel-copy,.role-result{font-size:15px}.fact strong{font-size:16px}.fact small{font-size:13px}
 .kds-lanes{grid-template-columns:1fr}.kds-lane{display:grid;grid-template-columns:86px minmax(0,1fr);gap:10px;align-items:center}.kds-lane>span{font-size:12px;min-height:0}.ticket{font-size:15px;min-height:0;padding:12px}.ticket small{font-size:13px}.kds-head{font-size:13px}.kds-insight{font-size:14px}
 .path-intro{display:block}.path-intro>span:last-child{display:block;font-size:14px;margin-top:10px;line-height:1.6}.path-steps{gap:12px}.path-steps button{flex:0 0 100%;min-height:60px}.path-steps button b{font-size:15px}.path-steps button small{font-size:13px}
 .closing p{font-size:22px}.closing small{font-size:15px}.closing .outline{font-size:15px}body>footer{display:block;font-size:12px;padding-top:20px}body>footer>div{align-items:flex-start;gap:5px;margin-top:10px}body>footer button{font-size:14px}
 #dialog{padding:32px 22px}#dialog h2{font-size:26px}#story-modal .story-scenario{font-size:14px}
 #story-modal .story-timeline button>span{font-size:12px}#story-modal .story-timeline button b{display:none}#story-modal .story-timeline button{min-height:30px}#story-modal .story-timeline{margin-bottom:6px}
 #story-modal .story-track{display:none}#story-modal .story-transport{gap:6px}#story-modal .story-transport button{font-size:13px;min-width:44px;padding:8px;min-height:44px}#story-modal .story-transport .story-play{min-width:108px}#story-modal .story-transport .story-replay{width:44px}
 #story-modal .story-heading p{font-size:13px}#story-modal .story-kicker{font-size:12px;letter-spacing:.5px}#story-modal .story-phone{padding-left:12px;padding-right:12px}
 #story-modal .phone-flow button{font-size:13px;min-height:50px;padding:6px 2px}#story-modal .phone-flow button small{font-size:12px}#story-modal .phone-tabs{font-size:12px}#story-modal .phone-brand{gap:7px}#story-modal .phone-demo{font-size:12px}
 #story-modal .story-signal strong{font-size:15px}#story-modal .story-output p{font-size:14px}#story-modal .story-processing>small{font-size:12px}
 #story-modal .office-primary p{font-size:14px}#story-modal .office-primary small{font-size:12px}#story-modal .office-reach p{font-size:13px}#story-modal .office-reach span{font-size:12px}
 #story-modal .monitor-board{gap:7px;padding:10px 8px}#story-modal .monitor-ticket{padding:8px 5px}#story-modal .monitor-ticket strong{font-size:15px}#story-modal .monitor-top{flex-wrap:wrap}#story-modal .monitor-top small{max-width:none;text-align:left}
}
@media(min-width:601px) and (max-height:760px){
 #story-modal .phone-content[data-phase="0"] .phone-greeting{display:none}
 #story-modal .phone-content[data-phase="0"]>h3{margin:2px 0 9px}
}
.experience[data-chapter="3"] .hotspot{opacity:1}
#story-modal .story-timeline [aria-pressed="true"],#story-modal .story-timeline [aria-pressed="true"]>span{color:var(--select)}

#contact-form input,#contact-form textarea{font-size:16px}
