﻿/* =========================================================
   White Dome editorial system — third revision
   Typography-led layouts; containers only where functional.
   ========================================================= */

:root {
  --wd2-paper: #f4f1ea;
  --wd2-paper-light: #fbf9f5;
  --wd2-ink: #181715;
  --wd2-copy: #5a564f;
  --wd2-muted: #777168;
  --wd2-gold: #C8A877;
  --wd2-gold-text: #7c5f34;
  --wd2-line: #d8d1c4;
  --wd2-line-strong: #bbb09f;
  --wd2-night: #101214;
  --wd2-night-copy: #c9c4ba;
  --wd2-display: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;
  --wd2-sans: "Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --wd2-gutter: clamp(1.25rem, 4vw, 2.5rem);
  --wd2-width: 1180px;
  --wd2-block: clamp(4.75rem, 8vw, 7.5rem);
  --wd2-gap: clamp(2rem, 5vw, 4.5rem);
}

body.home-page,
body.services-page,
body.solutions-page,
body.ai-page {
  background: var(--wd2-paper);
  color: var(--wd2-ink);
  font-family: var(--wd2-sans);
}

body.home-page[dir="rtl"],
body.services-page[dir="rtl"],
body.solutions-page[dir="rtl"],
body.ai-page[dir="rtl"],
body.home-page[dir="rtl"] *,
body.services-page[dir="rtl"] *,
body.solutions-page[dir="rtl"] *,
body.ai-page[dir="rtl"] * {
  font-family: "Zain", var(--wd2-sans);
}

body.home-page .container,
body.services-page .container,
body.solutions-page .container,
body.ai-page .container,
body.home-page .ds-container,
body.services-page .ds-container,
body.solutions-page .ds-container,
body.ai-page .ds-container {
  width: 100%;
  max-width: var(--wd2-width);
  padding-inline: var(--wd2-gutter);
}

/* Open editorial page heroes */
body.home-page .hero.dark-mode-hero,
body.services-page .page-header,
body.solutions-page .simple-hero,
body.ai-page .page-header {
  min-height: 0;
  padding-block: clamp(8rem, 13vw, 11rem) clamp(4.5rem, 7vw, 6.5rem);
  background: var(--wd2-night) !important;
  background-image: none !important;
}

body.home-page .hero.dark-mode-hero {
  min-height: 760px;
  display: block;
}

body.home-page .hero .container,
body.services-page .page-header .container,
body.solutions-page .simple-hero .container,
body.ai-page .page-header .container {
  position: relative;
  z-index: 1;
}

body.home-page .hero-content-centered,
body.home-page .hero-text-group {
  width: 100%;
  max-width: none;
  margin: 0;
  text-align: left;
}

body.home-page .hero-logo-wrapper {
  display: flex;
  justify-content: flex-start;
  margin: 0 0 2.3rem;
}

body.home-page .hero-logo-img {
  width: 92px;
  height: 92px;
  background-size: contain;
}

body.home-page .hero-title,
body.services-page .page-header h1,
body.solutions-page .simple-hero h1,
body.ai-page .page-header h1 {
  max-width: 940px;
  margin: 0 0 1.4rem;
  color: #fff !important;
  background: none !important;
  -webkit-text-fill-color: #fff !important;
  font-family: var(--wd2-display);
  font-size: clamp(3.1rem, 5.6vw, 5rem);
  font-weight: 500;
  line-height: .98;
  letter-spacing: -.052em;
  text-align: left;
}

body.services-page .page-header h1,
body.solutions-page .simple-hero h1,
body.ai-page .page-header h1 {
  font-size: clamp(3.2rem, 6vw, 5.5rem);
}

body.home-page .hero-subtitle,
body.services-page .page-header p,
body.solutions-page .simple-hero p,
body.ai-page .page-header p {
  max-width: 680px;
  margin: 0;
  color: var(--wd2-night-copy) !important;
  font-size: clamp(1.04rem, 1.6vw, 1.18rem);
  line-height: 1.72;
  text-align: left;
}

body.home-page .hero-cta {
  justify-content: flex-start;
  margin-top: 2.1rem;
}

body.home-page .ds-badge,
body.services-page .ds-badge,
body.solutions-page .ds-badge,
body.ai-page .ds-badge {
  display: inline-flex;
  align-items: center;
  gap: .75rem;
  margin: 0 0 1.5rem;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #d6bd94;
  font-family: var(--wd2-sans);
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .16em;
}

body.home-page .ds-badge::before,
body.services-page .ds-badge::before,
body.solutions-page .ds-badge::before,
body.ai-page .ds-badge::before {
  content: "";
  width: 26px;
  height: 1px;
  background: var(--wd2-gold);
}

/* Open section rhythm */
body.home-page .ds-section,
body.services-page .service-categories,
body.services-page .process-timeline,
body.solutions-page .what-we-do-simply,
body.solutions-page .real-examples,
body.solutions-page .common-questions,
body.solutions-page .simple-benefits,
body.solutions-page .simple-process,
body.ai-page .why-white-dome,
body.ai-page .service-categories,
body.ai-page .process-timeline,
body.ai-page .real-value,
body.ai-page .contact {
  padding-block: var(--wd2-block);
  border-top: 1px solid var(--wd2-line);
}

body.home-page .ds-section:nth-of-type(odd),
body.solutions-page .common-questions,
body.solutions-page .simple-process,
body.ai-page .why-white-dome:nth-of-type(odd) {
  background: var(--wd2-paper-light);
}

body.home-page .ds-section:nth-of-type(even),
body.solutions-page .real-examples,
body.solutions-page .simple-benefits,
body.ai-page .why-white-dome:nth-of-type(even) {
  background: var(--wd2-paper);
}

/* Shared editorial section header */
body.home-page .ds-section-header,
body.services-page .section-title,
body.solutions-page .section-title,
body.ai-page .section-title,
body.ai-page .models-head h2 {
  text-align: left;
  margin: 0;
  font-family: var(--wd2-display);
  color: var(--wd2-ink);
  font-size: clamp(2.2rem, 4vw, 3.7rem);
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -.04em;
}

body.home-page .ds-section-header .ds-label,
body.services-page .ds-label,
body.solutions-page .ds-label,
body.ai-page .ds-label {
  display: flex;
  align-items: center;
  gap: .75rem;
  margin: 0 0 1.3rem;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--wd2-gold-text);
  font-family: var(--wd2-sans);
  font-size: .67rem;
  font-weight: 700;
  letter-spacing: .16em;
}

body.home-page .ds-section-header .ds-label::before,
body.services-page .ds-label::before,
body.solutions-page .ds-label::before,
body.ai-page .ds-label::before {
  content: "";
  width: 26px;
  height: 1px;
  background: var(--wd2-gold);
}

body.home-page .ds-section-header p,
body.services-page .section-subtitle,
body.solutions-page .section-subtitle,
body.ai-page .section-subtitle {
  margin: 1.25rem 0 0;
  max-width: 62ch;
  color: var(--wd2-copy);
  font-size: 1rem;
  line-height: 1.78;
  text-align: left;
}

/* Buttons: simple, typographic, no glow */
body.home-page .ds-btn,
body.services-page .btn,
body.solutions-page .btn,
body.ai-page .btn,
body.ai-page .ds-btn {
  min-height: 46px;
  border-radius: 3px;
  box-shadow: none;
  font-weight: 700;
  letter-spacing: 0;
}

body.home-page .ds-btn-primary,
body.services-page .btn-primary,
body.solutions-page .btn-primary,
body.ai-page .btn-primary {
  color: #17130d !important;
  background: var(--wd2-gold);
  border-color: var(--wd2-gold);
}

body.home-page .ds-btn-secondary,
body.services-page .btn-secondary,
body.solutions-page .btn-secondary,
body.ai-page .btn-secondary {
  color: #66523a;
  background: transparent;
  border-color: var(--wd2-line-strong);
}

body.home-page .hero .ds-btn-secondary {
  color: #f5f1e8;
  border-color: rgba(255,255,255,.28);
}

body.home-page .hero .ds-btn-secondary:hover {
  color: #fff;
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.5);
}

/* Homepage: asymmetric editorial grid, no card walls */
body.home-page .ds-section .ds-container {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: var(--wd2-gap);
  row-gap: 2rem;
}

body.home-page .ds-section-header {
  grid-column: 1 / 5;
  align-self: start;
  position: sticky;
  top: 34px;
  max-width: 380px;
}

body.home-page .ds-section-header p {
  font-size: .97rem;
}

body.home-page .ds-section .ds-container > .ds-stagger,
body.home-page .ds-section .ds-container > .ds-reveal,
body.home-page .ds-section .ds-container > div[style*="text-align"] {
  grid-column: 5 / 13;
  width: 100%;
  max-width: none;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body.home-page .ds-stagger {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0 3rem !important;
}

body.home-page .value-item,
body.home-page .principle-item,
body.home-page .industry-item,
body.home-page .compliance-card {
  min-height: 0;
  margin: 0;
  padding: 1.35rem 0 1.5rem;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--wd2-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body.home-page .value-item h4,
body.home-page .principle-content h4 {
  margin: 0;
  color: var(--wd2-ink) !important;
  font-family: var(--wd2-sans);
  font-size: 1.06rem;
  font-weight: 700;
  line-height: 1.42;
  letter-spacing: -.015em;
}

body.home-page .principle-item {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 1rem;
}

body.home-page .principle-number {
  width: auto;
  height: auto;
  min-width: 0;
  padding: 0;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: var(--wd2-gold-text) !important;
  font-family: var(--wd2-display);
  font-size: 1.15rem;
  font-weight: 500;
  line-height: 1.1;
}

body.home-page .principle-content p {
  margin: .45rem 0 0;
  color: var(--wd2-copy);
  font-size: .93rem;
  line-height: 1.75;
}

body.home-page .industry-item h4 {
  margin: 0 0 .45rem;
  color: var(--wd2-ink);
  font-size: 1.02rem;
}

body.home-page .industry-item p {
  margin: 0;
  color: var(--wd2-copy);
  line-height: 1.7;
  font-size: .91rem;
}

body.home-page .compliance-card {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  column-gap: 1rem;
}

body.home-page .compliance-icon {
  grid-row: 1 / 3;
  width: 28px;
  height: 28px;
  margin-top: .2rem;
  color: var(--wd2-gold-text);
}

body.home-page .compliance-icon svg {
  width: 28px;
  height: 28px;
}

body.home-page .compliance-card h3 {
  margin: 0 0 .4rem;
  color: var(--wd2-ink) !important;
  font-size: 1.02rem;
  font-weight: 700;
}

body.home-page .compliance-card p {
  margin: 0;
  color: var(--wd2-copy) !important;
  font-size: .9rem;
  line-height: 1.72;
}

/* Project identities: rows, not boxes */
body.home-page .project-card {
  display: grid;
  grid-template-columns: 90px minmax(0, 1fr);
  gap: 1.35rem;
  align-items: start;
  padding: 1.5rem 0 1.8rem;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--wd2-line) !important;
  border-radius: 0 !important;
  text-align: left;
  box-shadow: none !important;
}

body.home-page .project-icon-frame,
body.home-page .project-logo-area {
  width: 82px;
  height: 82px;
  padding: 12px;
  background: transparent;
  border: 1px solid var(--wd2-line);
  border-radius: 4px;
}

body.home-page .project-logo-area {
  width: 82px;
  height: 82px;
  padding: 14px 10px;
}

body.home-page .project-info {
  align-items: flex-start;
  gap: .35rem;
}

body.home-page .project-info h3 {
  margin: 0 0 .2rem;
  color: var(--wd2-ink);
  font-family: var(--wd2-display);
  font-size: 1.65rem;
  font-weight: 500;
  line-height: 1.2;
}

body.home-page .project-tagline,
body.home-page .project-desc {
  text-align: left;
}

body.home-page .project-tagline {
  color: var(--wd2-gold-text) !important;
  font-size: .67rem;
  letter-spacing: .1em;
}

body.home-page .project-desc {
  max-width: 54ch;
  color: var(--wd2-copy) !important;
  font-size: .92rem;
  line-height: 1.72;
}

body.home-page .project-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start !important;
  gap: .55rem;
  margin-top: .5rem;
}

/* Contact as a direct editorial call to action */
body.home-page .ds-contact-block {
  max-width: none;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body.home-page .ds-contact-block h3 {
  max-width: 680px;
  margin: 0 0 .8rem;
  color: var(--wd2-ink);
  font-family: var(--wd2-display);
  font-size: clamp(1.9rem, 3vw, 2.8rem);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -.03em;
}

body.home-page .ds-contact-block p {
  max-width: 58ch;
  color: var(--wd2-copy);
}

body.home-page .ds-contact-email {
  min-height: 0;
  margin: 1.4rem 0 .4rem;
  padding: 0;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--wd2-gold-text);
  border-radius: 0;
  color: var(--wd2-ink);
  font-family: var(--wd2-display);
  font-size: clamp(1.4rem, 2.7vw, 2.2rem);
  line-height: 1.3;
  box-shadow: none;
}

body.home-page .ds-contact-block > div {
  margin-top: 1.4rem !important;
}

body.home-page .ds-contact-block > p[style] {
  color: var(--wd2-muted) !important;
}

body.home-page .ds-section .ds-container > div[style*="border-left"] {
  padding: 1.4rem 0 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--wd2-line) !important;
  border-radius: 0 !important;
  text-align: left !important;
}

body.home-page .ds-section .ds-container > div[style*="border-left"] span {
  font-family: var(--wd2-display) !important;
  color: var(--wd2-ink) !important;
  font-size: clamp(1.4rem, 2.5vw, 2rem) !important;
  font-style: normal !important;
  line-height: 1.35 !important;
}

body.home-page .ds-section .ds-container > div[style*="text-align: center"] {
  text-align: left !important;
}

/* Services: numbered editorial chapters */
body.services-page .service-categories {
  counter-reset: service-chapter;
  background: var(--wd2-paper);
}

body.services-page .service-category {
  counter-increment: service-chapter;
  display: grid;
  grid-template-columns: minmax(240px, .68fr) minmax(0, 1.32fr);
  gap: var(--wd2-gap);
  margin: 0;
  padding-block: clamp(3rem, 5.5vw, 4.75rem);
  border: 0;
  border-top: 1px solid var(--wd2-line);
}

body.services-page .service-category:first-child {
  border-top: 0;
  padding-top: 0;
}

body.services-page .service-category:last-child {
  padding-bottom: 0;
}

body.services-page .category-header {
  position: sticky;
  top: 34px;
  align-self: start;
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  text-align: left;
}

body.services-page .category-header::before {
  content: "0" counter(service-chapter);
  display: block;
  margin-bottom: 1rem;
  color: var(--wd2-gold-text);
  font-family: var(--wd2-display);
  font-size: 1.35rem;
  line-height: 1;
}

body.services-page .category-header h2 {
  max-width: 360px;
  margin: 0 0 1rem;
  color: var(--wd2-ink) !important;
  font-family: var(--wd2-display);
  font-size: clamp(1.8rem, 3vw, 2.65rem);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -.035em;
}

body.services-page .category-header p {
  max-width: 42ch;
  margin: 0;
  color: var(--wd2-copy);
  font-size: .94rem;
  line-height: 1.75;
}

body.services-page .services-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 2.5rem;
  border: 0;
}

body.services-page .service-item {
  height: auto;
  padding: 1.25rem 0 1.55rem;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--wd2-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body.services-page .service-item h3 {
  margin: 0 0 .45rem;
  color: var(--wd2-ink) !important;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.42;
}

body.services-page .service-item p {
  margin: 0;
  color: var(--wd2-copy);
  font-size: .9rem;
  line-height: 1.72;
}

/* Services process as a horizontal typographic sequence */
body.services-page .process-timeline {
  background: var(--wd2-paper-light);
}

body.services-page .process-timeline .section-title,
body.solutions-page .simple-process .section-title {
  max-width: 700px;
  margin-bottom: clamp(2.2rem, 4vw, 3.5rem);
}

body.services-page .timeline {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  max-width: none;
  margin: 0;
  border-top: 1px solid var(--wd2-line);
}

body.services-page .timeline-item {
  display: block;
  margin: 0;
  padding: 1.25rem 1.25rem 1.6rem 0;
  border: 0;
  border-right: 1px solid var(--wd2-line);
}

body.services-page .timeline-item:last-child {
  border-right: 0;
}

body.services-page .timeline-item + .timeline-item {
  padding-inline-start: 1.25rem;
}

body.services-page .timeline-number {
  width: auto;
  height: auto;
  margin-bottom: 1.2rem;
  background: transparent;
  border: 0;
  border-radius: 0;
  color: var(--wd2-gold-text);
  font-family: var(--wd2-display);
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1;
}

body.services-page .timeline-content h4 {
  margin: 0 0 .5rem;
  color: var(--wd2-ink) !important;
  font-size: .98rem;
  line-height: 1.42;
}

body.services-page .timeline-content p {
  margin: 0;
  color: var(--wd2-copy);
  font-size: .86rem;
  line-height: 1.7;
}

/* Solutions: open case-study chapters */
body.solutions-page .what-we-do-simply,
body.solutions-page .real-examples,
body.solutions-page .common-questions,
body.solutions-page .simple-benefits,
body.solutions-page .simple-process {
  background: var(--wd2-paper-light);
}

body.solutions-page .what-we-do-simply .section-title,
body.solutions-page .real-examples .section-title,
body.solutions-page .common-questions .section-title,
body.solutions-page .simple-benefits .section-title {
  max-width: 760px;
  margin-bottom: 1.2rem;
}

body.solutions-page .simple-services {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 3.5rem;
  margin-top: 2.6rem;
  border-top: 1px solid var(--wd2-line);
}

body.solutions-page .simple-service {
  padding: 1.4rem 0 1.65rem;
  border-bottom: 1px solid var(--wd2-line);
}

body.solutions-page .simple-service h3 {
  margin: 0 0 .55rem;
  color: var(--wd2-ink);
  font-family: var(--wd2-display);
  font-size: 1.55rem;
  font-weight: 500;
  letter-spacing: -.025em;
}

body.solutions-page .simple-service p {
  margin: 0;
  color: var(--wd2-copy);
  font-size: .93rem;
  line-height: 1.75;
}

body.solutions-page .real-examples {
  counter-reset: solution-chapter;
}

body.solutions-page .section-subtitle {
  margin-bottom: 3rem;
}

body.solutions-page .example-case {
  counter-increment: solution-chapter;
  margin: 0;
  padding: clamp(2.3rem, 4vw, 3.5rem) 0;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--wd2-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible;
}

body.solutions-page .example-case:first-of-type {
  border-top: 0 !important;
  padding-top: 0;
}

body.solutions-page .example-content,
body.solutions-page .example-content.reverse {
  display: grid;
  grid-template-columns: minmax(0, 1.58fr) minmax(220px, .62fr);
  gap: var(--wd2-gap);
  align-items: start;
}

body.solutions-page .example-text {
  padding: 0 !important;
}

body.solutions-page .example-tag {
  display: flex;
  align-items: center;
  gap: .8rem;
  margin: 0 0 1.15rem;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  color: var(--wd2-gold-text);
  font-size: .67rem;
  font-weight: 700;
  letter-spacing: .13em;
}

body.solutions-page .example-tag::before {
  content: "0" counter(solution-chapter);
  width: auto;
  height: auto;
  background: transparent;
  color: var(--wd2-gold-text);
  font-family: var(--wd2-display);
  font-size: 1.15rem;
  letter-spacing: 0;
}

body.solutions-page .example-text h3 {
  max-width: 780px;
  margin: 0 0 1.45rem;
  color: var(--wd2-ink);
  font-family: var(--wd2-display);
  font-size: clamp(2rem, 3.5vw, 3.25rem);
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -.04em;
}

body.solutions-page .example-problem h4,
body.solutions-page .example-solution h4,
body.solutions-page .example-result h4 {
  margin: 0 0 .45rem;
  color: var(--wd2-gold-text);
  font-family: var(--wd2-sans);
  font-size: .66rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

body.solutions-page .example-problem,
body.solutions-page .example-solution,
body.solutions-page .example-result {
  margin: 0 0 1.5rem;
}

body.solutions-page .example-text p,
body.solutions-page .example-text li {
  max-width: 72ch;
  color: var(--wd2-copy);
  font-size: .94rem;
  line-height: 1.78;
}

body.solutions-page .example-image {
  display: block;
  padding: 1.2rem 0 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--wd2-line-strong) !important;
}

body.solutions-page .example-content.reverse .example-image {
  border: 0 !important;
  border-top: 1px solid var(--wd2-line-strong) !important;
}

body.solutions-page .example-visual {
  width: 100%;
  text-align: left;
}

body.solutions-page .example-stats {
  display: flex;
  width: 100%;
  flex-direction: column;
  gap: 0;
}

body.solutions-page .stat {
  padding: .8rem 0;
  text-align: left;
  border: 0;
  border-bottom: 1px solid var(--wd2-line);
}

body.solutions-page .stat:last-child {
  border-bottom: 0;
}

body.solutions-page .stat-label {
  color: var(--wd2-ink);
  font-size: .82rem;
  font-weight: 700;
  line-height: 1.45;
}

body.solutions-page .qa-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 3.5rem;
  margin-top: 2.4rem;
  border-top: 1px solid var(--wd2-line);
}

body.solutions-page .qa-item {
  margin: 0;
  padding: 1.3rem 0 1.55rem;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--wd2-line);
  border-radius: 0;
}

body.solutions-page .qa-item h4 {
  margin: 0 0 .5rem;
  color: var(--wd2-ink);
  font-size: 1rem;
  line-height: 1.45;
}

body.solutions-page .qa-item p {
  margin: 0;
  color: var(--wd2-copy);
  font-size: .91rem;
  line-height: 1.72;
}

body.solutions-page .benefits-grid,
body.solutions-page .process-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  max-width: none;
  margin-top: 2.4rem;
  border-top: 1px solid var(--wd2-line);
}

body.solutions-page .benefit-item,
body.solutions-page .step-item {
  display: block;
  margin: 0;
  padding: 1.3rem 1.25rem 1.55rem;
  background: transparent;
  border: 0;
  border-right: 1px solid var(--wd2-line);
  border-radius: 0;
}

body.solutions-page .benefit-item:last-child,
body.solutions-page .step-item:last-child {
  border-right: 0;
}

body.solutions-page .benefit-item h3,
body.solutions-page .step-content h3 {
  margin: 0 0 .5rem;
  color: var(--wd2-ink);
  font-size: 1rem;
  line-height: 1.4;
}

body.solutions-page .benefit-item p,
body.solutions-page .step-content p {
  margin: 0;
  color: var(--wd2-copy);
  font-size: .87rem;
  line-height: 1.7;
}

body.solutions-page .step-number {
  width: auto;
  height: auto;
  margin: 0 0 1rem;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  color: var(--wd2-gold-text);
  font-family: var(--wd2-display);
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1;
}

/* AI page: narrative reading columns and open capability matrices */
body.ai-page .why-white-dome,
body.ai-page .real-value,
body.ai-page .contact {
  background: var(--wd2-paper-light);
}

body.ai-page .why-white-dome .container {
  display: grid;
  grid-template-columns: minmax(230px, .62fr) minmax(0, 1.38fr);
  gap: var(--wd2-gap);
  align-items: start;
}

body.ai-page .why-white-dome .section-title {
  grid-column: 1;
  position: sticky;
  top: 34px;
  max-width: 390px;
  margin: 0;
}

body.ai-page .why-white-dome .intro-text,
body.ai-page .why-white-dome .principles,
body.ai-page .why-white-dome > .container > :not(.section-title) {
  grid-column: 2;
}

body.ai-page .intro-text {
  max-width: 72ch;
  margin: 0 0 1.2rem;
  color: var(--wd2-copy);
  font-size: .97rem;
  line-height: 1.8;
}

body.ai-page .principles {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  border-top: 1px solid var(--wd2-line);
}

body.ai-page .principle-item {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  gap: 1rem;
  margin: 0;
  padding: 1.3rem 0 1.5rem;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--wd2-line);
  border-radius: 0;
}

body.ai-page .principle-item:last-child {
  border-bottom: 0;
}

body.ai-page .principle-number {
  width: auto;
  height: auto;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  color: var(--wd2-gold-text) !important;
  font-family: var(--wd2-display);
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.1;
}

body.ai-page .principle-content h4 {
  margin: 0 0 .45rem;
  color: var(--wd2-ink);
  font-size: 1rem;
  line-height: 1.42;
}

body.ai-page .principle-content p {
  margin: 0;
  color: var(--wd2-copy);
  font-size: .92rem;
  line-height: 1.75;
}

body.ai-page .service-categories {
  counter-reset: ai-capability;
  background: var(--wd2-paper);
}

body.ai-page .service-categories > .container > .section-title {
  max-width: 760px;
  margin-bottom: clamp(2.5rem, 4vw, 3.5rem);
}

body.ai-page .service-category {
  counter-increment: ai-capability;
  display: block;
  margin: 0;
  padding: clamp(2.5rem, 4.5vw, 4rem) 0;
  border: 0;
  border-top: 1px solid var(--wd2-line);
}

body.ai-page .service-category:last-child {
  padding-bottom: 0;
}

body.ai-page .category-header {
  display: grid;
  grid-template-columns: minmax(240px, .68fr) minmax(0, 1.32fr);
  gap: var(--wd2-gap);
  margin: 0 0 1.6rem;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  text-align: left;
}

body.ai-page .category-header::before {
  content: "0" counter(ai-capability);
  grid-column: 1;
  margin: 0 0 .65rem;
  color: var(--wd2-gold-text);
  font-family: var(--wd2-display);
  font-size: 1.25rem;
  line-height: 1;
}

body.ai-page .category-header h2 {
  grid-column: 1;
  max-width: 360px;
  margin: 0;
  color: var(--wd2-ink) !important;
  font-family: var(--wd2-display);
  font-size: clamp(1.8rem, 3vw, 2.6rem);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -.035em;
}

body.ai-page .category-header p {
  grid-column: 2;
  grid-row: 1 / span 2;
  max-width: 64ch;
  margin: 0;
  color: var(--wd2-copy);
  font-size: .94rem;
  line-height: 1.78;
}

body.ai-page .services-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0 2.25rem;
  border: 0;
}

body.ai-page .service-item,
body.ai-page .service-item + .service-item {
  height: auto;
  padding: 1.15rem 0 1.4rem;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--wd2-line) !important;
  border-radius: 0 !important;
}

body.ai-page .service-item h3 {
  margin: 0 0 .75rem;
  color: var(--wd2-gold-text) !important;
  font-family: var(--wd2-sans);
  font-size: .67rem;
  font-weight: 700;
  letter-spacing: .11em;
  text-transform: uppercase;
}

body.ai-page .service-item ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

body.ai-page .service-item ul li {
  position: relative;
  margin: 0;
  padding: .48rem 0 .48rem 1rem;
  color: var(--wd2-copy);
  font-size: .88rem;
  line-height: 1.65;
  border: 0;
}

body.ai-page .service-item ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 1.04rem;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: var(--wd2-gold);
}

body.ai-page .process-timeline {
  background: var(--wd2-paper-light);
}

body.ai-page .process-timeline .section-title {
  max-width: 740px;
  margin-bottom: clamp(2.2rem, 4vw, 3.4rem);
}

body.ai-page .timeline {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  max-width: none;
  margin: 0;
  border-top: 1px solid var(--wd2-line);
}

body.ai-page .timeline-item {
  display: block;
  margin: 0;
  padding: 1.2rem 1.25rem 1.5rem 0;
  border: 0;
  border-right: 1px solid var(--wd2-line);
}

body.ai-page .timeline-item:last-child {
  border-right: 0;
}

body.ai-page .timeline-item + .timeline-item {
  padding-inline-start: 1.25rem;
}

body.ai-page .timeline-number {
  width: auto;
  height: auto;
  margin: 0 0 1rem;
  background: transparent;
  border: 0;
  border-radius: 0;
  color: var(--wd2-gold-text);
  font-family: var(--wd2-display);
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1;
}

body.ai-page .timeline-content h4 {
  margin: 0 0 .45rem;
  color: var(--wd2-ink);
  font-size: .96rem;
  line-height: 1.4;
}

body.ai-page .timeline-content p {
  margin: 0;
  color: var(--wd2-copy);
  font-size: .86rem;
  line-height: 1.68;
}

body.ai-page .real-value .container {
  display: grid;
  grid-template-columns: minmax(240px, .68fr) minmax(0, 1.32fr);
  gap: var(--wd2-gap);
  align-items: start;
}

body.ai-page .real-value .section-title {
  position: sticky;
  top: 34px;
  max-width: 360px;
  margin: 0;
}

body.ai-page .value-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 2.5rem;
  margin: 0;
}

body.ai-page .value-item {
  margin: 0;
  padding: 1.2rem 0 1.45rem;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--wd2-line) !important;
  border-radius: 0 !important;
}

body.ai-page .value-item h4 {
  margin: 0 0 .45rem;
  color: var(--wd2-ink) !important;
  font-size: 1rem;
  line-height: 1.42;
}

body.ai-page .value-item p {
  margin: 0;
  color: var(--wd2-copy);
  font-size: .9rem;
  line-height: 1.72;
}

body.ai-page .contact {
  background: var(--wd2-night);
  color: #fff;
}

body.ai-page .contact .container {
  display: grid;
  grid-template-columns: minmax(230px, .62fr) minmax(0, 1.38fr);
  gap: var(--wd2-gap);
  align-items: start;
}

body.ai-page .contact > .container > .section-title {
  grid-column: 1;
  position: sticky;
  top: 34px;
  max-width: 360px;
  margin: 0;
  color: #fff !important;
}

body.ai-page .contact-content {
  grid-column: 2;
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}

body.ai-page .contact-info h3 {
  margin: 0 0 .85rem;
  color: #fff;
  font-family: var(--wd2-display);
  font-size: clamp(1.8rem, 3vw, 2.65rem);
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -.03em;
}

body.ai-page .contact-info p {
  max-width: 66ch;
  margin: 0 0 1rem;
  color: #bbb6ac;
  line-height: 1.75;
}

body.ai-page .contact-method {
  grid-template-columns: 140px minmax(0, 1fr);
  border-top-color: rgba(255,255,255,.12);
}

body.ai-page .contact-form form {
  padding: clamp(1.5rem, 3vw, 2rem);
  background: var(--wd2-paper-light);
  border: 0;
  border-radius: 4px;
}

body.ai-page .form-group label {
  color: var(--wd2-ink);
}

body.ai-page .form-group input,
body.ai-page .form-group textarea {
  border-color: var(--wd2-line-strong);
  border-radius: 2px;
}

body.ai-page .contact-form .btn {
  width: auto;
}

/* Keep reverse solution chapters visually text-first. */
body.solutions-page .example-text {
  order: 1;
}

body.solutions-page .example-image {
  order: 2;
}

/* Responsive */
@media (max-width: 1100px) {
  body.home-page .ds-section-header,
  body.ai-page .why-white-dome .section-title,
  body.ai-page .real-value .section-title,
  body.ai-page .contact > .container > .section-title {
    position: static;
  }

  body.services-page .service-category,
  body.services-page .category-header {
    grid-template-columns: 1fr;
  }

  body.services-page .category-header {
    position: static;
    max-width: 680px;
  }

  body.services-page .timeline,
  body.ai-page .timeline {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  body.services-page .timeline-item:nth-child(3),
  body.ai-page .timeline-item:nth-child(3) {
    border-right: 0;
  }

  body.services-page .timeline-item:nth-child(n+4),
  body.ai-page .timeline-item:nth-child(n+4) {
    border-top: 1px solid var(--wd2-line);
  }

  body.ai-page .category-header {
    grid-template-columns: 1fr;
    gap: 0;
  }

  body.ai-page .category-header p {
    grid-column: 1;
    grid-row: auto;
    margin-top: .9rem;
  }

  body.ai-page .services-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 900px) {
  body.home-page .ds-section .ds-container {
    grid-template-columns: 1fr;
  }

  body.home-page .ds-section-header,
  body.home-page .ds-section .ds-container > .ds-stagger,
  body.home-page .ds-section .ds-container > .ds-reveal,
  body.home-page .ds-section .ds-container > div[style*="text-align"] {
    grid-column: 1;
  }

  body.home-page .ds-section-header {
    margin-bottom: 2.2rem;
  }

  body.ai-page .why-white-dome .container,
  body.ai-page .real-value .container,
  body.ai-page .contact .container {
    grid-template-columns: 1fr;
  }

  body.ai-page .why-white-dome .section-title,
  body.ai-page .why-white-dome .intro-text,
  body.ai-page .why-white-dome .principles,
  body.ai-page .why-white-dome > .container > :not(.section-title),
  body.ai-page .real-value .section-title,
  body.ai-page .contact > .container > .section-title,
  body.ai-page .contact-content {
    grid-column: 1;
  }

  body.ai-page .real-value .section-title,
  body.ai-page .contact > .container > .section-title {
    margin-bottom: 2rem;
  }

  body.solutions-page .example-content,
  body.solutions-page .example-content.reverse {
    grid-template-columns: 1fr;
    gap: 1.6rem;
  }

  body.solutions-page .example-image {
    padding-top: 1rem !important;
  }

  body.solutions-page .benefits-grid,
  body.solutions-page .process-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.solutions-page .benefit-item:nth-child(2),
  body.solutions-page .step-item:nth-child(2) {
    border-right: 0;
  }

  body.solutions-page .benefit-item:nth-child(-n+2),
  body.solutions-page .step-item:nth-child(-n+2) {
    border-bottom: 1px solid var(--wd2-line);
  }
}

@media (max-width: 768px) {
  :root {
    --wd2-block: 4.25rem;
  }

  body.home-page .hero.dark-mode-hero,
  body.services-page .page-header,
  body.solutions-page .simple-hero,
  body.ai-page .page-header {
    padding-block: 7rem 3.6rem;
  }

  body.home-page .hero.dark-mode-hero {
    min-height: 0;
  }

  body.home-page .hero-title,
  body.services-page .page-header h1,
  body.solutions-page .simple-hero h1,
  body.ai-page .page-header h1 {
    font-size: clamp(2.7rem, 12vw, 4rem);
  }

  body.home-page .ds-stagger,
  body.services-page .services-grid,
  body.solutions-page .simple-services,
  body.solutions-page .qa-grid,
  body.ai-page .value-grid {
    grid-template-columns: 1fr !important;
  }

  body.services-page .timeline,
  body.ai-page .timeline {
    grid-template-columns: 1fr;
  }

  body.services-page .timeline-item,
  body.ai-page .timeline-item,
  body.services-page .timeline-item + .timeline-item,
  body.ai-page .timeline-item + .timeline-item {
    padding: 1.1rem 0 1.35rem;
    border-right: 0;
    border-top: 1px solid var(--wd2-line);
  }

  body.services-page .timeline-item:first-child,
  body.ai-page .timeline-item:first-child {
    border-top: 0;
  }

  body.solutions-page .benefits-grid,
  body.solutions-page .process-steps {
    grid-template-columns: 1fr;
  }

  body.solutions-page .benefit-item,
  body.solutions-page .step-item {
    padding: 1.2rem 0 1.4rem;
    border-right: 0;
    border-bottom: 1px solid var(--wd2-line);
  }

  body.solutions-page .benefit-item:last-child,
  body.solutions-page .step-item:last-child {
    border-bottom: 0;
  }

  body.ai-page .contact-content {
    gap: 1.5rem;
  }
}

@media (max-width: 480px) {
  body.home-page .hero-logo-img {
    width: 76px;
    height: 76px;
  }

  body.home-page .hero-title {
    font-size: clamp(2.55rem, 12.4vw, 3.5rem);
  }

  body.home-page .project-card {
    grid-template-columns: 72px minmax(0, 1fr);
  }

  body.home-page .project-icon-frame,
  body.home-page .project-logo-area {
    width: 68px;
    height: 68px;
  }

  body.ai-page .contact-method {
    grid-template-columns: 1fr;
  }

  body.ai-page .contact-form .btn {
    width: 100%;
  }
}

/* RTL border direction */
body[dir='rtl'].services-page .timeline-item,
body[dir='rtl'].ai-page .timeline-item,
body[dir='rtl'].solutions-page .benefit-item,
body[dir='rtl'].solutions-page .step-item {
  border-right: 0;
  border-left: 1px solid var(--wd2-line);
}

body[dir='rtl'].services-page .timeline-item:last-child,
body[dir='rtl'].ai-page .timeline-item:last-child,
body[dir='rtl'].solutions-page .benefit-item:last-child,
body[dir='rtl'].solutions-page .step-item:last-child {
  border-left: 0;
}

body.solutions-page .qa-item,
body.solutions-page .benefit-item,
body.ai-page .value-item {
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Corrective pass: remove residual card treatments forced by legacy CSS. */
body.solutions-page .qa-item,
body.solutions-page .benefit-item,
body.home-page .project-card,
body.home-page .industry-item,
body.home-page .value-item,
body.home-page .principle-item,
body.home-page .compliance-card,
body.services-page .service-item,
body.ai-page .service-item,
body.ai-page .value-item,
body.ai-page .principle-item {
  transform: none !important;
  box-shadow: none !important;
  transition: color 160ms ease, background-color 160ms ease !important;
}

body.solutions-page .qa-item {
  border: 0 !important;
  border-bottom: 1px solid var(--wd2-line) !important;
}

body.solutions-page .benefit-item {
  border: 0 !important;
  border-inline-end: 1px solid var(--wd2-line) !important;
}

body.solutions-page .benefit-item:last-child {
  border-inline-end: 0 !important;
}

body.solutions-page .qa-item:hover,
body.solutions-page .benefit-item:hover,
body.home-page .project-card:hover,
body.home-page .industry-item:hover,
body.services-page .service-item:hover,
body.ai-page .service-item:hover {
  transform: none !important;
  box-shadow: none !important;
}

@media (max-width: 768px) {
  body.services-page .page-header h1,
  body.solutions-page .simple-hero h1,
  body.ai-page .page-header h1 {
    font-size: clamp(2.8rem, 11vw, 4rem) !important;
    line-height: 1.02 !important;
    letter-spacing: -.045em !important;
  }

  body.solutions-page .benefit-item,
  body.solutions-page .benefit-item:last-child {
    border-inline-end: 0 !important;
    border-bottom: 1px solid var(--wd2-line) !important;
  }

  body.solutions-page .benefit-item:last-child {
    border-bottom: 0 !important;
  }
}

/* Fourth-pass corrections: restore the project typeface, stable flow, and a
   warm brand header treatment instead of the unintended black bands. */
:root {
  --wd2-display: "Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body.home-page .hero.dark-mode-hero,
body.services-page .page-header,
body.solutions-page .simple-hero,
body.ai-page .page-header {
  min-height: 0;
  padding-block: clamp(7rem, 10vw, 9.5rem) clamp(3.75rem, 6vw, 5.5rem);
  background: #f2ece1 !important;
  background-image: none !important;
  color: var(--wd2-ink) !important;
  border-bottom: 1px solid var(--wd2-line-strong);
  overflow: visible;
}

body.home-page .hero.dark-mode-hero {
  min-height: 0;
  display: block;
}

body.home-page .hero-logo-wrapper {
  display: flex;
  justify-content: flex-start;
  margin: 0 0 1.75rem;
}

body.home-page .hero-logo-img {
  width: 132px;
  height: 92px;
  margin: 0;
  background-position: left center;
  background-size: contain;
  filter: none;
}

body.home-page .hero-title,
body.services-page .page-header h1,
body.solutions-page .simple-hero h1,
body.ai-page .page-header h1 {
  max-width: 920px;
  margin: 0 0 1.2rem;
  color: var(--wd2-ink) !important;
  background: none !important;
  -webkit-text-fill-color: currentColor !important;
  font-family: var(--wd2-sans) !important;
  font-size: clamp(3rem, 5.4vw, 4.8rem);
  font-weight: 700 !important;
  line-height: 1.08 !important;
  letter-spacing: -.04em !important;
  text-align: left;
  overflow-wrap: break-word;
}

body.home-page .hero-subtitle,
body.services-page .page-header p,
body.solutions-page .simple-hero p,
body.ai-page .page-header p {
  max-width: 680px;
  margin: 0;
  color: var(--wd2-copy) !important;
  font-size: clamp(1.03rem, 1.55vw, 1.16rem);
  line-height: 1.72;
  text-align: left;
}

body.home-page .ds-badge,
body.services-page .ds-badge,
body.solutions-page .ds-badge,
body.ai-page .ds-badge {
  color: var(--wd2-gold-text);
}

body.home-page .hero .ds-btn-primary {
  color: #17130d !important;
  background: var(--wd2-gold);
  border-color: var(--wd2-gold);
}

body.home-page .hero .ds-btn-primary:hover {
  color: #0f0c08 !important;
  background: #d5b98c;
  border-color: #d5b98c;
}

body.home-page .hero .ds-btn-secondary {
  color: var(--wd2-ink);
  background: transparent;
  border-color: var(--wd2-line-strong);
}

body.home-page .hero .ds-btn-secondary:hover {
  color: var(--wd2-ink);
  background: rgba(255, 255, 255, .55);
  border-color: var(--wd2-ink);
}

/* The information hierarchy does not depend on sticky headings. Removing the
   persistent positioning prevents headings from visually riding over content. */
body.home-page .ds-section-header,
body.services-page .category-header,
body.ai-page .why-white-dome .section-title,
body.ai-page .real-value .section-title,
body.ai-page .contact > .container > .section-title {
  position: static !important;
  top: auto !important;
}

body.home-page .section-title,
body.home-page .ds-section-header h2,
body.services-page .section-title,
body.services-page .category-header h2,
body.solutions-page .section-title,
body.solutions-page .example-text h3,
body.ai-page .section-title,
body.ai-page .category-header h2,
body.ai-page .models-head h2 {
  font-family: var(--wd2-sans) !important;
  font-weight: 700 !important;
  line-height: 1.12 !important;
  letter-spacing: -.032em !important;
}

body.home-page .ds-section-header p,
body.services-page .category-header p,
body.solutions-page .section-subtitle,
body.ai-page .section-subtitle,
body.ai-page .intro-text {
  line-height: 1.75;
  overflow-wrap: break-word;
}

@media (max-width: 768px) {
  body.home-page .hero.dark-mode-hero,
  body.services-page .page-header,
  body.solutions-page .simple-hero,
  body.ai-page .page-header {
    padding-block: 6.5rem 3.5rem;
  }

  body.home-page .hero-title,
  body.services-page .page-header h1,
  body.solutions-page .simple-hero h1,
  body.ai-page .page-header h1 {
    font-size: clamp(2.55rem, 10.8vw, 3.7rem) !important;
    line-height: 1.08 !important;
  }

  body.home-page .hero-logo-img {
    width: 112px;
    height: 78px;
  }
}

body.home-page .hero-content-centered,
body.home-page .hero-text-group {
  align-items: flex-start;
  margin-inline: 0;
  text-align: left;
}

body.home-page .hero-title {
  margin-inline: 0 auto !important;
}

@media (max-width: 480px) {
  body.home-page .hero-title,
  body.services-page .page-header h1,
  body.solutions-page .simple-hero h1,
  body.ai-page .page-header h1 {
    font-size: clamp(2.25rem, 10.2vw, 2.65rem) !important;
    line-height: 1.1 !important;
  }
}

body[dir="rtl"].home-page .hero-title,
body[dir="rtl"].home-page .section-title,
body[dir="rtl"].home-page .ds-section-header h2,
body[dir="rtl"].services-page .page-header h1,
body[dir="rtl"].services-page .section-title,
body[dir="rtl"].services-page .category-header h2,
body[dir="rtl"].solutions-page .simple-hero h1,
body[dir="rtl"].solutions-page .section-title,
body[dir="rtl"].solutions-page .example-text h3,
body[dir="rtl"].ai-page .page-header h1,
body[dir="rtl"].ai-page .section-title,
body[dir="rtl"].ai-page .category-header h2 {
  font-family: "Zain", sans-serif !important;
  letter-spacing: 0 !important;
  line-height: 1.22 !important;
}

/* Fifth-pass corrections: stable solution rows, no decorative hover motion,
   and no connector line crossing the process copy. */
body.solutions-page .simple-service,
body.solutions-page .simple-service .service-visual,
body.solutions-page .simple-service .service-description,
body.solutions-page .simple-service:hover,
body.solutions-page .simple-service:hover .service-visual,
body.solutions-page .simple-service:hover .service-description {
  transform: none !important;
  box-shadow: none !important;
}

body.solutions-page .simple-service,
body.solutions-page .simple-service .service-visual,
body.solutions-page .simple-service .service-description {
  transition: none !important;
  background-color: transparent !important;
}

body.solutions-page .step-item::before,
body.solutions-page .step-item::after,
body.solutions-page .process-steps .step-item::before,
body.solutions-page .process-steps .step-item::after {
  content: none !important;
  display: none !important;
}

body.solutions-page .step-item {
  position: relative;
  align-items: flex-start;
}

body.solutions-page .step-number {
  flex: 0 0 auto;
}