/* M31 CloudySystem — focused product and sector experience
   Only .m31 selectors. Shared header, mega-menu and source catalog untouched. */
.m31{--m31-navy:#091b3a;--m31-blue:#1b63db;--m31-line:#dfe9f5;--m31-muted:#556a85;direction:rtl;color:var(--m31-navy);position:relative;scroll-margin-top:100px}
.m31 *{box-sizing:border-box}
.m31-wrap{max-width:1360px;padding:clamp(1.15rem,3vw,2.65rem);margin-inline:auto}
.m31-product{background:radial-gradient(ellipse at 8% 4%,rgba(82,150,239,.18),transparent 42%),linear-gradient(145deg,#f4f8ff,#edf4fe);border-block:1px solid #e2ebf9}
.m31-sectors{background:linear-gradient(135deg,#f3f7fe,#fdfefe);border-block:1px solid #e7edf6}
.m31-blueprint{background:#f6f9fd;border-block:1px solid #dfe9f7}
.m31-intro{display:flex;justify-content:space-between;align-items:end;gap:1.5rem;margin-bottom:1.6rem}
.m31-intro>div:first-child{max-width:750px}
.m31-eyebrow{display:inline-flex;align-items:center;gap:.5rem;color:#195bbd;font-size:.76rem;font-weight:850;margin-bottom:.55rem}
.m31-eyebrow:before{content:"";display:inline-block;background:#1768ed;width:22px;height:2px}
.m31-intro h2{font-size:clamp(1.8rem,3.6vw,3.1rem);font-weight:850;letter-spacing:-.03em;line-height:1.26;margin:.15rem 0 .65rem;color:#0b234b}
.m31-intro p{font-size:.89rem;line-height:1.9;color:var(--m31-muted);margin:0}
.m31-metrics{display:flex;gap:.3rem;flex-wrap:wrap;max-width:450px}
.m31-metrics span{border:1px solid #cfdff7;padding:.65rem .9rem;border-radius:10px;background:#fff;white-space:nowrap;font-size:.74rem;color:#577199}
.m31-metrics b{font-weight:900;color:#115cd4;font-size:1.2rem;margin-inline-end:.2rem}
.m31-count{padding:.62rem 1.05rem;border:1px solid #cddff8;border-radius:40px;color:#135ab8;background:white;font-weight:800;font-size:.78rem;white-space:nowrap}
.m31-controls{background:#fff;border:1px solid #dce6f4;padding:1rem 1.2rem;display:flex;align-items:center;gap:1rem;border-radius:14px;margin:1.4rem 0;box-shadow:0 12px 40px -36px #1f5eac;flex-wrap:wrap}
.m31-controls>label{font-size:.79rem;font-weight:850;white-space:nowrap;color:#355a88}
.m31-controls>input{background:#f8fbff;color:#14325a;border:1px solid #d5e3f6;border-radius:10px;padding:.7rem .9rem;min-width:190px;flex:1;font:inherit;font-size:.82rem;min-height:44px}
.m31-filter{display:flex;flex-wrap:wrap;gap:.35rem}
.m31-filter button{background:#f0f5fc;border:1px solid #e0e8f5;color:#41618b;border-radius:8px;padding:.65rem .8rem;font:inherit;cursor:pointer;font-size:.74rem;font-weight:800}
.m31-filter button[aria-pressed="true"]{background:#0e2c60;color:white;border-color:#0e2c60}
.m31-filter button:hover:not([aria-pressed="true"]){background:#e0ecff}
.m31 a:focus-visible,.m31 button:focus-visible,.m31 input:focus-visible{outline:3px solid #6ba5ff;outline-offset:3px}
.m31-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.m31-card{min-width:0;display:flex;flex-direction:column;gap:.75rem;background:white;border:1px solid #dbe6f5;border-radius:16px;padding:1.45rem;box-shadow:0 18px 40px -38px #0d488a}
.m31-card[hidden]{display:none!important}
.m31-card__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.m31-card__head>span:first-child{color:#1d66d5;font-size:.77rem;font-weight:850}
.m31-status,.m31-step__flag{display:inline-flex;align-items:center;line-height:1.5;padding:.25rem .5rem;border-radius:6px;background:#e9f5f0;color:#16634e;font-size:.67rem;font-weight:800;max-width:100%}
.m31-status.is-check,.m31-step__flag.is-check{background:#fff2df;color:#915b0c}
.m31-card h3{font-size:clamp(1.12rem,1.5vw,1.45rem);line-height:1.4;color:#0c2855;margin:.1rem 0 0;font-weight:850}
.m31-card>p{font-size:.84rem;color:#62738f;line-height:1.8;margin:0;min-height:3.3em}
.m31-steps{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem;margin:.5rem 0 .65rem;padding:0}
.m31-step{min-width:0}
.m31-step a{display:flex;align-items:flex-start;flex-direction:column;gap:.46rem;min-height:161px;height:100%;border:1px solid #e1e9f5;border-radius:10px;background:linear-gradient(155deg,#f4f8fe,#fff);padding:.8rem .68rem;color:#143966;text-decoration:none;position:relative;transition:border .16s,background .16s}
.m31-step a:hover{border-color:#99bdf1;background:#eaf3ff}
.m31-step__index{display:grid;place-items:center;font-size:.72rem;font-weight:900;width:27px;height:24px;border-radius:6px;background:#dceafe;color:#125dcc}
.m31-step strong{font-size:.76rem;line-height:1.5;color:#14325c}
.m31-step__flag{margin-top:auto;font-size:.62rem}
.m31-step__arrow{position:absolute;left:.6rem;top:.6rem;color:#508be6;font-size:.85rem}
.m31-card__foot{margin-top:auto;padding-top:.8rem;border-top:1px solid #e5edf8}
.m31-card__foot p{font-size:.75rem;color:#61758f;line-height:1.75;margin:0 0 .45rem}
.m31-card__foot a{font-size:.78rem;font-weight:850;color:#165dc9}
.m31-evidence-note{font-size:.72rem;color:#637895;margin:1.15rem 0 .5rem;line-height:1.8;border-right:3px solid #aacaf4;padding:.65rem .9rem;background:#f9fbff;border-radius:5px}
.m31-foot-actions{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;margin-top:1rem}
.m31-foot-actions a,.m31-inline-cta{display:inline-flex;padding:.8rem 1.1rem;background:#0c2859;color:#fff!important;border-radius:30px;font-size:.78rem;font-weight:850;text-decoration:none}
.m31-foot-actions a:nth-child(1){background:#fff;color:#145cbd!important;border:1px solid #b8d0f6}
.m31-empty{border:1px solid #cddff9;padding:1.4rem;text-align:center;border-radius:12px;background:white;font-size:.9rem;color:#486487}
.m31-empty[hidden]{display:none!important}
.m31-empty button{border:0;background:none;font:inherit;font-weight:900;color:#0d60c9;cursor:pointer}
.m31-sector-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem}
.m31-sector{display:flex;flex-direction:column;min-width:0;min-height:330px;border:1px solid #dce6f4;background:#fff;border-radius:16px;padding:1.2rem;box-shadow:0 15px 40px -37px #0b448e}
.m31-sector__top{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#1f62c9;font-weight:850;font-size:.76rem;margin-bottom:.9rem}
.m31-sector__symbol{display:grid;place-items:center;width:39px;height:39px;background:#e8f0ff;color:#2369d6;border-radius:11px;font-size:1.4rem}
.m31-sector h3{font-size:1.12rem;line-height:1.5;color:#0d2b57;margin:0 0 .5rem}
.m31-sector>p{font-size:.8rem;color:#60748e;line-height:1.8;margin:0 0 1.1rem}
.m31-sector__caps{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1rem}
.m31-sector__caps span{font-size:.7rem;color:#2f5b92;border:1px solid #d7e6f9;background:#f0f6fe;border-radius:7px;padding:.28rem .45rem}
.m31-sector__caps span.is-check{color:#9a600d;background:#fff4e4;border-color:#f2ddbc}
.m31-sector>a{display:block;margin-top:auto;border-top:1px solid #e2eafa;padding-top:.8rem;font-weight:850;color:#155ac0;font-size:.8rem;text-decoration:none}
.m31-blueprint__steps{padding:0;margin:0;list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem}
.m31-blueprint__steps li{min-width:0;position:relative;display:flex;flex-direction:column;gap:.8rem;align-items:start;background:white;border:1px solid #dbe6f5;padding:1.2rem;border-radius:13px;min-height:235px}
.m31-blueprint__n{display:grid;place-items:center;width:33px;height:30px;border-radius:9px;background:#e7efff;color:#125ac2;font-weight:900;font-size:.77rem}
.m31-blueprint__steps strong{color:#17365f;font-size:.95rem}
.m31-blueprint__steps p{font-size:.78rem;color:#60718b;line-height:1.75;margin:.3rem 0 .6rem}
.m31-blueprint__steps a{color:#1a62c2;font-size:.74rem;font-weight:800;text-decoration:none}
.m31-blueprint__steps .m31-step__flag{margin-top:auto}
.m31-blueprint__decision{margin-top:1rem;padding:1.15rem 1.35rem;background:linear-gradient(110deg,#0c2c5e,#103e78);border-radius:14px;color:white}
.m31-blueprint__decision>span{font-size:.72rem;color:#abceff;font-weight:850}
.m31-blueprint__decision>p{margin:.45rem 0 .65rem;line-height:1.8;color:#f2f7ff;font-size:.85rem}
.m31-blueprint__decision>div{display:flex;flex-wrap:wrap;gap:1rem}
.m31-blueprint__decision a{color:#fff;font-size:.77rem;font-weight:850;text-decoration:underline}
.m31-blueprint .m31-evidence-note{margin-bottom:0}
@media(max-width:1080px){.m31-sector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.m31-blueprint__steps{grid-template-columns:repeat(2,minmax(0,1fr))}.m31-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.m31-step a{min-height:133px}}
@media(max-width:760px){.m31-wrap{padding:1.5rem 1rem}.m31-intro{display:block}.m31-metrics{margin-top:1rem}.m31-controls{display:block}.m31-controls>label{display:block;margin-bottom:.5rem}.m31-controls>input{width:100%;margin-bottom:.7rem}.m31-grid{grid-template-columns:1fr}.m31-card{padding:1.1rem}.m31-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.m31-step a{min-height:134px}.m31-sector-grid{grid-template-columns:1fr}.m31-sector{min-height:0}.m31-blueprint__steps{grid-template-columns:1fr}.m31-blueprint__steps li{min-height:0}.m31-inline-cta{margin-top:1rem}.m31-metrics span{padding:.55rem .7rem}}
@media(max-width:350px){.m31-step__flag{font-size:.57rem}.m31-filter button{font-size:.68rem;padding:.53rem .57rem}.m31-controls{padding:.75rem}.m31-step strong{font-size:.7rem}}
@media(prefers-reduced-motion:reduce){.m31-step a{transition:none}}
