/* SCO R05 colour layer. Built static-site override; no font replacement. */
:root {
  --sco-r05-plum: #714B67;
  --sco-r05-paper: #FCFBF9;
  --sco-r05-surface: #FFF8FB;
  --sco-r05-teal: #0B9F9D;
  --sco-r05-gold: #D39A42;
  --sco-r05-ink: #241D26;
  --sco-r05-muted: #6B626B;
  --sco-r05-panel: #2B202B;
  --sco-r05-line: #E7E1E5;
}

html,
body {
  background-color: var(--sco-r05-paper) !important;
  color: var(--sco-r05-ink) !important;
}

/* Public shell: colour only; existing site font remains in force. */
.site-header {
  background: rgba(255, 255, 255, 0.94) !important;
  color: var(--sco-r05-ink) !important;
  border-bottom: 1px solid var(--sco-r05-line) !important;
  box-shadow: 0 8px 24px rgba(36, 29, 38, 0.08) !important;
}

.site-header .brand,
.site-header nav a,
.site-header .mobile-nav-toggle {
  color: var(--sco-r05-plum) !important;
}

.site-header .nav-cta {
  background: var(--sco-r05-plum) !important;
  border-color: var(--sco-r05-plum) !important;
  color: #fff !important;
}

.site-header .sector-menu-list {
  background: var(--sco-r05-surface) !important;
  border-color: var(--sco-r05-line) !important;
  color: var(--sco-r05-ink) !important;
}

.site-header nav a[aria-current="page"],
.site-header nav a[aria-current="location"] {
  color: var(--sco-r05-plum) !important;
}

/* Homepage outer sections. The scene/artwork children are deliberately untouched. */
#top {
  background: var(--sco-r05-paper) !important;
  color: var(--sco-r05-ink) !important;
}

#top .hero-story h1 {
  color: var(--sco-r05-ink) !important;
}

#top .hero-story h1 em,
#top .sco-hero-tagline,
#top .hero-actions a {
  color: var(--sco-r05-plum) !important;
}

#top .hero-story > p:not(.sco-hero-tagline) {
  color: var(--sco-r05-muted) !important;
}

#top .hero-actions a:first-child,
#top .hero-actions .work-button:not(.work-button-ghost) {
  background: var(--sco-r05-plum) !important;
  border-color: var(--sco-r05-plum) !important;
  color: #fff !important;
}

.sco-home-conclusion {
  background: var(--sco-r05-surface) !important;
  color: var(--sco-r05-ink) !important;
}

.sco-home-conclusion h2,
.sco-home-conclusion h3,
.sco-home-conclusion p {
  color: var(--sco-r05-ink) !important;
}

.sco-home-conclusion h3 {
  color: var(--sco-r05-plum) !important;
}

/* External page shells. */
.work-page,
.contact-page,
.knowledge-page,
.solutions-page,
main._2Vj8sq_container {
  color: var(--sco-r05-ink);
}

.work-page,
.contact-page,
.knowledge-page,
main._2Vj8sq_container {
  background-color: var(--sco-r05-paper) !important;
}

.work-button:not(.work-button-ghost),
.work-inline-cta,
.final-cta a,
.contact-form button {
  background: var(--sco-r05-plum) !important;
  border-color: var(--sco-r05-plum) !important;
  color: #fff !important;
}

.work-button-ghost,
.work-page a,
.contact-page a,
.knowledge-page a,
main._2Vj8sq_container a {
  color: var(--sco-r05-plum) !important;
}

/* Internal development systems keep IBM Plex Sans Arabic and their data colours. */
.react-flow,
.react-flow *,
.flow-app,
.flow-app *,
.work-dark,
.work-dark *,
.sco-home-board,
.sco-home-board * {
  font-family: "IBM Plex Sans Arabic", sans-serif !important;
}

.react-flow,
.flow-app,
.work-dark,
.sco-home-board {
  --sco-internal-panel: var(--sco-r05-panel);
}

/* Do not override Canvas/SVG fills, Odoo icons, edges, state colours, or motion. */
canvas,
svg,
.react-flow__edge,
.react-flow__node,
[data-state],
[data-status] {
  forced-color-adjust: none;
}

/* About page: keep the interactive expertise panel dark, but remove the
   black page-level shell so the public identity remains light and warm. */
.about-page ._page_sbm7a_1 {
  --about-pink: var(--sco-r05-plum);
  --about-ink: var(--sco-r05-ink);
  --about-copy: var(--sco-r05-muted);
  --about-heading: var(--sco-r05-plum);
  --ink: var(--sco-r05-ink);
  --plum: var(--sco-r05-plum);
  --teal: var(--sco-r05-teal);
  --paper: var(--sco-r05-paper);
  --paper-alt: var(--sco-r05-surface);
  --muted: var(--sco-r05-muted);
  --line: var(--sco-r05-line);
  background: var(--sco-r05-paper) !important;
  color: var(--sco-r05-ink) !important;
}
.about-page ._identity_jly8z_5,
.about-page ._relationship_jly8z_7 {
  background: linear-gradient(135deg, var(--sco-r05-paper), var(--sco-r05-surface));
}
.about-page ._copy_jly8z_6 h2,
.about-page ._relationshipHeader_jly8z_7 h2 {
  color: var(--sco-r05-ink) !important;
  background-image: none !important;
  -webkit-text-fill-color: var(--sco-r05-plum) !important;
}
.about-page ._copy_jly8z_6 h2 span {
  color: var(--sco-r05-plum) !important;
}
.about-page ._copy_jly8z_6 p:not(._eyebrow_jly8z_3),
.about-page ._relationshipHeader_jly8z_7 > p:last-child {
  color: var(--sco-r05-muted) !important;
}
.about-page ._copy_jly8z_6 ._lead_jly8z_10 {
  color: var(--sco-r05-ink) !important;
}
.about-page ._openingTitle_sbm7a_38 {
  color: var(--sco-r05-ink) !important;
  -webkit-text-fill-color: var(--sco-r05-ink) !important;
}
.about-page ._copy_1rcdr_2 h1 {
  background-image: none !important;
  color: var(--sco-r05-plum) !important;
  -webkit-text-fill-color: var(--sco-r05-plum) !important;
}
.about-page ._openingIntro_sbm7a_39 {
  color: var(--sco-r05-muted) !important;
}
.about-page ._scrollLink_sbm7a_40 {
  color: var(--sco-r05-plum) !important;
}
.work-page .work-inline-cta,
.work-page .final-cta a,
.work-page .work-button:not(.work-button-ghost),
.contact-form button,
main._2Vj8sq_container ._2Vj8sq_primary {
  color: #fff !important;
}
.about-page ._expertisePanel_jly8z_11,
.about-page ._approachPanel_jly8z_28,
.about-page ._closingPanel_jly8z_57 {
  color: #FFF8FB;
  background: radial-gradient(ellipse at 72% 35%, rgb(113 75 103 / 28%), transparent 58%),
    linear-gradient(138deg, var(--sco-r05-panel), #453044 53%, #714B67) !important;
}

/* Solutions board: warmer outer shell, clearer navigation, and more readable
   cards. React Flow nodes, Odoo icons, edges, and detail content remain intact. */
.solutions-page .mother-board {
  background: radial-gradient(ellipse at 68% 13%, rgb(113 75 103 / 38%), transparent 34%),
    linear-gradient(165deg, #714B67, #8b6a84 48%, #FFF8FB) !important;
}
.solutions-page .section-label {
  color: var(--sco-r05-ink) !important;
}
.solutions-page .section-label > span,
.solutions-page .eyebrow {
  color: var(--sco-r05-plum) !important;
}
.solutions-page .section-label p {
  color: var(--sco-r05-muted) !important;
}
.solutions-page .lane-label {
  min-height: 56px;
  padding: 12px 16px;
  border-color: rgb(113 75 103 / 42%);
  background: rgb(255 248 251 / 92%);
  color: var(--sco-r05-ink);
  box-shadow: 0 8px 20px rgb(36 29 38 / 8%);
}
.solutions-page .lane-label:hover,
.solutions-page .lane-label.is-active {
  background: var(--sco-r05-plum);
  border-color: var(--sco-r05-plum);
  color: #fff;
}
.solutions-page .department-card,
.solutions-page .content-card {
  min-height: 170px;
  padding: 26px 28px;
  border-color: rgb(231 225 229 / 32%);
  background: linear-gradient(145deg, #2B202B, #50394C);
  box-shadow: 0 18px 42px rgb(36 29 38 / 22%);
}
.solutions-page .department-card h3,
.solutions-page .content-card h3 {
  font-size: 24px;
  line-height: 1.35;
}
.solutions-page .department-card > p {
  color: #E7DDE5;
  font-size: 14px;
}
.solutions-page .branch-list button {
  min-height: 48px;
  padding: 10px 13px;
}
.solutions-page .detail-scrim {
  background: rgb(36 29 38 / 72%);
}
.solutions-page .detail-panel {
  width: min(680px, 100%);
  padding: 40px;
  border-color: rgb(255 248 251 / 38%);
  background: linear-gradient(145deg, var(--sco-r05-panel), #714B67);
  box-shadow: 0 28px 90px rgb(36 29 38 / 42%);
}
.solutions-page .detail-panel h2 {
  font-size: 34px;
  line-height: 1.35;
}
.solutions-page .detail-panel > p,
.solutions-page .detail-panel section p {
  color: #F3EAF1;
}
.solutions-page .detail-panel section b {
  color: var(--sco-r05-teal);
}
@media (max-width: 760px) {
  .solutions-page .mother-board {
    min-width: 100%;
  }
  .solutions-page .section-label {
    width: calc(100vw - 36px);
  }
  .solutions-page .department-card,
  .solutions-page .content-card {
    padding: 20px;
  }
  .solutions-page .detail-panel {
    padding: 26px 22px;
  }
  .solutions-page .detail-panel h2 {
    font-size: 28px;
  }
}

/* Final solutions direction: light page shell, dark interaction frame only. */
.solutions-page .mother-board {
  min-width: 0;
  overflow-x: hidden;
  background: var(--sco-r05-paper) !important;
  color: var(--sco-r05-ink) !important;
}
.solutions-page .mother-board::before {
  opacity: .42;
  background-image: linear-gradient(rgb(113 75 103 / 7%) 1px, transparent 1px),
    linear-gradient(90deg, rgb(113 75 103 / 7%) 1px, transparent 1px),
    linear-gradient(rgb(113 75 103 / 10%) 1px, transparent 1px),
    linear-gradient(90deg, rgb(113 75 103 / 10%) 1px, transparent 1px);
}
.solutions-page .intro-board h1 {
  color: var(--sco-r05-ink) !important;
}
.solutions-page .intro-board h1 em {
  color: var(--sco-r05-plum) !important;
}
.solutions-page .intro-board > p {
  color: var(--sco-r05-muted) !important;
}
.solutions-page .section-label h2 {
  color: var(--sco-r05-ink) !important;
}
.solutions-page .section-label p {
  color: var(--sco-r05-muted) !important;
}
.solutions-page .board-watermark {
  opacity: .08;
}
.solutions-page .mobile-workbench {
  color: var(--sco-r05-ink) !important;
}
.solutions-page .mobile-workbench__intro h2,
.solutions-page .mobile-workbench__departments > h2,
.solutions-page .mobile-workbench__content-card h2 {
  color: var(--sco-r05-ink) !important;
}
.solutions-page .mobile-workbench__intro p {
  color: var(--sco-r05-muted) !important;
}
.solutions-page .mobile-workbench__eyebrow {
  color: var(--sco-r05-plum) !important;
}
.solutions-page .mobile-workbench__tabs .mobile-workbench__tab {
  border-color: rgb(113 75 103 / 24%);
  background: var(--sco-r05-surface);
  color: var(--sco-r05-ink);
}
.solutions-page .mobile-workbench__tabs .mobile-workbench__tab[aria-selected="true"] {
  background: var(--sco-r05-plum);
  border-color: var(--sco-r05-plum);
  color: #fff;
}
.solutions-page .mobile-workbench__panel {
  background: linear-gradient(145deg, var(--sco-r05-panel), #453044);
}
.solutions-page .mobile-workbench__department,
.solutions-page .mobile-workbench__content-card {
  border-color: rgb(113 75 103 / 24%);
  background: var(--sco-r05-surface);
}
.solutions-page .mobile-workbench__department summary {
  color: var(--sco-r05-ink);
}
.solutions-page .mobile-workbench__department summary small,
.solutions-page .mobile-workbench__content-card > section p {
  color: var(--sco-r05-muted);
}
.solutions-page .mobile-workbench__branches button {
  border-color: rgb(113 75 103 / 20%);
  background: #fff;
  color: var(--sco-r05-ink);
}
.solutions-page .mobile-workbench__content-card > section strong {
  color: #241D26 !important;
  -webkit-text-fill-color: #241D26 !important;
}
.solutions-page .mobile-workbench__content-card > section p {
  color: #6B626B !important;
  -webkit-text-fill-color: #6B626B !important;
}
.solutions-page .content-card {
  color: var(--sco-r05-ink) !important;
}
.solutions-page .content-card .content-items > div {
  border-color: rgb(113 75 103 / 16%);
}
.solutions-page .content-card .content-items b {
  color: var(--sco-r05-teal) !important;
}
.solutions-page .content-card .content-items strong {
  color: var(--sco-r05-ink) !important;
  opacity: 1 !important;
}
.solutions-page .content-card .content-items p {
  color: var(--sco-r05-muted) !important;
  opacity: 1 !important;
}
.solutions-page .content-card .content-items > div > section > strong {
  color: #241D26 !important;
  -webkit-text-fill-color: #241D26 !important;
}
.solutions-page .content-card .content-items > div > section > p {
  color: #6B626B !important;
  -webkit-text-fill-color: #6B626B !important;
}
.solutions-page article.content-card .content-items section strong {
  color: #241D26 !important;
  -webkit-text-fill-color: #241D26 !important;
}
.solutions-page article.content-card .content-items section p {
  color: #6B626B !important;
  -webkit-text-fill-color: #6B626B !important;
}

@media (max-width: 760px) {
  .site-header {
    box-shadow: 0 5px 16px rgba(36, 29, 38, 0.08) !important;
  }
}
