/* Softer visual direction: reduce wireframe decoration and let copy + imagery lead. */
.services-page .services-hero,
.service-detail-page:not(.service-detail-software) .service-detail-hero.has-redesign-content,
.service-detail-software .service-detail-hero.is-software-hero {
  background: linear-gradient(130deg, #fff 0%, #f8fbff 62%, #eef8fd 100%) !important;
  background-image: radial-gradient(circle at 84% 18%, rgb(67 178 219 / 10%), transparent 26%) !important;
}

.services-page .services-hero-visual.services-hero-capability-visual {
  min-height: 508px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.services-page .services-hero-visual.services-hero-capability-visual::before,
.services-page .services-hero-visual.services-hero-capability-visual::after,
.services-capability-grid,
.services-capability-axis,
.services-capability-connector,
.services-capability-core { display: none !important; }

.services-capability-topline {
  display: none !important;
  border-bottom: 0 !important;
  color: #6c91aa !important;
}

.services-capability-topline strong { color: #2e8eaf !important; }
.services-capability-stage { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 24px 28px !important; min-height: 450px !important; align-content: center !important; }

.services-capability-module {
  position: relative !important;
  inset: auto !important;
  display: grid !important;
  grid-template-columns: 58px 1fr !important;
  grid-template-rows: auto auto !important;
  width: auto !important;
  min-height: 132px !important;
  align-items: center !important;
  padding: 12px 4px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

.services-capability-module:hover,
.services-capability-module:focus-visible { box-shadow: none !important; transform: translateY(-3px) !important; }
.services-capability-module .module-index { top: 12px !important; right: 13px !important; color: #b1c7d5 !important; }
.services-capability-module img { width: 58px !important; height: 62px !important; filter: drop-shadow(0 12px 18px rgb(20 118 232 / 13%)) !important; }
.services-capability-module strong { color: #244e6d !important; font-size: 15px !important; }
.services-capability-module small { color: #7895a8 !important; font-size: 10px !important; }

.services-capability-footer { display: none !important; padding: 10px 6px 0 !important; border-top: 0 !important; color: #88a3b5 !important; }
.services-capability-footer span:last-child { color: #418db0 !important; }

.service-redesign-hero-visual {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}
.service-redesign-code { padding-left: 0 !important; border-left: 0 !important; }
.service-redesign-visual-head { display: none !important; }
.service-redesign-visual-media {
  overflow: hidden !important;
  aspect-ratio: 1.4 / 1 !important;
  border: 0 !important;
  border-radius: 24px !important;
  background: #edf7fc !important;
  box-shadow: 0 24px 54px rgb(25 87 139 / 15%) !important;
}
.service-redesign-visual-media img { object-fit: cover !important; }
.service-redesign-metrics { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 18px !important; margin-top: 20px !important; padding: 0 4px !important; }
.service-redesign-metrics div { min-height: 54px !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; }
.service-redesign-metrics strong { color: #1c659c !important; font-size: 16px !important; }
.service-redesign-metrics span { color: #8098aa !important; font-size: 10px !important; }

.service-redesign-hero-visual.is-data .service-redesign-data-media {
  min-height: 390px !important;
  border: 0 !important;
  border-radius: 24px !important;
  background: radial-gradient(circle at 50% 46%, #fff 0 24%, #eff9ff 68%, #e8f5fc) !important;
  box-shadow: 0 24px 54px rgb(25 87 139 / 12%) !important;
}
.service-redesign-data-rings,
.service-redesign-data-lines { display: none !important; }
.service-redesign-data-media img { width: 220px !important; height: 250px !important; filter: drop-shadow(0 24px 20px rgb(20 118 232 / 13%)) !important; }

.software-hero-visual {
  min-height: 426px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}
.software-hero-visual-head,
.software-hero-visual-footer,
.software-hero-screen-corner { display: none !important; }
.software-hero-screen {
  min-height: 390px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 24px !important;
  background: #eaf6fb !important;
  box-shadow: 0 24px 54px rgb(25 87 139 / 15%) !important;
}
.software-hero-screen img { width: 91% !important; height: 88% !important; border-radius: 18px !important; box-shadow: 0 20px 40px rgb(10 43 75 / 17%) !important; }

/* Keep the long-form sections editorial and spacious instead of diagrammatic. */
.services-method-section,
.service-redesign-expansion { background: #fff !important; }
.services-method-section::before,
.service-redesign-expansion::before,
.services-method-rail::before,
.service-redesign-step-track::before { display: none !important; }
.services-method-rail article { min-height: 160px !important; padding-top: 0 !important; border-top: 0 !important; }
.services-method-rail article::before,
.service-redesign-step-track article i { display: none !important; }
.services-method-rail article > span,
.service-redesign-step-track article > span { position: static !important; display: block !important; margin-bottom: 22px !important; color: #66a9c5 !important; }
.services-method-bottom { border-top: 0 !important; }
.service-redesign-step-track article { padding-top: 0 !important; }
.service-redesign-scene-heading { border-bottom: 0 !important; }
.service-redesign-scene-grid article { border: 0 !important; border-radius: 16px !important; background: #f5faff !important; box-shadow: none !important; }
.service-redesign-scene-grid article:hover { box-shadow: none !important; background: #eef8fd !important; }

.service-redesign-nav { border-bottom: 0 !important; }
.service-redesign-proof { border-bottom: 0 !important; }
.service-redesign-proof article { border-left: 0 !important; }

.services-page .services-hero-capabilities,
.service-redesign-chips,
.service-detail-software-hero-chips { gap: 12px 20px !important; }

.services-page .services-hero-capabilities span,
.service-redesign-chips span,
.service-detail-software-hero-chips span {
  position: relative !important;
  min-height: auto !important;
  padding: 0 0 0 13px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.services-page .services-hero-capabilities span::before,
.service-redesign-chips span::before,
.service-detail-software-hero-chips span::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 5px;
  height: 5px;
  content: "";
  border-radius: 50%;
  background: #3da4d1;
  transform: translateY(-50%);
}

.services-page .services-center-card,
.service-detail-page:not(.service-detail-software) .service-detail-card,
.service-detail-page:not(.service-detail-software) .service-detail-scene,
.service-detail-page:not(.service-detail-software) .service-detail-guarantee-grid article {
  border: 0 !important;
  box-shadow: none !important;
}

.service-detail-page:not(.service-detail-software) .service-detail-intro-media,
.service-detail-page:not(.service-detail-software) .service-detail-engine-media {
  border: 0 !important;
  box-shadow: 0 18px 38px rgb(25 84 134 / 10%) !important;
}
.service-detail-page:not(.service-detail-software) .service-detail-card img,
.service-detail-software .service-detail-two-icon { border: 0 !important; box-shadow: none !important; }

.service-detail-page:not(.service-detail-software) .service-detail-scenes,
.service-detail-page:not(.service-detail-software) .service-detail-guarantees {
  background: #f5faff !important;
  background-image: none !important;
}

.service-detail-software .service-detail-two-col::before,
.service-detail-software .service-detail-two-col:nth-child(2)::before {
  display: none !important;
}

.service-detail-software .service-detail-two-media { border: 0 !important; box-shadow: 0 18px 38px rgb(25 84 134 / 10%) !important; }
.service-detail-software .service-detail-two-col::after,
.service-detail-software .service-detail-two-copy::before,
.service-detail-software .service-detail-two-copy p::after { display: none !important; }
.service-detail-software-process { background: linear-gradient(180deg, #f2f9fd, #fbfdff) !important; background-size: auto !important; }
.service-detail-software-process::before { display: none !important; }
.service-detail-software-process-grid::before { display: none !important; }
.service-detail-software-process-grid article,
.service-detail-software-process-grid article:last-child { border: 0 !important; box-shadow: none !important; background: #f7fbff !important; }
.service-detail-software-process-grid article > span { width: auto !important; height: auto !important; margin: 0 0 22px !important; padding: 0 !important; color: #4b9ec5 !important; border-radius: 0 !important; background: transparent !important; }
.service-detail-software .service-detail-two-copy strong { border: 0 !important; background: #eff8ff !important; }

@media (max-width: 900px) {
  .services-capability-stage { min-height: 350px !important; }
  .software-hero-screen { min-height: 330px !important; }
}

@media (max-width: 560px) {
  .services-page .services-hero-visual.services-hero-capability-visual { min-height: 450px !important; padding: 0 !important; border-radius: 0 !important; }
  .services-capability-stage { grid-template-columns: 1fr 1fr !important; gap: 14px !important; min-height: 380px !important; }
  .services-capability-module { grid-template-columns: 39px 1fr !important; min-height: 100px !important; padding: 10px 2px !important; border-radius: 0 !important; }
  .services-capability-module img { width: 39px !important; height: 43px !important; }
  .services-capability-module strong { font-size: 12px !important; }
  .services-capability-module small { font-size: 8px !important; }
  .service-redesign-visual-media,
  .software-hero-screen { border-radius: 18px !important; }
  .service-redesign-hero-visual.is-data .service-redesign-data-media { min-height: 270px !important; border-radius: 18px !important; }
  .service-redesign-data-media img { width: 170px !important; height: 194px !important; }
  .software-hero-screen { min-height: 270px !important; }
  .service-redesign-metrics { gap: 10px !important; }
}
