/* Service Journey — canonical Problem → Solution → Impact presentation. */
.cm-service-journey-section{
  padding:24px 20px 28px;
}
.cm-service-journey{
  width:min(var(--cm-site-max-width),100%);
  margin:0 auto;
}
.cm-service-journey__intro{
  max-width:980px;
  margin:0 0 24px;
  text-align:left;
}
.cm-service-journey__intro h2{
  margin:0;
  color:#0f2740;
  font-size:30px;
  line-height:35px;
  letter-spacing:-.02em;
  font-weight:600;
}
.cm-service-journey__cards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  align-items:stretch;
}
.cm-service-journey__card{
  --journey-accent:#2468d8;
  --journey-accent-rgb:36,104,216;
  min-width:0;
  padding:20px 22px 19px;
  border:1px solid rgba(var(--journey-accent-rgb),.14);
  border-radius:16px;
  background:#fff;
  box-shadow:0 5px 16px rgba(15,35,65,.045);
}
.cm-service-journey__card.is-problem{
  --journey-accent:#dc3f3f;
  --journey-accent-rgb:220,63,63;
}
.cm-service-journey__card.is-impact{
  --journey-accent:#12924f;
  --journey-accent-rgb:18,146,79;
}
.cm-service-journey__card-head{
  display:flex;
  align-items:center;
  gap:12px;
  margin:0 0 14px;
}
.cm-service-journey__card-icon{
  width:30px;
  height:30px;
  flex:0 0 30px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#fff;
  background:var(--journey-accent);
}
.cm-service-journey__card-icon svg{
  width:17px;
  height:17px;
  display:block;
}
.cm-service-journey__card h3{
  margin:0;
  color:var(--journey-accent);
  font-size:22px;
  line-height:27px;
  letter-spacing:-.01em;
  font-weight:600;
}
.cm-service-journey__list{
  display:grid;
  gap:11px;
  margin:0;
  padding:0;
  list-style:none;
}
.cm-service-journey__list li{
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  gap:10px;
  align-items:center;
  margin:0;
  color:#223b53;
  font-size:15px;
  line-height:1.42;
}
.cm-service-journey__item-icon{
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:var(--journey-accent);
  background:rgba(var(--journey-accent-rgb),.10);
}
.cm-service-journey__item-icon svg{
  width:16px;
  height:16px;
  display:block;
}

@media(max-width:1000px){
  .cm-service-journey-section{padding:22px 18px 26px}
  .cm-service-journey__intro{margin-bottom:20px}
  .cm-service-journey__intro h2{font-size:28px;line-height:33px}
  .cm-service-journey__cards{gap:16px}
  .cm-service-journey__card{padding:19px 17px 18px}
  .cm-service-journey__card-head{gap:11px;margin-bottom:14px}
  .cm-service-journey__card-icon{width:30px;height:30px;flex-basis:30px}
  .cm-service-journey__card-icon svg{width:17px;height:17px}
  .cm-service-journey__card h3{font-size:21px;line-height:26px}
  .cm-service-journey__list{gap:10px}
  .cm-service-journey__list li{grid-template-columns:24px minmax(0,1fr);gap:9px;font-size:14px}
  .cm-service-journey__item-icon{width:24px;height:24px}
  .cm-service-journey__item-icon svg{width:15px;height:15px}
}

@media(max-width:760px){
  .cm-service-journey-section{padding:20px 16px 24px}
  .cm-service-journey__intro{margin-bottom:18px}
  .cm-service-journey__intro h2{font-size:26px;line-height:31px}
  .cm-service-journey__cards{grid-template-columns:1fr;gap:12px}
  .cm-service-journey__card{padding:17px 16px 18px;border-radius:15px}
  .cm-service-journey__card-head{gap:10px;margin-bottom:13px}
  .cm-service-journey__card-icon{width:30px;height:30px;flex-basis:30px}
  .cm-service-journey__card-icon svg{width:17px;height:17px}
  .cm-service-journey__card h3{font-size:20px;line-height:25px}
  .cm-service-journey__list{gap:10px}
  .cm-service-journey__list li{grid-template-columns:24px minmax(0,1fr);gap:9px;font-size:13.5px;line-height:1.4}
  .cm-service-journey__item-icon{width:24px;height:24px}
}
