/* Homepage styles are loaded only on the front page. */
.ms-home { overflow:clip; }
.ms-home :is(h1,h2,h3,h4) { font-weight:700; }
.ms-home h1 { font-size:clamp(38px,4.167vw,60px); line-height:1.03; letter-spacing:-1.1px; }
.ms-home h2 { font-size:clamp(30px,3.056vw,44px); line-height:1.12; letter-spacing:-.55px; }
.ms-home p { font-size:16px; line-height:1.58; font-weight:400; }
.ms-home h1 em { color:var(--ms-mint); font-style:normal; }
.ms-section { padding-block:120px; scroll-margin-top:calc(var(--ms-header-height) + 20px); }
.ms-home .ms-eyebrow { color:var(--ms-mint); font-size:14px; font-weight:700; line-height:1.3; text-transform:uppercase; margin-bottom:22px; }
.ms-light { color:var(--ms-ink); background:var(--ms-paper); }
.ms-light :is(h2,.ms-eyebrow) { color:var(--ms-blue); }
.ms-section-heading { display:grid; grid-template-columns:1.1fr 1fr; gap:55px; align-items:center; margin-bottom:64px; }
.ms-section-heading>p { padding-top:30px; }
.ms-home .ms-section-lead { max-width:820px; margin-top:26px; }
.ms-hero { position:relative; height:calc(100svh - var(--ms-header-height)); min-height:450px; max-height:900px; background:#030c16; }
.ms-hero__video { display:block; width:100%; height:100%; object-fit:cover; }
.ms-scroll-cue { position:absolute; bottom:64px; right:var(--ms-gutter); display:flex; flex-direction:column; align-items:center; width:32px; padding:8px; }
.ms-scroll-cue span { width:9px; height:9px; border-right:3px solid var(--ms-mint); border-bottom:3px solid var(--ms-mint); transform:rotate(45deg); margin-top:5px; filter:drop-shadow(0 0 5px #00e5b0); animation:ms-chevron 1.6s ease-in-out infinite; }
.ms-scroll-cue span:nth-child(2) { animation-delay:.16s; }.ms-scroll-cue span:nth-child(3) { animation-delay:.32s; }
.ms-motion-toggle { position:absolute; bottom:18px; left:var(--ms-gutter); font-size:12px !important; line-height:1.3; color:white; background:#040829b3; border:1px solid #ffffff70; border-radius:999px; padding:7px 12px; opacity:.7; }.ms-motion-toggle:hover,.ms-motion-toggle:focus-visible { opacity:1; }
.ms-intro { background:linear-gradient(108deg,var(--ms-blue),var(--ms-navy)); }
.ms-intro__grid { display:grid; grid-template-columns:minmax(0,1fr) 275px; gap:100px; align-items:center; }
.ms-intro p { margin:35px 0 52px; font-size:18px; line-height:1.65; }
.ms-stats { display:grid; gap:0; }.ms-stats>div { padding:23px 0; border-bottom:1px solid #28bcb044; }.ms-stats>div:first-child { padding-top:0; }.ms-stats>div:last-child { padding-bottom:0; border:0; }
.ms-stats dt { font-size:60px; font-weight:700; line-height:1.05; letter-spacing:-1.4px; }.ms-stats dd { font-size:12px; margin-top:4px; }
.ms-overview { padding-block:110px 135px; background:var(--ms-deep); }
.ms-overview__grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:70px; align-items:center; }
.ms-overview__copy h2 { margin-bottom:26px; }.ms-overview__copy>p:not(.ms-eyebrow) { margin-bottom:24px; }.ms-overview__copy .ms-button { margin-top:18px; }
.ms-overview-art { position:relative; min-height:440px; }
.ms-overview-art__shape,.ms-overview-art__ghost { position:absolute; width:190px; height:250px; top:60px; left:80px; clip-path:polygon(0 28%,64% 0,90% 12%,20% 46%,25% 56%,100% 87%,100% 100%,0 56%); background:linear-gradient(40deg,#00e6ae,#00a9ff); filter:drop-shadow(0 0 28px #00e5b022); }
.ms-overview-art__shape,.ms-overview-art__ghost { clip-path:none; background:url('../images/overview-chevron.svg') center/contain no-repeat; }
.ms-overview-art__shape { animation:ms-float 6s ease-in-out infinite; }
.ms-overview-art__ghost { opacity:.16; transform:rotate(60deg); }.ms-overview-art__ghost--one { top:-125px; left:-65px; }.ms-overview-art__ghost--two { top:310px; left:-10px; transform:rotate(-60deg); }
.ms-overview-art__pointer { position:absolute; top:240px; left:315px; width:0; height:0; border-top:28px solid transparent; border-bottom:28px solid transparent; border-left:29px solid #ddd; }
.ms-overview-art__labels { position:absolute; top:241px; left:366px; color:var(--ms-mint); font-size:30px; font-weight:500; }
.ms-overview-art__labels span { position:absolute; white-space:nowrap; opacity:0; transform:translateY(15px); transition:opacity .5s ease,transform .5s var(--ms-ease); }.ms-overview-art__labels .is-active { opacity:1; transform:none; }
.ms-services__layout { display:grid; grid-template-columns:.93fr 2.2fr; gap:42px; align-items:center; }.ms-services__intro h2 { margin-bottom:28px; }.ms-services__intro>p:not(.ms-eyebrow) { margin-bottom:38px; }
.ms-services__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.ms-service { position:relative; padding:32px; min-height:317px; border-radius:12px; color:var(--ms-white); background:var(--ms-gradient); overflow:hidden; transition:box-shadow .3s ease,transform .3s var(--ms-ease); }
.ms-service .ms-icon { width:36px; height:36px; margin-bottom:20px; }.ms-service h3 { font-size:18px; line-height:1.3; margin-bottom:18px; }.ms-service p { font-size:15px; line-height:1.53; }
.ms-service__link { display:inline-flex; align-items:center; gap:12px; padding:5px 14px; font-size:13px; font-weight:700; margin-top:16px; border:1px solid #fff8; border-radius:30px; opacity:0; transform:translateY(10px); transition:opacity .25s,transform .25s; }
.ms-service:hover .ms-service__link,.ms-service:focus-within .ms-service__link { opacity:1; transform:none; }
.ms-industries { background:var(--ms-navy); }.ms-industries__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }.ms-industry { display:flex; flex-direction:column; align-items:flex-start; min-width:0; }
.ms-industry__image { display:block; position:relative; width:100%; aspect-ratio:1.7; border-radius:10px; overflow:hidden; margin-bottom:14px; }.ms-industry__image::after { content:''; position:absolute; inset:0; background:linear-gradient(0deg,#07054488,transparent); pointer-events:none; }.ms-industry__image img { width:100%; height:100%; object-fit:cover; transition:transform .6s var(--ms-ease); }.ms-industry:hover img { transform:scale(1.055); }
.ms-industry h3 { font-size:25px; font-weight:500; line-height:1.2; margin-bottom:22px; }.ms-industry p { margin-bottom:30px; }.ms-industry .ms-button { margin-top:auto; min-width:138px; min-height:32px; padding:7px 24px; }
.ms-outcomes__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; margin-top:60px; }
.ms-outcome { padding:36px 24px; text-align:center; border:1px solid #08065344; border-bottom-color:#08065344; border-radius:12px; transition:transform .3s var(--ms-ease),box-shadow .3s ease; }.ms-outcome h3 { font-size:44px; line-height:1.15; color:var(--ms-blue); margin-bottom:22px; white-space:nowrap; letter-spacing:-1px; }.ms-outcome h4 { font-size:16px; font-weight:500; margin-bottom:16px; line-height:1.4; }.ms-outcome p { font-size:14px; font-weight:300; line-height:1.6; }
.ms-why { position:relative; overflow:hidden; background:var(--ms-navy); isolation:isolate; }.ms-why__video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; }.ms-why::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,var(--ms-navy) 0%,var(--ms-navy) 43%,#080653c9 60%,#08065322 100%); z-index:-1; }.ms-why__copy { max-width:900px; }.ms-why__copy h2 { margin-bottom:28px; }
.ms-benefits { max-width:850px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:55px 70px; margin-top:80px; }.ms-benefit .ms-icon { color:var(--ms-mint); width:46px; height:46px; margin-bottom:15px; }.ms-benefit p { line-height:1.55; }
.ms-partners__grid { display:grid; grid-template-columns:1.02fr 2fr; gap:24px; }.ms-partner-panel,.ms-certifications { color:white; background:var(--ms-gradient-horizontal); border-radius:12px; }.ms-partner-panel { padding:52px 38px; text-align:center; min-height:235px; }.ms-partner-panel h3,.ms-certifications>h3 { font-size:18px; font-weight:700; text-align:center; }.ms-siemens { display:block; font-size:58px; line-height:1.1; font-weight:800; margin-top:42px; }
.ms-partner-logos { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); align-items:center; gap:24px; margin-top:24px; }.ms-partner-logos img { width:100%; height:95px; object-fit:contain; }
.ms-certifications { margin-top:24px; padding:54px 44px; }.ms-certifications__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:74px; margin-top:52px; }.ms-certification { padding:30px 22px; border:1px solid #ffffff60; border-radius:16px; text-align:center; }.ms-certification__icon { display:grid; place-items:center; width:64px; height:64px; border-radius:50%; background:#00debe22; margin:0 auto 24px; }.ms-certification__icon .ms-icon { width:28px; height:28px; }.ms-certification h4 { font-size:24px; line-height:1.15; margin-bottom:10px; }.ms-certification p { line-height:1.5; }
.ms-insights { background:linear-gradient(110deg,var(--ms-blue),var(--ms-navy)); }.ms-insights__heading { display:flex; justify-content:space-between; align-items:center; gap:35px; margin-top:26px; }.ms-insights__grid { display:grid; grid-template-columns:2fr 1fr; gap:24px; margin-top:48px; }.ms-whitepaper { display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; min-height:365px; padding:38px; border:1px solid #ffffff77; border-radius:12px; background:linear-gradient(95deg,#080653bb,#080653bb),url('../images/insights-network.png') center/cover; }.ms-whitepaper h3 { font-size:24px; line-height:1.2; margin:40px 0 70px; }.ms-whitepaper p { margin-bottom:12px; }.ms-whitepaper .ms-button { padding:5px 16px; font-size:14px; min-height:28px; }
.ms-tag { display:inline-block; font-size:11px; font-weight:700; line-height:1; color:var(--ms-navy); background:var(--ms-mint); border-radius:99px; padding:6px 12px; }.ms-tag--navy { background:var(--ms-blue); color:white; }.ms-tag--gold { background:#c78b21; color:white; }
.ms-articles { display:grid; gap:17px; }.ms-article { padding:21px 26px; border-radius:13px; background:white; color:#08062d; }.ms-article .ms-tag { font-size:10px; font-weight:500; padding:4px 10px; }.ms-article h3 { font-size:16px; font-weight:500; line-height:1.25; margin:12px 0; }.ms-article>div { display:flex; gap:16px; align-items:center; justify-content:space-between; padding-top:16px; border-top:1px solid #0003; }.ms-article p { font-size:12px; line-height:1.35; max-width:220px; }.ms-article a { flex-shrink:0; font-size:14px; font-weight:700; color:var(--ms-blue); }.ms-article a span { margin-left:6px; }
.ms-contact { text-align:center; }.ms-contact p { margin:28px 0 40px; }.ms-contact .ms-actions { justify-content:center; }.ms-contact .ms-button--outline { color:var(--ms-navy); }

/* Content remains visible without JavaScript or IntersectionObserver. */
.ms-home .ms-reveal-pending { opacity:0; transform:translateY(28px); }
.ms-home [data-reveal] { transition:opacity .7s var(--ms-ease),transform .7s var(--ms-ease); transition-delay:var(--ms-reveal-delay,0ms); }
.ms-home [data-reveal].is-visible { opacity:1; transform:none; }
.ms-motion-paused *, .ms-motion-paused *::before, .ms-motion-paused *::after { animation-play-state:paused !important; }
.ms-motion-paused [data-reveal] { transition:none; }
@keyframes ms-chevron { 0%,100%{opacity:.25;transform:translateY(-3px) rotate(45deg)} 50%{opacity:1;transform:translateY(3px) rotate(45deg)} }
@keyframes ms-float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-12px)} }
@media(max-width:1400px) {
  .ms-section { padding-block:100px; }.ms-home p { font-size:15px; }.ms-intro__grid { grid-template-columns:minmax(0,1fr) 245px; gap:75px; }.ms-intro p { font-size:17px; }.ms-stats dt { font-size:56px; }
  .ms-section-heading { margin-bottom:56px; }.ms-service { padding:28px 30px; min-height:290px; }.ms-service p { font-size:14px; }.ms-services__grid { gap:22px; }.ms-service__link { margin-top:10px; }.ms-services__layout { gap:35px; }.ms-service h3 { font-size:18px; }
  .ms-industry h3 { font-size:24px; }.ms-certifications__grid { gap:65px; }.ms-certification { padding:30px 20px; }.ms-certification h4 { font-size:22px; }.ms-outcome h3 { font-size:42px; }.ms-outcome p { font-size:14px; }
  .ms-overview__grid { gap:50px; }.ms-overview-art { transform:scale(.9); transform-origin:left center; }.ms-partner-panel { padding:48px 30px; }.ms-siemens { font-size:56px; }.ms-partner-logos { gap:20px; }.ms-article a { font-size:13px; }.ms-article h3 { font-size:15px; }.ms-article p { font-size:11px; }
}
@media(max-width:1100px) {
  .ms-intro__grid { gap:40px; grid-template-columns:minmax(0,1fr) 190px; }.ms-desktop-break { display:none; }.ms-overview__grid { grid-template-columns:.8fr 1.2fr; gap:25px; }.ms-overview-art { transform:scale(.7); min-height:420px; }
  .ms-services__layout { grid-template-columns:1fr; gap:45px; }.ms-services__intro { max-width:650px; }.ms-services__intro h2 { max-width:600px; }.ms-service { min-height:300px; }.ms-industries__grid,.ms-outcomes__grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:38px 24px; }.ms-section-heading { gap:30px; }.ms-benefits { max-width:780px; gap:45px; }
  .ms-certifications__grid { gap:20px; }.ms-certification { padding:24px 14px; }.ms-certification h4 { font-size:20px; }.ms-partners__grid { grid-template-columns:1fr 1.7fr; }.ms-siemens { font-size:46px; }.ms-partner-logos { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 25px; }.ms-partner-logos img { height:55px; }.ms-partner-panel--current { display:flex; flex-direction:column; justify-content:center; }
  .ms-insights__grid { grid-template-columns:1.4fr 1fr; }.ms-article>div { align-items:flex-start; flex-direction:column; gap:10px; }.ms-article p { max-width:none; }.ms-whitepaper h3 { margin-bottom:40px; }
}
@media(max-width:760px) {
  .ms-section { padding-block:70px; }.ms-home h1 { font-size:42px; line-height:1.08; }.ms-home h2 { font-size:34px; }.ms-home .ms-eyebrow { font-size:12px; margin-bottom:18px; }.ms-hero { min-height:360px; height:65svh; max-height:600px; }.ms-scroll-cue { bottom:40px; }
  .ms-intro__grid { grid-template-columns:1fr; gap:48px; }.ms-intro p { font-size:16px; margin:28px 0 32px; }.ms-stats { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }.ms-stats>div { border-bottom:1px solid #28bcb044; padding:0 0 20px; }.ms-stats dt { font-size:46px; }.ms-stats dd { font-size:12px; }.ms-stats>div:last-child { border-bottom:1px solid #28bcb044; }
  .ms-overview__grid { grid-template-columns:1fr; gap:25px; }.ms-overview-art { width:470px; max-width:100%; min-height:310px; transform:scale(.72); transform-origin:top left; margin-bottom:-80px; }.ms-overview-art__ghost--one { top:-70px; }.ms-overview-art__ghost--two { top:240px; }
  .ms-services__grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }.ms-service { padding:26px 23px; }.ms-service__link { opacity:1; transform:none; }.ms-section-heading { grid-template-columns:1fr; gap:22px; margin-bottom:38px; }.ms-section-heading>p { padding:0; }.ms-industry h3 { font-size:22px; }.ms-industry p { font-size:14px; }.ms-industry .ms-button { font-size:14px; }
  .ms-outcomes__grid { margin-top:38px; gap:18px; }.ms-outcome { padding:30px 18px; }.ms-outcome h3 { font-size:36px; }.ms-outcome h4 { font-size:15px; }.ms-outcome p { font-size:13px; }
  .ms-benefits { grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px; margin-top:48px; }.ms-why::after { background:#080653d9; }.ms-why__copy h2 br { display:none; }
  .ms-partners__grid { grid-template-columns:1fr; gap:18px; }.ms-partner-panel { min-height:0; padding:35px 25px; }.ms-siemens { margin-top:25px; }.ms-partner-logos { grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }.ms-partner-logos img { height:60px; }.ms-certifications { padding:35px 22px; }.ms-certifications__grid { grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:30px; }.ms-certification p { font-size:14px; }
  .ms-insights__heading { flex-direction:column; align-items:flex-start; gap:24px; }.ms-insights__grid { grid-template-columns:1fr; gap:20px; margin-top:32px; }.ms-whitepaper { min-height:320px; padding:30px; }.ms-whitepaper h3 { font-size:23px; }.ms-article>div { flex-direction:row; align-items:center; }.ms-article h3 { font-size:17px; }.ms-article p { max-width:65%; font-size:12px; }.ms-contact p { margin:24px 0 32px; }
}
@media(max-width:440px) {
  .ms-home h1 { font-size:36px; }.ms-home h2 { font-size:30px; }.ms-section { padding-block:58px; }.ms-services__grid,.ms-industries__grid { grid-template-columns:1fr; }.ms-service { min-height:0; padding:28px; }.ms-service p { font-size:15px; }.ms-service__link { margin-top:20px; }.ms-industry p { font-size:15px; }.ms-industry h3 { font-size:25px; }
  .ms-outcome { padding:24px 12px; }.ms-outcome h3 { font-size:27px; letter-spacing:-.7px; }.ms-outcome h4 { font-size:14px; }.ms-benefits { gap:28px 22px; }.ms-benefit p { font-size:14px; }.ms-overview-art { transform:scale(.6); margin-bottom:-120px; }.ms-partner-logos { grid-template-columns:repeat(2,minmax(0,1fr)); }.ms-certification { padding:22px 10px; }.ms-certification h4 { font-size:18px; }.ms-certification p { font-size:13px; }.ms-certifications__grid { gap:14px; }.ms-certifications { padding-inline:18px; }.ms-article { padding:24px; }.ms-article>div { flex-direction:column; align-items:flex-start; }.ms-article p { max-width:none; }.ms-contact .ms-actions { flex-direction:column; }.ms-contact .ms-button { width:100%; }
}
@media(hover:none) {.ms-service__link { opacity:1; transform:none; }}
@media(prefers-reduced-motion:reduce) {.ms-home .ms-reveal-pending { opacity:1; transform:none; }}

/* The reference is a 1440px frame displayed with proportional scaling. */
@media(min-width:1101px) and (max-width:1400px) {
  .ms-home p { font-size:14.222px; }.ms-intro p { font-size:16px; }
  .ms-home .ms-eyebrow { font-size:13px; }.ms-home .ms-button { font-size:14.222px; }
  .ms-actions .ms-button { min-height:49px; padding:14px 28px; }
  .ms-stats dt { font-size:53.333px; }.ms-stats>div { padding:22px 0; }
  .ms-service { min-height:282px; padding:28px 28px 50px; }
  .ms-service .ms-icon { width:32px; height:32px; margin-bottom:16px; }
  .ms-service h3 { font-size:16px; line-height:1.3; margin-bottom:18px; }
  .ms-service p { font-size:13.333px; line-height:1.52; }
  .ms-service__link { position:absolute; bottom:16px; left:28px; font-size:12px; padding:4px 12px; }
  .ms-industry h3 { font-size:23px; }.ms-outcome h3 { font-size:40px; }
  .ms-outcome h4 { font-size:14px; }.ms-outcome p { font-size:13px; }
  .ms-whitepaper h3 { font-size:22px; }.ms-article h3 { font-size:14px; }
  .ms-article p { font-size:11px; }.ms-partner-panel h3,.ms-certifications>h3 { font-size:16px; }
}

/* Prototype card states: animate contents without moving the card/grid. */
.ms-service { --ms-service-shift:56px; isolation:isolate; }
.ms-service::before { content:''; position:absolute; inset:0; z-index:-1; background:var(--ms-gradient-horizontal); opacity:0; transition:opacity .35s ease; }
.ms-service .ms-icon { transition:opacity .3s ease,transform .35s var(--ms-ease); }
.ms-service h3,.ms-service>p { transition:transform .35s var(--ms-ease); }
.ms-service__link { color:var(--ms-mint) !important; border-color:var(--ms-mint); }
.ms-service__link:is(:hover,:focus-visible) { background:var(--ms-mint); color:var(--ms-navy) !important; }
@media(hover:hover) {
  .ms-service:hover::before { opacity:1; }
  .ms-service:hover .ms-icon { opacity:0; transform:translateY(-20px); }
  .ms-service:hover h3,.ms-service:hover>p { transform:translateY(calc(-1 * var(--ms-service-shift))); }
  .ms-service:hover .ms-service__link { transform:translateY(calc(-1 * var(--ms-service-shift))); }
}
.ms-service:focus-within::before { opacity:1; }
.ms-service:focus-within .ms-icon { opacity:0; transform:translateY(-20px); }
.ms-service:focus-within h3,.ms-service:focus-within>p { transform:translateY(calc(-1 * var(--ms-service-shift))); }
.ms-service:focus-within .ms-service__link { transform:translateY(calc(-1 * var(--ms-service-shift))); }
.ms-outcome { position:relative; isolation:isolate; overflow:hidden; transition:color .3s ease,border-color .3s ease; }
.ms-outcome::before { content:''; position:absolute; inset:0; z-index:-1; background:var(--ms-gradient-horizontal); opacity:0; transition:opacity .3s ease; }
.ms-outcome h3 { transition:color .3s ease; }
@media(hover:hover) {
  .ms-outcome:hover { color:white; border-color:transparent; }
  .ms-outcome:hover::before { opacity:1; }
  .ms-outcome:hover h3 { color:white; }
}
@media(min-width:1101px) and (max-width:1400px) {
  .ms-service { --ms-service-shift:48px; }
  .ms-service:hover .ms-service__link,.ms-service:focus-within .ms-service__link { transform:none; }
}
/* The wheel rotates as a group around its off-canvas hub; the pointer stays fixed. */
.ms-overview-art__wheel { position:absolute; inset:0; transform-origin:-140px 185px; will-change:transform; }
.ms-overview-art__segment { position:absolute; left:80px; top:60px; width:190px; height:250px; transform-origin:-220px 125px; background:url('../images/overview-chevron.svg') center/contain no-repeat; opacity:.14; }
.ms-overview-art__segment.is-active { opacity:1; }
.ms-overview-art__segment:nth-child(2) { transform:rotate(60deg); }
.ms-overview-art__segment:nth-child(3) { transform:rotate(120deg); }
.ms-overview-art__segment:nth-child(4) { transform:rotate(180deg); }
.ms-overview-art__segment:nth-child(5) { transform:rotate(240deg); }
.ms-overview-art__segment:nth-child(6) { transform:rotate(300deg); }
.ms-overview-art__labels span { transform:none; transition:none; line-height:1.25; }

.ms-overview { overflow:hidden; }
/* Updated homepage prototype: Industries carousel and both CTA hover states. */
.ms-industries>.ms-container { position:relative; }
.ms-industries .ms-section-heading { display:block; padding-right:150px; margin-bottom:60px; }
.ms-industries .ms-section-heading>p { max-width:580px; padding:0; margin-top:28px; }
.ms-industries__controls { position:absolute; top:155px; right:0; display:flex; gap:20px; }
.ms-industries__controls button { display:grid; place-items:center; width:52px; height:52px; padding:0; border:1px solid var(--ms-mint); border-radius:50%; color:var(--ms-mint); background:transparent; transition:background-color .2s,color .2s; }
.ms-industries__controls button:hover { background:var(--ms-mint); color:var(--ms-navy); }
.ms-industries__controls button:focus-visible { outline:2px solid var(--ms-white); outline-offset:4px; }
.ms-industries__controls svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.5; }
.ms-industries__grid.slick-initialized { display:block; margin-inline:-10px; }
.ms-industries__grid .slick-track { display:flex; }
.ms-industries__grid .slick-slide.ms-industry { display:flex; height:auto; margin-inline:10px; }
.ms-industries__grid .slick-list { overflow:hidden; }
.ms-home .ms-contact .ms-button--navy:is(:hover,:focus-visible) { background:transparent; color:var(--ms-blue) !important; border-color:var(--ms-blue); box-shadow:none; }
.ms-home .ms-contact .ms-button--outline:is(:hover,:focus-visible) { background:var(--ms-blue); color:var(--ms-white) !important; border-color:var(--ms-blue); box-shadow:none; }
.ms-home .ms-contact .ms-button:is(:hover,:focus-visible) .ms-arrow { transform:translateX(4px); }
@media(max-width:760px) {
 .ms-industries .ms-section-heading { padding-right:0; margin-bottom:28px; }
 .ms-industries .ms-section-heading>p { margin-top:22px; }
 .ms-industries__controls { position:static; justify-content:flex-end; margin-bottom:28px; gap:14px; }
 .ms-industries__controls button { width:44px; height:44px; }
}
@media(prefers-reduced-motion:reduce) { .ms-industries__controls button { transition:none; } }


/* Figma homepage — Capabilities, node 4261:35357 */
.ms-capabilities{height:953px;padding:120px 0;background:radial-gradient(circle at 28% 28%,#22228d 0,#17177f 38%,#11116f 72%,#0d0d60 100%);color:#f2f7fa}
.ms-capabilities__heading{display:grid;grid-template-columns:710px 1fr;gap:80px;align-items:end}
.ms-capabilities__heading .ms-eyebrow{margin:0 0 20px;color:#00f2ad}
.ms-capabilities__heading h2{max-width:711px;margin:0;color:#f2f7fa;font-size:42px;line-height:1.15;font-weight:900;letter-spacing:0}
.ms-capabilities__heading>p{max-width:490px;margin:0 0 3px;font-size:16px;line-height:1.55;color:#f2f7fa}
.ms-capabilities__grid{display:grid;grid-template-columns:654px 586px;gap:40px;height:486px;margin-top:54px}
.ms-capabilities__grid article{min-width:0}.ms-capabilities__grid article>header{display:flex;align-items:center;justify-content:space-between;gap:24px}
.ms-capabilities__grid h3{margin:0;font-size:16px;line-height:1.35;font-weight:700;color:#f2f7fa}
.ms-capabilities__grid header>a{display:inline-flex;align-items:center;gap:7px;color:#00f2ad;font-size:12px;line-height:1.2;font-weight:500;text-decoration:none}
.ms-capabilities__grid header>a span{transition:transform .2s ease}.ms-capabilities__grid header>a:hover span{transform:translateX(3px)}
.ms-capabilities__services{height:486px;padding:38px 40px;background:rgba(242,247,250,.075);border-radius:4px}
.ms-capabilities__service-list{display:grid;gap:24px;margin-top:30px}.ms-capabilities__service-list>div{display:grid;grid-template-columns:32px 1fr;gap:20px;align-items:start}
.ms-capabilities .ms-icon{width:32px;height:32px;color:#00f2ad;flex:none}.ms-capabilities h4{margin:0;color:#f2f7fa;font-size:15px;line-height:1.32;font-weight:500}
.ms-capabilities__service-list p,.ms-capabilities__solution-grid p{margin:5px 0 0;color:#d7dbee;font-size:12px;line-height:1.45;font-weight:400}
.ms-capabilities__solutions{height:486px;padding-top:20px}.ms-capabilities__solutions>header{padding:0 0 24px}.ms-capabilities__solution-grid{display:grid;grid-template-columns:1fr 1fr;height:412px}
.ms-capabilities__solution-grid>div{padding:28px 22px 22px 20px}.ms-capabilities__solution-grid>div:nth-child(odd){border-right:1px solid rgba(242,247,250,.22)}.ms-capabilities__solution-grid>div:nth-child(-n+2){border-bottom:1px solid rgba(242,247,250,.22)}
.ms-capabilities__solution-grid .ms-icon{margin-bottom:17px}.ms-capabilities__solution-grid h4{max-width:235px}
@media(max-width:1400px) and (min-width:1101px){.ms-capabilities__heading{grid-template-columns:55% 1fr;gap:60px}.ms-capabilities__grid{grid-template-columns:1.08fr .97fr;gap:32px}.ms-capabilities__heading h2{font-size:38px}}
@media(max-width:1100px){.ms-capabilities{height:auto;padding:100px 0}.ms-capabilities__heading{grid-template-columns:1fr;gap:28px}.ms-capabilities__heading>p{max-width:720px}.ms-capabilities__grid{grid-template-columns:1fr;height:auto}.ms-capabilities__services,.ms-capabilities__solutions{height:auto}.ms-capabilities__solution-grid{height:auto}}
@media(max-width:760px){.ms-capabilities{padding:70px 0}.ms-capabilities__heading h2{font-size:34px}.ms-capabilities__heading>p{font-size:15px}.ms-capabilities__grid{gap:30px;margin-top:42px}.ms-capabilities__services{padding:30px 24px}.ms-capabilities__solution-grid{grid-template-columns:1fr}.ms-capabilities__solution-grid>div{padding:26px 8px}.ms-capabilities__solution-grid>div:nth-child(odd){border-right:0}.ms-capabilities__solution-grid>div:not(:last-child){border-bottom:1px solid rgba(242,247,250,.22)}}

/* Feedback 15 Oct: Services panel spreads its 4 items over the full card (no empty bottom). */
.ms-capabilities__services{display:flex;flex-direction:column}
.ms-capabilities__service-list{flex:1 1 auto;align-content:space-evenly;margin-top:18px}
@media(max-width:1100px){.ms-capabilities__service-list{align-content:start;gap:24px}}
.ms-article__soon{display:inline-flex;align-items:center;font-size:13px;font-weight:600;color:#8a90a8;white-space:nowrap}
@media(max-width:760px){.ms-overview__grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:360px){.ms-overview-art{transform:scale(.5);margin-bottom:-150px}}
@media(min-width:761px) and (max-width:1400px){.ms-overview-art__labels{left:348px;font-size:22px}}
/* Overview labels: every label (1 or 2 lines) is vertically centred on the white arrow (arrow centre = 240 + 28px). */
.ms-overview-art__labels { top:268px; }
@media(min-width:761px) and (max-width:1400px){.ms-overview-art__labels{left:358px}}
.ms-overview-art__labels span,.ms-overview-art__labels .is-active { top:0; transform:translateY(-50%); }
/* 761–1000px: the two-column layout is too narrow for the wheel labels (they ran into the copy) — stack like tablet. */
@media(min-width:761px) and (max-width:1100px){.ms-overview__grid{grid-template-columns:minmax(0,1fr);gap:25px}.ms-overview-art{width:470px;max-width:100%;min-height:310px;transform:scale(.72);transform-origin:top left;margin-bottom:-80px}}
@media(max-width:420px){.ms-outcome h3{font-size:clamp(21px,6.4vw,27px)}}
/* Overview art on tablet/mobile: keep the rotating wheel, pointer and labels inside their own box so nothing overlaps the heading (review feedback, Oct 2026). */
@media(max-width:1100px){.ms-overview-art{width:640px;max-width:none;height:440px;min-height:0;margin:0 0 8px;transform:none;overflow:hidden;zoom:.75}.ms-overview-art__labels{left:366px;font-size:30px}}
@media(max-width:760px){.ms-overview-art{zoom:.52;margin-bottom:4px}}
@media(max-width:360px){.ms-overview-art{zoom:.46;margin-bottom:0}}
/* Overview wheel on tablet/mobile: the box clips the faded wheel segments; fade them out at the top and bottom edges instead of a hard cut, and centre the graphic. */
@media(max-width:1100px){.ms-overview-art{height:370px;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 12%,#000 84%,transparent 92%);mask-image:linear-gradient(to bottom,transparent 0,#000 12%,#000 84%,transparent 92%)}}
@media(max-width:760px){.ms-overview-art{margin-left:auto;margin-right:auto}}

/* Partners: single "Current Technology Partnership" panel (roadmap tile removed). */
.ms-partners__grid--single{grid-template-columns:1fr}
.ms-partner-current{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:28px 72px;margin-top:40px}
.ms-partner-current .ms-siemens{margin-top:0}
.ms-partner-current img{height:52px;width:auto;max-width:300px;object-fit:contain}
.ms-partner-wordmark{font-size:44px}
@media(max-width:760px){.ms-partner-current{gap:22px 36px;margin-top:26px}.ms-partner-current .ms-siemens{font-size:38px}.ms-partner-wordmark{font-size:30px!important}.ms-partner-current img{height:38px}}

/* Whitepaper card: description under heading; download CTA hidden until a PDF is set. */
.ms-whitepaper{justify-content:flex-start}
.ms-whitepaper h3{margin-bottom:18px}
.ms-whitepaper .ms-whitepaper__desc{max-width:560px;font-size:16px;line-height:1.55;opacity:.88;margin:0}
@media(max-width:760px){.ms-whitepaper .ms-whitepaper__desc{font-size:15px}}
