/* MAGI IM V43: modular views, not repeated cards. Keep base theme untouched. */
.im-console-screen{min-height:395px;overflow:hidden}
.im-module-art-host{position:relative;min-height:284px;display:grid;place-items:center;padding:16px 5px 3px}
.im-v43-scene{width:100%;min-width:0;animation:im-v43-entry .55s cubic-bezier(.15,.75,.25,1) both}
@keyframes im-v43-entry{from{opacity:0;transform:translate3d(0,14px,0) scale(.975)}to{opacity:1;transform:translate3d(0,0,0) scale(1)}}
.im-v43-bottom-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:13px}
.im-v43-widget{display:flex;flex-direction:column;gap:6px;background:rgba(15,44,98,.66);border:1px solid rgba(92,154,248,.22);padding:13px 16px;border-radius:13px}
.im-v43-widget small{font-size:9px;color:#67c8fc;font-weight:850;letter-spacing:.14em}
.im-v43-widget strong{color:#fff;font-size:18px;font-weight:850;letter-spacing:-.025em}
.im-v43-widget span{color:#a5c6ec;font-size:11px}
.im-v43-assets{height:194px;position:relative;display:grid;place-items:center}
.im-v43-asset-halo{position:absolute;width:186px;aspect-ratio:1;border-radius:50%;border:1px dashed rgba(102,182,255,.5);box-shadow:0 0 0 18px rgba(90,126,255,.06),0 0 0 49px rgba(70,127,255,.04);animation:im-v43-spin 16s linear infinite}
.im-v43-main-object{position:relative;width:116px;height:112px;border:2px solid #72bdff;border-radius:19px;background:linear-gradient(140deg,rgba(35,107,225,.7),rgba(75,39,155,.45));box-shadow:0 0 28px rgba(66,134,255,.25);display:grid;place-items:center;font-size:58px;color:#d9efff}
.im-v43-main-object span{display:block;font-size:9px;letter-spacing:.17em;font-weight:850;position:absolute;bottom:8px}
.im-v43-asset-satellites{position:absolute;inset:0;pointer-events:none}
.im-v43-asset-satellites b{position:absolute;display:block;border-radius:20px;padding:8px 10px;background:#102e62;border:1px solid #357fc9;color:#89d6ff;font-size:9px;letter-spacing:.1em}
.im-v43-asset-satellites b:first-child{top:11px;left:10%}.im-v43-asset-satellites b:nth-child(2){right:7%;top:40%}.im-v43-asset-satellites b:last-child{left:12%;bottom:5px}
@keyframes im-v43-spin{to{transform:rotate(360deg)}}
.im-v43-flow{min-height:185px;display:flex;align-items:center;gap:3px;justify-content:space-around}
.im-v43-node{flex:1;max-width:110px;min-width:0;display:grid;gap:11px;justify-items:center;position:relative}
.im-v43-node:not(:last-child)::after{content:'›';position:absolute;right:-13px;top:34px;color:#2cceff;text-shadow:0 0 12px #35aeff;font-size:30px;animation:im-v43-flicker 2s infinite}
.im-v43-node span{display:grid;place-items:center;width:min(72px,100%);aspect-ratio:1;border:1px solid rgba(103,189,255,.55);border-radius:18px;background:linear-gradient(145deg,#155bb2,#271765);color:#c2efff;font-size:24px;font-weight:900;box-shadow:0 0 22px rgba(36,141,255,.18)}
.im-v43-node strong{color:#bbdaff;font-size:11px;text-align:center}
.im-v43-shelves{min-height:194px;display:grid;align-content:center;gap:17px}
.im-v43-shelf{height:48px;display:flex;justify-content:center;align-items:end;gap:10px;border-bottom:3px solid #327de2;padding:0 12px 8px;box-shadow:0 13px 15px -15px #48bafa}
.im-v43-shelf span{height:35px;width:33px;border:1px solid rgba(129,213,255,.65);border-radius:4px;background:linear-gradient(145deg,#2a88dd,#4b35ae);animation:im-v43-pop .65s both;animation-delay:var(--delay)}
@keyframes im-v43-pop{from{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}
.im-v43-linked{display:flex;align-items:center;justify-content:space-between;gap:9px;height:167px}
.im-v43-link-object{flex:1;display:grid;justify-items:center;text-align:center;gap:12px;border:1px solid #399cf1;border-radius:17px;padding:22px 12px;background:linear-gradient(145deg,#103e88,#132358)}
.im-v43-link-object.secondary{border-color:#9665ff;background:linear-gradient(145deg,#342173,#141f51)}
.im-v43-link-object small{font-size:10px;color:#8fcefa;letter-spacing:.12em}
.im-v43-link-object strong{font-size:23px;color:#fff}.im-v43-link-object span{color:#bdd5f1;font-size:10px}
.im-v43-linked>i{height:2px;width:18%;background:linear-gradient(90deg,#00c6ff,#bc67fe);position:relative;flex-shrink:0}
.im-v43-linked>i:after{content:'▶';position:absolute;color:#76dfff;right:-4px;top:-9px;animation:im-v43-pulse 1.8s infinite}
.im-v43-rails{display:grid;gap:13px;align-content:center;margin:20px 0}
.im-v43-rails i{display:block;height:9px;border-radius:15px;width:var(--size);background:linear-gradient(90deg,#099af2,#7f5dff);animation:im-v43-grow .8s both;transform-origin:left}
@keyframes im-v43-grow{from{transform:scaleX(.05)}to{transform:scaleX(1)}}
.im-v43-finance{height:193px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:18px}
.im-v43-donut{width:min(172px,100%);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;margin:auto;background:conic-gradient(#25cfff 0 46%,#8066ff 46% 74%,#183d78 74%);box-shadow:0 0 35px rgba(55,133,255,.18);animation:im-v43-pop .6s both}
.im-v43-donut:before{content:'';width:72%;aspect-ratio:1;background:#081d44;border-radius:50%;grid-area:1/1}
.im-v43-donut span{grid-area:1/1;z-index:1;display:grid;text-align:center;color:#fff;font-size:46px;font-weight:800}
.im-v43-donut small{font-size:9px;letter-spacing:.12em;color:#89b8ec}
.im-v43-cost-lines small{color:#a4c4e8;font-size:10px;line-height:1.5;display:block}
.im-v43-pipeline{min-height:192px;display:flex;justify-content:center;align-items:center;gap:7px}
.im-v43-pipe-step{flex:1;position:relative;min-width:0;display:grid;justify-items:center;gap:8px;animation:im-v43-entry .5s both;animation-delay:calc(var(--order)*.07s)}
.im-v43-pipe-step:not(:last-child)::after{content:'';width:28%;height:2px;position:absolute;left:85%;top:23px;background:#36b9fc;box-shadow:0 0 10px #2a9df9}
.im-v43-pipe-step span{display:grid;place-items:center;border:1px solid #43bafd;border-radius:50%;height:46px;aspect-ratio:1;color:#fff;background:#143a88;font-weight:800;font-size:15px}
.im-v43-pipe-step small{font-size:8px;color:#8ebce9;text-align:center;letter-spacing:.05em;word-break:break-word}
.im-v43-alert-radar{width:192px;aspect-ratio:1;margin:0 auto;position:relative;border-radius:50%;border:1px solid #319cef;background:repeating-radial-gradient(circle at center,rgba(47,148,243,.19) 0 1px,transparent 1px 37px),linear-gradient(transparent 49%,rgba(55,167,239,.24) 50%,transparent 51%),linear-gradient(90deg,transparent 49%,rgba(55,167,239,.24) 50%,transparent 51%);overflow:hidden}
.im-v43-alert-sweep{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,transparent 0deg 265deg,rgba(68,233,255,.37) 345deg,transparent 360deg);animation:im-v43-spin 5s linear infinite}
.im-v43-alert-dot{position:absolute;width:10px;height:10px;background:#75eaff;box-shadow:0 0 15px #5cf2ff;border-radius:50%}.im-v43-alert-dot.one{top:24%;left:34%}.im-v43-alert-dot.two{top:62%;left:76%}.im-v43-alert-dot.three{top:78%;left:33%}
.im-v43-alert-label{position:absolute;inset:36%;border-radius:50%;background:#173f94;border:1px solid #55c7ff;display:grid;place-items:center;color:#e4ffff;font-size:27px;font-weight:800}
.im-v43-photos{position:relative;height:185px;display:flex;justify-content:center;gap:18px;align-items:center}
.im-v43-photo{flex:1;max-width:180px;height:156px;border:1px solid #439cfd;border-radius:15px;background:linear-gradient(145deg,#184883,#173366 50%,#482279);display:flex;flex-direction:column;justify-content:space-between;padding:12px;color:#a1d6fa;font-size:10px;letter-spacing:.12em;animation:im-v43-pop .7s both}
.im-v43-photo.b{background:linear-gradient(145deg,#126a91,#1f317f 50%,#5542ac);animation-delay:.12s}
.im-v43-photo i{font-style:normal;text-align:center;font-size:56px;color:#bdeeff}
.im-v43-photo-link{position:absolute;left:50%;top:43%;transform:translateX(-50%);background:#0b337e;border:1px solid #5caefa;padding:7px 11px;border-radius:25px;color:#aff1ff}
.im-v43-report{height:193px;display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:24px;align-items:center}
.im-v43-report-bars{height:135px;display:flex;align-items:end;gap:10px;border-bottom:1px solid #306eb7}
.im-v43-report-bars span{flex:1;height:var(--height);border-radius:6px 6px 0 0;background:linear-gradient(180deg,#71deff,#3572e2,#6f4ac9);animation:im-v43-rise .65s both;animation-delay:var(--delay);transform-origin:bottom}
@keyframes im-v43-rise{from{transform:scaleY(.08)}to{transform:scaleY(1)}}
.im-v43-report-circle{width:104px;aspect-ratio:1;border-radius:50%;border:2px solid #65bfff;box-shadow:0 0 23px rgba(83,171,255,.2);display:grid;place-items:center;color:#a8ecff;font-size:45px}
.im-v43-report-circle small{display:block;font-size:9px;letter-spacing:.08em;margin-top:-28px}
.im-v43-qr-stage{height:210px;display:flex;align-items:center;justify-content:center;gap:28px}
.im-v43-qr-frame{position:relative;flex:0 0 165px;width:165px;aspect-ratio:1;border-radius:14px;border:1px solid rgba(100,186,255,.55);padding:13px;background:linear-gradient(145deg,#b7e8ff,#e4e9ff);box-shadow:0 0 35px rgba(49,178,249,.19)}
.im-v43-qr-grid{width:100%;height:100%;display:grid;grid-template-columns:repeat(21,1fr);grid-template-rows:repeat(21,1fr);gap:1px}.im-v43-qr-grid span{background:#142456}
.im-v43-qr-corner{position:absolute;width:22px;height:22px;border-color:#27bcff;border-style:solid;border-width:0}.im-v43-qr-corner.tl{left:-6px;top:-6px;border-top-width:3px;border-left-width:3px}.im-v43-qr-corner.tr{right:-6px;top:-6px;border-top-width:3px;border-right-width:3px}.im-v43-qr-corner.bl{left:-6px;bottom:-6px;border-bottom-width:3px;border-left-width:3px}.im-v43-qr-corner.br{right:-6px;bottom:-6px;border-bottom-width:3px;border-right-width:3px}
.im-v43-qr-scan{position:absolute;left:10px;right:10px;top:10px;height:3px;background:#09a5ff;box-shadow:0 0 14px #04bcff;animation:im-qr-scan 3.4s ease-in-out infinite alternate}
@keyframes im-qr-scan{to{transform:translateY(138px)}}
.im-v43-qr-copy{display:grid;gap:12px;max-width:200px}.im-v43-qr-copy strong{font-size:20px;color:#e5f9ff}.im-v43-qr-copy span{color:#8ed4ff;font-size:13px}.im-v43-qr-copy small{color:#9cafd4;font-size:10px;line-height:1.5}
@keyframes im-v43-flicker{50%{opacity:.3}}@keyframes im-v43-pulse{50%{opacity:.35;transform:translateX(4px)}}
/* Areas: one compact pair of arrows instead of nine blocks. */
.im-sector-showroom{border-bottom:1px solid rgba(123,177,253,.33)}
.im-sector-navigation{display:flex;align-items:center;gap:18px;margin-top:28px;padding-top:20px;border-top:1px solid rgba(89,166,246,.28);width:100%}
.im-sector-navigation>span{color:#88bfe9;font-size:12px;font-weight:800;letter-spacing:.19em;text-align:center}
.im-sector-arrow{width:53px;height:53px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(93,179,255,.55);background:#0a2b64;color:#a9e7ff;font-size:24px;cursor:pointer;transition:background .2s,box-shadow .2s,transform .2s}
.im-sector-arrow:hover{background:#1458a2;box-shadow:0 0 23px rgba(46,148,255,.4);transform:translateY(-2px)}
.im-sector-arrow:focus-visible{outline:2px solid #80dfff;outline-offset:3px}
.im-sector-symbol{position:absolute;right:12%;bottom:15%;display:grid;place-items:center;width:100px;height:100px;background:rgba(15,64,145,.48);border:1px solid rgba(124,164,255,.65);border-radius:28px;box-shadow:0 0 40px rgba(41,130,255,.17);font-size:56px;color:#a2e4ff;z-index:2;transform:rotate(-9deg);animation:im-v43-symbol 5s ease-in-out infinite alternate}
@keyframes im-v43-symbol{to{transform:rotate(2deg) translateY(-12px)}}
.im-sector-visual.is-switching .im-sector-symbol{animation:im-v43-entry .52s ease both}
/* Workflow: individual animated illustrations for each stage, positioned beside the copy. */
.im-journey-stage{min-height:590px}
.im-stage-detail{padding-top:clamp(68px,8vw,115px);width:54%;max-width:440px}
.im-stage-detail h3{font-size:clamp(31px,3.25vw,52px)}
.im-stage-number{font-size:clamp(130px,22vw,320px);top:38px;right:20px;opacity:.45}
.im-flow-art{right:5%;top:31%;width:38%;height:280px;opacity:1;transform:none;z-index:1}
.im-v43-flow-scene{width:100%;height:100%;position:relative;animation:im-v43-entry .55s both;display:grid;place-items:center}
.im-flow-small-card{position:relative;display:flex;flex-direction:column;gap:18px;padding:23px;width:88%;height:218px;background:linear-gradient(145deg,#10377c,#122455);border:1px solid #388df0;border-radius:20px;box-shadow:0 22px 42px rgba(4,15,42,.3);transform:rotate(7deg)}
.im-flow-small-card b,.im-flow-small-card span{color:#a5dcff;font-size:11px;letter-spacing:.12em}.im-flow-small-card span{font-size:15px;color:#fff}.im-flow-small-card i{width:85%;height:6px;background:linear-gradient(90deg,#2679d9,#7753ff);border-radius:4px}.im-flow-small-card i:nth-last-of-type(1){width:54%}.im-flow-small-card em{font-style:normal;color:#50e5d3;font-size:11px;align-self:end}
.im-flow-corner-circle{position:absolute;left:-3px;top:0;font-size:25px;color:#fff;background:#914aff;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;box-shadow:0 0 24px rgba(182,104,255,.5);animation:im-v43-pulse 2s infinite}
.im-v43-flow-scene.assign{display:flex;align-items:center;gap:3px}.im-flow-person{flex:1;min-width:0;display:grid;justify-items:center;gap:13px;color:#b9e6ff;font-size:9px}.im-flow-person span{width:86px;max-width:100%;aspect-ratio:1;display:grid;place-items:center;background:#123e8a;border:1px solid #48b2fb;border-radius:30%;color:#8ddfff;font-size:48px}.im-flow-person strong{font-size:9px}.im-flow-route{display:flex;flex:0 0 60px;gap:6px;align-items:center}.im-flow-route i{height:5px;flex:1;background:#41cfff;border-radius:5px;box-shadow:0 0 10px #29bfff;animation:im-v43-flicker 2s infinite}.im-flow-route i:nth-child(2){animation-delay:.4s}.im-flow-route i:nth-child(3){animation-delay:.8s}
.im-v43-flow-scene.assign>small{position:absolute;bottom:12px;color:#57e6d4;letter-spacing:.12em}
.im-flow-phone{width:148px;height:260px;max-height:100%;padding:24px 15px;background:linear-gradient(145deg,#1451a0,#111a50);border:3px solid #69aeff;border-radius:25px;box-shadow:0 0 33px rgba(57,156,255,.25);transform:rotate(-7deg);display:flex;flex-direction:column;gap:15px;color:#b1e0ff;font-size:10px;letter-spacing:.13em}
.im-flow-phone-top{height:7px;width:42%;background:#74baff;border-radius:9px;align-self:center;margin-top:-12px}.im-flow-phone strong{font-size:18px;color:#fff}.im-flow-phone-checks{line-height:2.2;color:#6aefd8;font-size:11px;letter-spacing:0}
.im-flow-radio{position:absolute;right:6%;top:12%;width:70px;height:70px;display:grid;place-items:center;border-radius:50%;border:1px solid #32c7fa;color:#71d7ff;font-size:42px;animation:im-v43-pulse 2.3s infinite}
.im-flow-box{width:65%;min-height:180px;border:2px solid #4caeff;border-radius:15px;background:linear-gradient(160deg,#0b4da6,#171b55);display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:22px;transform:perspective(500px) rotateY(-16deg)}
.im-flow-box i{background:linear-gradient(155deg,#37a7ff,#775aff);border:1px solid #94cbff;border-radius:8px;animation:im-v43-pop .7s both}.im-flow-box i:nth-child(2){animation-delay:.1s}.im-flow-box i:nth-child(3){animation-delay:.2s}.im-flow-box i:nth-child(4){animation-delay:.3s}
.im-flow-mat-label{position:absolute;bottom:5px;right:2%;background:#102657;padding:12px 15px;border-radius:10px;display:grid;gap:4px;border:1px solid rgba(87,191,255,.5)}.im-flow-mat-label strong{font-size:11px;color:#fff}.im-flow-mat-label small{color:#73cef9;font-size:8px}
.im-flow-cost-circle{width:170px;max-width:65%;aspect-ratio:1;background:conic-gradient(#20dcff 0 38%,#8955f8 38% 76%,#25569c 76%);border-radius:50%;display:grid;place-items:center;box-shadow:0 0 40px rgba(38,140,255,.16)}
.im-flow-cost-circle:before{content:'';width:72%;aspect-ratio:1;border-radius:50%;background:#0b275d;grid-area:1/1}.im-flow-cost-circle strong{grid-area:1/1;color:#fff;font-size:65px;z-index:1}.im-flow-cost-circle small{grid-area:1/1;z-index:2;color:#9ad6ff;font-size:8px;align-self:end;margin-bottom:42px}
.im-flow-cost-bars{display:flex;gap:5px;position:absolute;bottom:4%;right:1%;height:70px;align-items:end}.im-flow-cost-bars span{width:16px;background:linear-gradient(#56d9ff,#6563ef);height:55%;border-radius:4px 4px 0 0}.im-flow-cost-bars span:nth-child(2){height:90%}.im-flow-cost-bars span:nth-child(3){height:70%}.im-flow-cost-bars span:nth-child(4){height:100%}
.im-flow-approval{width:85%;height:240px;max-height:100%;border:1px solid #58b5ff;background:linear-gradient(145deg,#113d7d,#161a4c);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:15px;transform:rotate(-4deg);box-shadow:0 0 38px rgba(65,162,255,.15)}.im-flow-approval span{font-size:10px;color:#7ac9ff;letter-spacing:.14em}.im-flow-approval i{display:block;height:7px;width:83%;border-radius:9px;background:#316cbe}.im-flow-approval i:nth-of-type(2){width:54%}.im-flow-approval i:nth-of-type(3){width:73%}.im-flow-approval div{position:absolute;right:15px;bottom:32px;display:grid;place-items:center;color:#51f8c5;font-size:39px;width:59px;height:59px;border:2px solid #5cf4c9;border-radius:50%}.im-flow-approval strong{font-size:10px;color:#85f0d1;margin-top:auto}
/* Closer CTA; remove excess empty band above final phrase. */
.im-final{padding:clamp(52px,5.8vw,85px) 0 clamp(65px,7vw,100px)!important}
.im-final-inner{margin-top:0!important;padding-top:0!important}
.im-final h2{margin-top:12px!important}
@media(max-width:1120px){.im-stage-detail{width:59%;padding-top:90px}.im-flow-art{right:2%;width:36%}}
@media(max-width:850px){.im-journey-stage{min-height:620px}.im-stage-detail{width:100%;max-width:90%;padding-top:210px}.im-flow-art{width:205px;height:180px;right:11%;top:85px}.im-journey-stage h3{max-width:18ch}.im-sector-panel{padding-bottom:35px}.im-sector-symbol{right:13%;bottom:9%;width:85px;height:85px;font-size:43px}}
@media(max-width:540px){.im-module-art-host{min-height:280px}.im-v43-qr-stage{gap:14px}.im-v43-qr-frame{width:136px;flex-basis:136px}.im-v43-qr-scan{animation-name:im-qr-scan-mobile}.im-v43-qr-copy strong{font-size:16px}.im-v43-qr-copy{max-width:130px}.im-journey-stage{min-height:590px}.im-stage-detail{padding-top:180px;max-width:100%}.im-stage-detail h3{font-size:32px}.im-flow-art{height:154px;width:160px;top:69px;right:9%}.im-flow-phone{height:155px;padding:16px 8px;gap:4px;font-size:7px}.im-flow-phone strong{font-size:12px}.im-flow-phone-checks{font-size:8px}.im-flow-small-card{height:152px;gap:8px;padding:13px}.im-flow-small-card span{font-size:11px}.im-flow-person span{width:50px;font-size:29px}.im-flow-route{flex-basis:23px}.im-flow-cost-circle{width:95px}.im-flow-cost-circle strong{font-size:33px}.im-flow-cost-circle small{margin-bottom:23px}.im-flow-approval{height:150px;gap:7px;padding:12px}.im-flow-approval div{width:35px;height:35px;bottom:19px;font-size:25px}.im-flow-approval strong{font-size:8px}.im-flow-box{min-height:110px;padding:11px}.im-flow-mat-label{padding:7px;font-size:8px}.im-flow-cost-bars{height:45px}.im-flow-cost-bars span{width:9px}.im-sector-symbol{width:67px;height:67px;font-size:35px}.im-sector-navigation{gap:11px}.im-sector-arrow{width:48px;height:48px}.im-v43-node span{width:45px;font-size:13px}.im-v43-node strong{font-size:9px}.im-v43-node:not(:last-child)::after{top:18px;right:-9px;font-size:19px}.im-v43-pipe-step span{height:33px;font-size:12px}.im-v43-pipe-step small{font-size:7px}.im-v43-asset-satellites b{font-size:7px}.im-v43-report{grid-template-columns:minmax(0,1fr) 75px;gap:10px}.im-v43-report-circle{width:74px;font-size:28px}.im-v43-report-bars{gap:5px}.im-v43-bottom-grid{gap:7px}.im-v43-widget{padding:10px}.im-v43-widget strong{font-size:13px}.im-v43-widget small{font-size:7px}.im-v43-widget span{font-size:9px}}
@keyframes im-qr-scan-mobile{to{transform:translateY(107px)}}
@media(prefers-reduced-motion:reduce){.im-v43-scene,.im-sector-symbol,.im-v43-shelf span,.im-v43-asset-halo,.im-v43-alert-sweep,.im-v43-qr-scan,.im-v43-pipe-step,.im-v43-rails i,.im-v43-report-bars span,.im-flow-corner-circle,.im-flow-radio{animation:none!important}}
