/* KRIVA · /services/saas-platforms · page-scoped
   Rhythm, cards, FAQ, and contact match the trucking / CRM solution pages. */

body.page-platforms{
  background:#fff;
  color:var(--ink);
  overflow-x:clip
}
body.page-platforms main{
  color:var(--steel);
  font-size:16px;
  line-height:1.62
}

body.page-platforms .d1{
  font-size:clamp(2rem,4.8vw,4.05rem);
  line-height:.92;
  letter-spacing:-.03em;
  color:var(--ink)
}
body.page-platforms .d2{
  font-size:clamp(2rem,3.8vw,3.4rem);
  line-height:1.08;
  letter-spacing:-.025em;
  font-weight:700;
  color:var(--ink);
  max-width:16ch
}
body.page-platforms .d3{
  font-size:clamp(1.28rem,2vw,1.7rem);
  line-height:1.16;
  letter-spacing:-.022em;
  color:var(--ink)
}
body.page-platforms .lede{
  margin-top:18px;
  max-width:42ch;
  font-size:clamp(1.05rem,1.3vw,1.22rem);
  line-height:1.6;
  letter-spacing:-.01em;
  color:var(--steel)
}
body.page-platforms .body-sm{
  font-size:15px;
  line-height:1.62;
  color:var(--steel);
  max-width:48ch
}

body.page-platforms .s-head{
  display:block;
  align-items:flex-start
}
body.page-platforms .s-head h2,
body.page-platforms .s-title{margin-top:18px}
body.page-platforms .s-head .lede{margin-top:18px}

body.page-platforms #probH{max-width:18em}
body.page-platforms #mdH{max-width:20ch}
body.page-platforms #sfH{max-width:20ch}
body.page-platforms #ktH{max-width:16ch}
body.page-platforms #pfH{max-width:14ch}
body.page-platforms #prH{max-width:20ch}
body.page-platforms #faqH{max-width:13ch}

body.page-platforms main > section{
  background:#fff;
  padding:96px 0;
  scroll-margin-top:88px
}
body.page-platforms .hero{
  background:#fff;
  color:var(--ink);
  overflow:hidden;
  padding:calc(72px + 48px) 0 48px;
  scroll-margin-top:88px;
  min-height:0
}
body.page-platforms .plat-band{
  background:#f7f8f9;
  border-top:1px solid #e6e7ea
}

/* ── Problems · dark band ── */
body.page-platforms .plat-problems{
  background:var(--ink);
  color:#DDE2E7;
  border-top:0
}
body.page-platforms .plat-problems :focus-visible{outline-color:var(--amber)}
body.page-platforms .plat-problems .eyebrow{color:var(--ink-dim)}
body.page-platforms .plat-problems h2{color:#fff}
body.page-platforms .plat-problems h3{color:#fff}
body.page-platforms .plat-problems .lede{color:#8C98A4}
body.page-platforms .plat-problems .plat-frac{border-top-color:var(--ink-line)}
body.page-platforms .plat-problems .plat-frac article{border-bottom-color:var(--ink-line)}
body.page-platforms .plat-problems .plat-frac .n{color:var(--cta)}
body.page-platforms .plat-problems .plat-frac p{color:#8C98A4}
body.page-platforms .plat-problems .plat-frac .cons{color:var(--amber)}

body.page-platforms main .btn{border-radius:8px}

body.page-platforms .plat-card{
  background:#fff;
  border:1px solid #e6e7ea;
  border-radius:12px;
  padding:32px 28px;
  min-width:0
}
body.page-platforms .plat-card h3{
  font-family:var(--f-display);
  font-weight:700;
  font-size:clamp(1.05rem,1.5vw,1.2rem);
  letter-spacing:-.02em;
  line-height:1.2;
  color:var(--ink);
  margin-bottom:10px
}
body.page-platforms .plat-card p,
body.page-platforms .plat-card li{
  font-size:14.5px;
  line-height:1.55;
  color:var(--steel)
}
.plat-ico{
  width:24px;
  height:24px;
  display:block;
  margin-bottom:16px;
  stroke:#6f7078;
  fill:none;
  stroke-width:1.5;
  stroke-linecap:round;
  stroke-linejoin:round
}

/* ── Fit rail ── */
.plat-fit{padding-top:0 !important}
.plat-fit-rail{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px
}
.plat-callout{
  margin-top:24px;
  padding:4px 0 4px 20px;
  border-left:2px solid var(--cta);
  background:transparent;
  font-size:15px;
  line-height:1.6;
  color:var(--ink);
  max-width:62ch
}
.plat-fit-foot{
  margin-top:24px;
  font-size:15px;
  line-height:1.62;
  color:var(--steel);
  max-width:62ch
}

/* ── Problems fraction rows ── */
.plat-frac{margin-top:40px;border-top:1px solid #e6e7ea}
.plat-frac article{
  display:grid;
  grid-template-columns:56px minmax(0,1fr);
  gap:20px 28px;
  align-items:start;
  padding:28px 0;
  border-bottom:1px solid #e6e7ea
}
.plat-frac .n{
  font-family:var(--f-display);
  font-weight:800;
  font-size:clamp(1.35rem,2vw,1.7rem);
  letter-spacing:-.04em;
  color:var(--cta);
  line-height:1;
  padding-top:4px
}
.plat-frac h3{margin-bottom:8px;max-width:22ch}
.plat-frac p{font-size:15px;line-height:1.62;color:var(--steel);max-width:48ch;margin:0}
.plat-frac .cons{
  display:block;
  margin-top:8px;
  font-family:var(--f-mono);
  font-size:10.5px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#b45309
}

/* ── Tenant stepper ── */
.plat-stepper{
  list-style:none;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  margin-top:40px;
  background:#fff;
  border:1px solid #e6e7ea;
  border-radius:12px;
  overflow:hidden
}
.plat-stepper li{
  min-width:0;
  padding:24px;
  border-right:1px solid #e6e7ea
}
.plat-stepper li:last-child{border-right:0}
.plat-stepper li.on{background:rgba(79,70,229,.04)}
.plat-stepper .sn{
  display:block;
  font-family:var(--f-mono);
  font-size:10px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--steel);
  margin-bottom:10px
}
.plat-stepper li.on .sn{color:var(--cta)}
.plat-stepper h3{
  font-family:var(--f-display);
  font-weight:700;
  font-size:clamp(.98rem,1.4vw,1.1rem);
  letter-spacing:-.02em;
  line-height:1.2;
  color:var(--ink);
  margin-bottom:8px
}
.plat-stepper p{font-size:13.5px;line-height:1.5;color:var(--steel)}
.plat-model-viz{
  margin:40px 0 0;
  border:1px solid var(--rule);
  border-radius:10px;
  overflow:hidden;
  background:#0a0d10
}
.plat-model-viz img{width:100%;height:auto;display:block;opacity:.96}

/* ── Surfaces tabbed stage ── */
.plat-switch{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:clamp(28px,4vw,48px);
  align-items:start;
  margin-top:40px
}
.plat-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:0;
  margin-bottom:22px;
  border-bottom:1px solid #e6e7ea
}
.plat-tabs button{
  padding:12px 16px;
  font-family:var(--f-mono);
  font-size:10.5px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--steel);
  position:relative;
  min-height:48px
}
.plat-tabs button:after{
  content:"";
  position:absolute;
  left:16px;
  right:16px;
  bottom:-1px;
  height:2px;
  background:var(--cta);
  transform:scaleX(0);
  transition:transform .4s var(--e)
}
.plat-tabs button:hover{color:var(--ink)}
.plat-tabs button[aria-selected="true"]{color:var(--ink)}
.plat-tabs button[aria-selected="true"]:after{transform:scaleX(1)}
.plat-copy h3{margin-bottom:10px;max-width:20ch}
.plat-copy ul{list-style:none;display:grid;gap:9px;margin-top:18px}
.plat-copy li{
  padding-left:14px;
  position:relative;
  font-size:14.5px;
  line-height:1.5;
  color:var(--ink);
  max-width:40ch
}
.plat-copy li:before{
  content:"";
  position:absolute;
  left:0;
  top:.65em;
  width:6px;
  height:1px;
  background:var(--steel)
}
.plat-text-link{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin-top:22px;
  font-family:var(--f-mono);
  font-size:11.5px;
  letter-spacing:.1em;
  text-transform:uppercase;
  border-bottom:1px solid currentColor;
  padding-bottom:2px
}
.plat-text-link i{font-style:normal;transition:transform .42s var(--e)}
.plat-text-link:hover i{transform:translateX(6px)}
.plat-panel[hidden],.plat-view[hidden]{display:none}

/* ── Product UI frames ── */
.plat-frame{
  background:var(--ink);
  color:#DDE2E7;
  border:1px solid var(--ink-line);
  border-radius:12px;
  box-shadow:var(--shadow-product);
  overflow:hidden
}
.plat-chrome{
  display:flex;
  align-items:center;
  gap:6px;
  padding:10px 14px;
  background:#12181E;
  border-bottom:1px solid var(--ink-line);
  font-family:var(--f-mono);
  font-size:10px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#717F8C
}
.plat-chrome i{width:8px;height:8px;border-radius:50%;background:#2A333C;flex:none}
.plat-chrome i:first-child{background:#5C6670}
.plat-chrome span{margin-left:8px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.plat-pane__h{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:8px;
  padding:10px 12px;
  border-bottom:1px solid var(--ink-line);
  font-family:var(--f-mono);
  font-size:9.5px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#717F8C
}
.plat-pane__h b{color:#fff;font-weight:600}
.plat-pane__h em{font-style:normal;color:var(--sky)}
.mem{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  padding:10px 12px;
  border-bottom:1px solid #1A2027;
  font-size:12px
}
.mem:last-child{border-bottom:0}
.mem b{display:block;color:#fff;font-weight:500}
.mem span{display:block;margin-top:3px;font-size:11px;color:#8C98A4}
.mem small{
  font-family:var(--f-mono);
  font-size:9px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#717F8C;
  padding-top:4px
}
.mem.on{background:rgba(91,140,255,.08);border-left:2px solid var(--sky)}
.mem.done small{color:var(--lime)}
.act{
  padding:10px 12px;
  border-top:1px solid var(--ink-line);
  font-family:var(--f-mono);
  font-size:10px;
  letter-spacing:.08em;
  text-transform:uppercase
}
.act .go,.act .ghost{
  display:inline-flex;
  padding:7px 10px;
  min-height:36px;
  align-items:center
}
.act .go{background:var(--cta);color:#fff;border-radius:6px}
.act .ghost{border:1px solid #3A444E;color:#B9C3CC;background:transparent;border-radius:6px}
.need{padding:10px 12px;border-bottom:1px solid #1A2027}
.need span{display:block;font-family:var(--f-mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#717F8C}
.need b{display:block;margin-top:5px;color:#fff;font-size:13px;letter-spacing:-.015em}
.ex{
  padding:9px 10px;
  margin:0 12px 8px;
  background:#141A20;
  border-left:2px solid var(--amber);
  font-size:12px;
  color:#B9C3CC;
  border-radius:0 4px 4px 0
}
.ex.ok{border-left-color:var(--lime)}
.ex:last-of-type{margin-bottom:12px}
.mx{width:100%;border-collapse:collapse;font-size:12px}
.mx th,.mx td{padding:10px 12px;border-bottom:1px solid #1A2027;text-align:left}
.mx th{
  font-family:var(--f-mono);
  font-size:9px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#717F8C;
  font-weight:500
}
.mx td{color:#B9C3CC}
.mx td:first-child{color:#fff}
.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#3A444E;vertical-align:middle}
.dot.on{background:var(--lime)}
.mx-note{
  padding:12px 14px;
  font-family:var(--f-mono);
  font-size:10.5px;
  color:var(--amber);
  border-top:1px solid var(--ink-line)
}
.role-cards{display:none;list-style:none;padding:12px 14px;gap:8px}
.role-cards li{
  padding:10px 12px;
  background:#141A20;
  border-left:2px solid #3A444E;
  font-size:12px;
  color:#B9C3CC;
  border-radius:0 4px 4px 0
}
.role-cards li b{display:block;color:#fff;font-weight:600;margin-bottom:4px;font-size:13px}
.role-cards li.on{border-left-color:var(--lime)}
.plat-cap{
  margin-top:14px;
  font-family:var(--f-mono);
  font-size:10.5px;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:var(--steel-2)
}

/* ── Product kit cards ── */
.plat-kit-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  margin-top:40px
}
.plat-kit-grid .sn{
  display:block;
  font-family:var(--f-mono);
  font-size:10px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--cta);
  margin-bottom:12px
}
.kit-ui{
  background:var(--ink);
  border:1px solid var(--ink-line);
  border-radius:8px;
  padding:12px 14px;
  font-size:12px;
  margin-top:16px
}
.kit-ui span{
  display:block;
  font-family:var(--f-mono);
  font-size:9px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#717F8C;
  margin-bottom:8px
}
.kit-ui .row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:8px;
  padding:8px 10px;
  background:#141A20;
  margin-bottom:6px;
  color:#B9C3CC;
  border-radius:4px
}
.kit-ui .row b{color:#fff;font-weight:500;font-size:12px}
.kit-ui .row em{
  font-style:normal;
  font-family:var(--f-mono);
  font-size:9px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--sky)
}
.kit-ui .row:last-child{margin-bottom:0}
.kit-ui .row.alt em{color:var(--lime)}

/* ── Proof ── */
.plat-proof-story{
  display:grid;
  margin-top:0;
  border-top:1px solid #e6e7ea
}
.plat-proof-story div{
  display:grid;
  grid-template-columns:clamp(88px,12vw,120px) minmax(0,1fr);
  gap:16px;
  padding:clamp(16px,2vw,22px) 0;
  border-bottom:1px solid #e6e7ea
}
.plat-proof-story dt{
  font-family:var(--f-mono);
  font-size:10px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--cta);
  padding-top:3px
}
.plat-proof-story dd{
  color:var(--ink);
  font-size:15px;
  line-height:1.58;
  max-width:48ch
}
.plat-scope{
  display:grid;
  margin-top:24px;
  border-top:1px solid #e6e7ea
}
.plat-scope div{
  display:grid;
  grid-template-columns:clamp(72px,10vw,100px) minmax(0,1fr);
  gap:16px;
  padding:13px 0;
  border-bottom:1px solid #e6e7ea;
  font-size:14.5px
}
.plat-scope dt{
  font-family:var(--f-mono);
  font-size:10px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--steel);
  padding-top:3px
}
.plat-scope dd{color:var(--ink)}
.proof-cta{margin-top:28px}
.proof-note{margin-top:14px;font-size:13px;line-height:1.55;color:var(--steel-2);max-width:52ch}

/* ── Process ── */
.plat-process{
  list-style:none;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:24px;
  margin-top:40px
}
.plat-process li{
  position:relative;
  min-width:0;
  padding-top:8px
}
.plat-process li:not(:last-child):after{
  content:"";
  position:absolute;
  top:21px;
  left:36px;
  right:-12px;
  height:1px;
  background:var(--cta);
  opacity:.35
}
.plat-process .wk{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  margin-bottom:16px;
  border:1px solid var(--cta);
  background:#fff;
  font-family:var(--f-mono);
  font-size:10px;
  letter-spacing:.08em;
  color:var(--cta)
}
.plat-process h3{margin-bottom:8px}
.plat-process p{font-size:14.5px;line-height:1.55;color:var(--steel)}

/* ── Related services ── */
.plat-related-note{margin-top:26px}
.plat-related-note a{color:var(--ink);border-bottom:1px solid #e6e7ea}
.plat-related-note a:hover{border-color:var(--ink)}

/* ── FAQ ── */
body.page-platforms .faq-sec{background:#fff}
body.page-platforms .faq-grid{
  display:grid;
  grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);
  gap:clamp(32px,5vw,80px);
  align-items:start
}
body.page-platforms .faq-grid > div:first-child{position:sticky;top:112px}
body.page-platforms .faq-list{border-top:1px solid #e6e7ea}
body.page-platforms .faq-item{border-bottom:1px solid #e6e7ea}
body.page-platforms .faq-q{
  width:100%;
  display:grid;
  grid-template-columns:46px minmax(0,1fr) 22px;
  gap:clamp(12px,2vw,24px);
  align-items:start;
  text-align:left;
  padding:22px 0
}
body.page-platforms .faq-q .qn{
  font-family:var(--f-mono);
  font-size:10.5px;
  letter-spacing:.12em;
  color:var(--steel);
  padding-top:5px
}
body.page-platforms .faq-item.open .qn{color:var(--cta)}
body.page-platforms .faq-q .qt{
  font-family:var(--f-display);
  font-weight:700;
  font-size:clamp(1.05rem,1.65vw,1.32rem);
  letter-spacing:-.02em;
  line-height:1.28;
  color:var(--ink)
}
body.page-platforms .faq-q .qi{justify-self:end;position:relative;width:22px;height:22px;margin-top:2px}
body.page-platforms .faq-q .qi:before,
body.page-platforms .faq-q .qi:after{
  content:"";
  position:absolute;
  inset:50% 2px;
  height:1px;
  background:var(--ink)
}
body.page-platforms .faq-q .qi:after{transform:rotate(90deg)}
body.page-platforms .faq-item.open .qi:after{transform:rotate(0)}
body.page-platforms .faq-a{
  display:grid;
  grid-template-rows:0fr;
  visibility:hidden;
  transition:grid-template-rows .5s var(--e),visibility 0s linear .5s
}
body.page-platforms .faq-item.open .faq-a{
  grid-template-rows:1fr;
  visibility:visible;
  transition:grid-template-rows .5s var(--e),visibility 0s linear 0s
}
body.page-platforms .faq-a>div{overflow:hidden}
body.page-platforms .faq-a-in{padding:0 0 24px calc(46px + clamp(12px,2vw,24px))}
body.page-platforms .faq-a-in p{font-size:15px;line-height:1.65;color:var(--steel);max-width:58ch}

/* ── Contact (dark) ── */
body.page-platforms .plat-contact{
  background:#101014;
  color:#c8c9d0;
  padding:96px 0;
  scroll-margin-top:88px
}
body.page-platforms .plat-contact .eyebrow{color:#8b8c94}
body.page-platforms .plat-contact h2{color:#fff;margin-top:18px;max-width:16ch}
body.page-platforms .plat-contact .lede{color:#c8c9d0;max-width:42ch}
body.page-platforms .plat-contact .plat-trust{color:#8b8c94}
body.page-platforms .plat-contact .inq-grid{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:clamp(32px,5vw,72px);
  align-items:start
}
body.page-platforms .plat-contact .inq-form{display:grid;gap:16px;position:relative}
body.page-platforms .plat-contact .inq-form .inq-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
body.page-platforms .plat-contact .inq-form label{
  display:block;
  font-family:var(--f-mono);
  font-size:10.5px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#8b8c94;
  margin-bottom:8px
}
body.page-platforms .plat-contact .inq-form label .req{color:var(--lilac);margin-left:6px}
body.page-platforms .plat-contact .inq-form label .opt{color:#6f7078;margin-left:6px;font-weight:400}
body.page-platforms .plat-contact .inq-form input,
body.page-platforms .plat-contact .inq-form textarea{
  font:inherit;
  font-size:16px;
  width:100%;
  min-height:48px;
  padding:12px 14px;
  background:#1a1a22;
  border:1px solid #2a2a32;
  border-radius:8px;
  color:#fff;
  transition:border-color var(--t-fast) var(--e),box-shadow var(--t-fast) var(--e)
}
body.page-platforms .plat-contact .inq-form textarea{min-height:120px;resize:vertical;line-height:1.55}
body.page-platforms .plat-contact .inq-form input:focus,
body.page-platforms .plat-contact .inq-form textarea:focus{
  outline:none;
  border-color:var(--cta);
  box-shadow:0 0 0 3px rgba(79,70,229,.35)
}
body.page-platforms .plat-contact .inq-form input[aria-invalid="true"],
body.page-platforms .plat-contact .inq-form textarea[aria-invalid="true"]{border-color:#f87171}
body.page-platforms .plat-contact .inq-err{display:none;margin-top:6px;font-size:12px;color:#f87171}
body.page-platforms .plat-contact .inq-err.on{display:block}
body.page-platforms .plat-contact .inq-note{
  font-family:var(--f-mono);
  font-size:10.5px;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:#8b8c94
}
body.page-platforms .plat-contact .inq-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:4px}
body.page-platforms .plat-contact .inq-fail{display:none;padding:12px 14px;border:1px solid #f87171;background:#2a1518;font-size:14px;color:#f87171}
body.page-platforms .plat-contact .inq-fail.on{display:block}
body.page-platforms .plat-contact .inq-done{display:none;border:1px solid #2a2a32;padding:28px;background:#1a1a22;border-radius:12px}
body.page-platforms .plat-contact .inq-done.on{display:block}
body.page-platforms .plat-contact .inq-done h3{margin:0 0 10px;color:#fff}
body.page-platforms .plat-contact .inq-done p{font-size:15px;line-height:1.7;color:#c8c9d0;max-width:42ch}
body.page-platforms .plat-contact .inq-done a{color:#fff;border-bottom:1px solid #3a3a44}
body.page-platforms .plat-contact .inq-form.sent{display:none}
body.page-platforms .plat-contact :focus-visible{outline-color:var(--amber)}

.plat-trust{
  display:flex;
  flex-wrap:wrap;
  gap:10px 22px;
  font-family:var(--f-mono);
  font-size:10.5px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--steel)
}
.plat-trust span{display:inline-flex;align-items:center;gap:8px}
.plat-trust span:before{
  content:"";
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--cta);
  flex:none
}

body.page-platforms .fmark img{width:min(100%,390px);opacity:.22}
body.page-platforms .fbase,body.page-platforms .fbase a{color:#9AA5B0}
body.page-platforms .chapters a{color:#6f7078}
body.page-platforms .chapters a[aria-current="true"]{color:var(--ink)}

body.page-platforms .mob-chips{
  display:none;
  position:sticky;
  top:58px;
  z-index:60;
  gap:8px;
  overflow-x:auto;
  padding:10px var(--gutter) 12px;
  width:100%;
  max-width:100%;
  background:rgba(255,255,255,.94);
  border-bottom:1px solid #e6e7ea;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch
}
body.page-platforms .mob-chips::-webkit-scrollbar{display:none}
body.page-platforms .mob-chips a{
  flex:none;
  font-family:var(--f-mono);
  font-size:10px;
  letter-spacing:.1em;
  text-transform:uppercase;
  padding:8px 12px;
  min-height:44px;
  display:inline-flex;
  align-items:center;
  border:1px solid #e6e7ea;
  color:var(--steel);
  background:#fff;
  white-space:nowrap
}
body.page-platforms .mob-chips a[aria-current="true"]{border-color:var(--ink);color:var(--ink)}
@media(max-width:1280px){
  body.page-platforms .mob-chips{display:flex !important}
  body.page-platforms .hero,
  body.page-platforms main > section{scroll-margin-top:calc(88px + 48px)}
}

@media(max-width:1024px){
  .plat-switch,
  .plat-proof-split,
  .plat-fit-rail,
  .plat-kit-grid,
  body.page-platforms .faq-grid,
  body.page-platforms .plat-contact .inq-grid{grid-template-columns:1fr}
  .plat-stepper{grid-template-columns:1fr}
  .plat-stepper li{border-right:0;border-bottom:1px solid #e6e7ea}
  .plat-stepper li:last-child{border-bottom:0}
  .plat-process{grid-template-columns:1fr 1fr}
  .plat-process li:not(:last-child):after{display:none}
  body.page-platforms .faq-grid > div:first-child{position:static}
}
@media(max-width:900px){
  .plat-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .plat-tabs::-webkit-scrollbar{display:none}
  .plat-tabs button{flex:none}
}
@media(max-width:768px){
  body.page-platforms main > section,
  body.page-platforms .plat-contact{padding:64px 0}
  body.page-platforms .hero{padding:calc(58px + 32px) 0 32px}
  .plat-fit{padding-top:0 !important;padding-bottom:64px !important}
  .plat-process,
  body.page-platforms .plat-contact .inq-form .inq-row{grid-template-columns:1fr}
  .mx{display:none}
  .role-cards{display:grid}
  body.page-platforms .faq-q{grid-template-columns:32px minmax(0,1fr) 20px;gap:12px}
  body.page-platforms .faq-a-in{padding-left:44px}
  body.page-platforms .plat-contact .inq-actions .btn{width:100%;justify-content:center}
  .plat-frac article{grid-template-columns:40px minmax(0,1fr);gap:14px}
  .plat-proof-story div{grid-template-columns:1fr;gap:6px}
}
@media(max-width:560px){
  .plat-frac article{grid-template-columns:1fr;gap:8px}
  .plat-card{padding:28px 22px}
}
@media(max-width:390px){
  body.page-platforms .d1{font-size:2.28rem}
  .plat-chrome span{display:none}
}

@media (prefers-reduced-motion:reduce){
  html:focus-within{scroll-behavior:auto}
  *,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;transition-delay:0ms!important}
  [data-r],[data-s]>*{opacity:1!important;transform:none!important}
  .mask span i{transform:none!important}
}
