/* Approved software illustration, scoped to this homepage section. */
.software-story{background:#070a11;padding-block:88px 80px;border-top:1px solid #ffffff12}
.software-story-heading{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center;max-width:1200px;margin:auto}
.software-story-heading h2{font:500 clamp(44px,4.7vw,66px)/1.03 Milano,sans-serif;letter-spacing:-.045em;margin:0}
.software-story-heading h2 span{color:#afa4ff}
.software-story-heading p{font-size:22px;line-height:1.6;max-width:33ch;color:#bec9db;margin:0}
.software-story .idea-visual{margin:9px auto 0;max-width:1200px}
.software-story .graphic{position:relative;isolation:isolate;width:100%;margin:auto}
.software-story .mobile-paths{display:none}
.software-story .graphic svg{width:100%;height:auto;display:block;overflow:visible;font:18px/1.5 Milano,sans-serif}
.software-story .graphic-label{position:absolute;font-size:18px;color:#bbb6d1;line-height:1.35}
.software-story .label-idea{left:11%;top:81%}
.software-story .label-build{left:28%;top:61%;color:#94a5c1}
.software-story .possibilities{display:flex;justify-content:flex-end;gap:28px;border-bottom:1px solid #293147;padding:0 0 15px;margin-top:-18px}
.software-story .possibilities button{background:none;border:0;border-bottom:2px solid transparent;color:#a6b5cc;min-height:48px;min-width:44px;padding:9px 4px;font:400 18px/1.5 Milano,sans-serif;cursor:pointer}
.software-story .possibilities button:hover,.software-story .possibilities button[aria-pressed=true]{color:#e7f7fd;border-color:#43c7df}
.software-story .possibilities button:focus-visible{outline:2px solid #00d6f5;outline-offset:5px}
.software-story .visual-explanation{font-size:20px;line-height:1.55;color:#d6deec;margin:22px 0 0 auto;min-height:62px;text-align:right;max-width:56ch}
.software-story .visual-explanation:empty{display:none}
.software-story .possibility{transition:opacity .4s,filter .4s}
.software-story .route{transition:opacity .4s,stroke-width .4s}
.software-story [data-focus=app] .possibility:not(.app-art),
.software-story [data-focus=platform] .possibility:not(.platform-art),
.software-story [data-focus=ai] .possibility:not(.ai-art),
.software-story [data-focus=immersive] .possibility:not(.immersive-art){opacity:.58;filter:saturate(.7)}
.software-story [data-focus=app] .route:not(.route-app),
.software-story [data-focus=platform] .route:not(.route-platform),
.software-story [data-focus=ai] .route:not(.route-ai),
.software-story [data-focus=immersive] .route:not(.route-immersive){opacity:.35}
.software-story [data-focus=app] .route-app,
.software-story [data-focus=platform] .route-platform,
.software-story [data-focus=ai] .route-ai,
.software-story [data-focus=immersive] .route-immersive{stroke-width:3;filter:drop-shadow(0 0 5px #8aaaff66)}
.software-story [data-focus=app] .app-art,
.software-story [data-focus=platform] .platform-art,
.software-story [data-focus=ai] .ai-art,
.software-story [data-focus=immersive] .immersive-art{filter:brightness(1.2) drop-shadow(0 0 22px #80a4da55)}
.software-story-action{display:flex;align-items:center;gap:24px;max-width:1200px;margin:28px auto 0}
.software-story-action p{font:400 16px/1.6 Milano,sans-serif;color:#a8b7ca;max-width:40ch}
@keyframes software-signal{to{stroke-dashoffset:-52}}
.signal-paused .software-story *{animation-play-state:paused!important}
@media(max-width:1000px){
 .software-story{padding-block:66px}
 .software-story-heading{gap:50px}
 .software-story-heading p{font-size:20px}
 .software-story .possibilities{gap:23px}
 .software-story .possibilities button{font-size:17px}
 .software-story .graphic-label{font-size:17px}
 .software-story .label-build{top:63%}
 .software-story .visual-explanation{font-size:19px}
}
@media(max-width:700px){
 .software-story{padding-block:52px}
 .software-story-heading{grid-template-columns:1fr;gap:22px}
 .software-story-heading h2{font-size:48px}
 .software-story-heading p{font-size:19px;max-width:39ch}
 .software-story .idea-visual{margin-top:25px}
 .software-story .graphic{margin-bottom:15px}
 .software-story .graphic-label{font-size:16px;bottom:auto}
 .software-story .label-idea{left:12%;top:81%}
 .software-story .label-build{left:auto;right:0;top:61%}
 .software-story [data-layout=compact] .graphic svg{aspect-ratio:760/910}
 .software-story [data-layout=compact] .label-idea{top:35%}
 .software-story [data-layout=compact] .label-build{top:5%}
 .software-story [data-layout=compact] .idea-sheet{transform:translate(109px,24px) rotate(-7deg);transform-origin:115px 139px}
 .software-story [data-layout=compact] .build-junction{transform:translate(85px,-75px)}
 .software-story [data-layout=compact] .outcomes{transform:translate(-460px,330px)}
 .software-story [data-layout=compact] .desktop-paths,.software-story [data-layout=compact] .scene-dots{display:none}
 .software-story [data-layout=compact] .mobile-paths{display:block}
 .software-story .possibilities{margin-top:12px;justify-content:flex-start;gap:8px 23px;flex-wrap:wrap;padding-bottom:15px}
 .software-story .visual-explanation{text-align:left;font-size:18px;margin-top:19px;min-height:0}
 .software-story-action{align-items:flex-start;flex-direction:column;gap:16px;margin-top:25px}
}
@media(max-width:440px){
 .software-story-heading h2{font-size:44px}
 .software-story .possibilities{gap:4px 22px}
 .software-story .possibilities button{font-size:17px}
}
@media(prefers-reduced-motion:reduce){
 .software-story *{animation:none!important;transition:none!important}
}

/* One balanced footer: equal choices above a clear explanation and next step. */
.software-story .possibilities{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:4px;padding:0;border-bottom:1px solid #354055;border-top:1px solid #263144}
.software-story .possibilities button{font-size:20px;min-height:72px;padding:18px 14px;color:#b9c6d9;border-bottom:2px solid transparent;position:relative}
.software-story .possibilities button[aria-pressed=true]{color:#f2fbff;border-bottom-color:#55d5ed;background:linear-gradient(0deg,#34c4eb0c,transparent)}
.software-response{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:60px;align-items:center;padding-top:30px}
.software-story .visual-explanation{font-size:22px;line-height:1.6;text-align:left;max-width:49ch;min-height:106px;display:flex;align-items:center;margin:0}
.software-response .software-story-action{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin:0;max-width:275px}
.software-response .software-story-action .button{min-height:52px;font-size:16px}
.software-response .software-story-action p{font-size:16px;line-height:1.5;max-width:29ch;margin:0}
@media(max-width:1000px){.software-response{gap:35px}.software-story .visual-explanation{font-size:20px}.software-story .possibilities button{font-size:18px}}
@media(max-width:700px){
 .software-story .possibilities{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:15px}
 .software-story .possibilities button{font-size:18px;min-height:65px;padding:15px 10px}
 .software-response{grid-template-columns:1fr;gap:24px;padding-top:24px}
 .software-story .visual-explanation{font-size:19px;min-height:122px;display:block;max-width:none;margin:0}
 .software-response .software-story-action{align-items:flex-start;gap:12px;max-width:none}
 .software-response .software-story-action p{max-width:none}
}
