/* Column-only colour continuation of the approved homepage. Layout, wording,
   typography and interactive behaviour remain in the original stylesheets. */
body:is([data-page="services"], [data-page="about"], [data-page="cases"], [data-page="contact"]) {
  --column-ink: #173d43;
  --column-copy: #435f65;
  --column-accent: #087d71;
  --column-line: #bfd7d1;
  --column-wash: #f1f8f3;
}
body[data-page]:not([data-page="home"]) .column-intro::after {
  background: linear-gradient(90deg, #85b841 0 26px, #cce0cf 26px 55%, #cce2ea 100%);
}
body[data-page]:not([data-page="home"]) :is(.column-intro h1, .column-intro .column-headline, .section-heading h2, .contact-heading h2) { color: #173d43; }
body[data-page]:not([data-page="home"]) :is(.column-crumb, .column-code, .column-description) { color: #526d72; }
body[data-page]:not([data-page="home"]) :is(.column-crumb a, .column-jumps a) { color: #166f96; }
body[data-page]:not([data-page="home"]) .column-jumps a:hover { color: #087569; background: #eef7ee; border-color: #b7d3b3; }
body[data-page]:not([data-page="home"]) .contact-link[aria-current="page"] { color: #086b62; background: #edf8ef; border-color: #a8c891; }
body[data-page]:not([data-page="home"]) > main#main > section:not(.hero) :is(
  .section-kicker, .concept-kicker, .rich-eyebrow, .rich-section-note, .concept-note,
  .concept-trust-note, .concept-card-index, .concept-step-output, .rich-story-category,
  .rich-story-steps dt, .rich-sample-status, .rich-sample-badge, .document-top,
  .document-top small, .document-bottom, .space-kicker, .space-footer,
  .phase-eyebrow, .annual-path-caption > span, .annual-path-caption > p,
  .service-principles span, .contact-heading p, .contact-action > span,
  .contact-preview-note, .intro-chips span, .assessment-note, .wizard-privacy,
  .wizard-heading, .question-hint, .field-label
) { color: #4c6b68; }
body[data-page]:not([data-page="home"]) > main#main > section:not(.hero) :is(.section-kicker, .concept-kicker, .rich-eyebrow) { color: #367a52; }
body[data-page]:not([data-page="home"]) .section-kicker::before { background: #85b841; }
body[data-page]:not([data-page="home"]) > main#main > section:not(.hero) :is(.text-link, .concept-text-link) { color: #166f96; }
body[data-page]:not([data-page="home"]) :is(.section-heading > p, .column-intro > p, .contact-heading p) { color: #435f65; }
body[data-page]:not([data-page="home"]) :is(.btn, .choice, .quarter, .delivery-tab, .rich-situation-tab, select, summary):focus-visible { outline-color: #087d71; }

/* Service situations and the continuous annual route. */
body[data-page="services"] :is(.rich-situation-tabs, .quarter-tabs, .delivery-nav) { background: #f0f6f1; border-color: #c7dcd0; }
body[data-page="services"] :is(.rich-situation-tab, .quarter, .delivery-tab) { color: #486768; }
body[data-page="services"] :is(.rich-situation-tab, .quarter, .delivery-tab):hover { color: #087569; background: #f9fcf7; }
body[data-page="services"] :is(.rich-situation-tab.active, .quarter.active, .delivery-tab.active) {
  color: #086f64;
  background: #ffffff;
  border-color: #95bd80 !important;
  box-shadow: inset 0 -2px #85b841;
}
body[data-page="services"] :is(.quarter.active strong, .quarter.active .quarter-number, .delivery-tab.active span) { color: #087569; }
body[data-page="services"] :is(.quarter small, .quarter.active small, .quarter-number, .delivery-tab span) { color: #526d72; }
body[data-page="services"] :is(.rich-situation-panel, .delivery-panel, .rich-sample, .assessment-card) {
  background: #ffffff;
  border-color: #bfd7d1;
  box-shadow: 0 10px 28px #217f8610;
}
body[data-page="services"] :is(.rich-situation-panel, .delivery-panel, .rich-sample)::before { border-color: #85b841; }
body[data-page="services"] .annual-space { background: linear-gradient(135deg, #ffffff, #fcfff9 52%, #f5fbfd); border-color: #b7d1c7; box-shadow: 0 10px 28px #217f8610; }
body[data-page="services"] .annual-space::before { border-color: #85b841; }
body[data-page="services"] :is(.space-symbol, .intro-icon) { color: #087d71; background: #edf8ef; border-color: #c5ddc5; }
body[data-page="services"] .space-badge { background: #f1f8e9; border-color: #cfdfbb; color: #496e3f; }
body[data-page="services"] :is(.annual-path-caption, .space-footer, .rich-situation-bottom, .document-bottom) { border-color: #d3e3d9; }
body[data-page="services"] :is(.space-identity h2, .rich-situation-intro h3, .rich-situation-column h4, .detail-kicker, .delivery-panel h3, .rich-sample-top h3, .assessment-intro h3, .wizard-step h3) { color: #173d43; }
body[data-page="services"] :is(.rich-situation-intro > p, .rich-situation-column ul, .rich-situation-bottom > p, .phase-copy p, .document-desc, .document-rows p, .rich-sample-description, .assessment-intro p) { color: #435f65; }
body[data-page="services"] .rich-situation-ours { background: #f2f8ee; border-color: #d5e5c9; }
body[data-page="services"] .rich-situation-client { background: #f0f9fc; border-color: #d1e6ed; }
body[data-page="services"] .rich-situation-ours h4 { color: #326f4f; }
body[data-page="services"] .rich-situation-client h4 { color: #176f92; }
body[data-page="services"] .deliverable-card { background: #f0f8f2; border-color: #c9dfca; }
body[data-page="services"] .deliverable-card strong { color: #176c63; }
body[data-page="services"] .deliverable-card small { color: #526d72; }
body[data-page="services"] .document-rows > div { border-color: #d5e4df !important; }
body[data-page="services"] .document-rows .row-blue { background: #f0f9fc; }
body[data-page="services"] .document-rows .row-peach { background: #f6f9ef; }
body[data-page="services"] .document-rows .row-green { background: #eef8f3; }
body[data-page="services"] .row-blue .row-tag { color: #166f96; }
body[data-page="services"] .row-peach .row-tag { color: #4c713e; }
body[data-page="services"] .row-green .row-tag { color: #236f58; }
body[data-page="services"] .document-top .icon { color: #087d71; }
body[data-page="services"] :is(.rich-sample-badge, .rich-sample-status) { background: #f2f8ec; border-color: #d3e4c4; }
body[data-page="services"] .rich-sample-table-wrap { background: #ffffff; border-color: #c4dbd1; }
body[data-page="services"] .rich-sample-table thead th { background: #eff7f2; color: #2e6559; }
body[data-page="services"] .rich-sample-table :is(th, td) { border-color: #d7e6df; }
body[data-page="services"] .rich-sample-table tbody th { color: #315e58; background: #fbfdfb; }
body[data-page="services"] .rich-sample-table tbody td { color: #435f65; background: #ffffff; }
body[data-page="services"] .rich-sample-table td::before { color: #4c6b68; }
body[data-page="services"] .responsibility-card { background: #f1f8f3; border-color: #c8ddce; }
body[data-page="services"] .responsibility-symbol { color: #087d71; background: #e5f3e8; border-color: #c5ddc7; }
body[data-page="services"] .responsibility-card h3 { color: #173d43; }
body[data-page="services"] :is(.responsibility-card p, .responsibility-card > div > span) { color: #435f65; }
body[data-page="services"] .service-principles .icon { color: #4d8448; }
body[data-page="services"] .service-principles i { background: #c9ddcf; }

/* Interactive needs planner: same palette for defaults, selections and results. */
body[data-page="services"] .intro-chips span { background: #f3f8ee; border-color: #cfe1c1; }
body[data-page="services"] .assessment-note .icon { color: #4d8448; }
body[data-page="services"] .wizard-progress i { background: #e4ede8; }
body[data-page="services"] .wizard-progress i.active { background: linear-gradient(90deg, #85b841, #1eab95); }
body[data-page="services"] .choice { color: #435f65; background: #ffffff; border-color: #c9dbd3; }
body[data-page="services"] .choice:hover { border-color: #8bbb83; background: #f7fbf2; }
body[data-page="services"] .choice.selected { color: #086f64; background: #f1f8eb; border-color: #8dbb80; box-shadow: inset 0 0 0 1px #b0ce9a; }
body[data-page="services"] .choice-wide strong { color: #315d56; }
body[data-page="services"] .choice-wide.selected strong { color: #086f64; }
body[data-page="services"] .choice-wide small { color: #526d72; }
body[data-page="services"] .wizard-step select { color: #315d56; background: #ffffff; border-color: #bbd4c6; }
body[data-page="services"] :is(.wizard-bottom, .wizard-privacy) { border-color: #d5e5dc; }
body[data-page="services"] :is(#assessment-result h3, #result-start, .result-line strong) { color: #176c63; }
body[data-page="services"] :is(#result-summary, .result-footnote, .result-line small) { color: #526d72; }
body[data-page="services"] .result-line { background: #f5f9f4; border-color: #d3e3ce; }
body[data-page="services"] .result-line > span { background: #e9f4df; color: #427333; border-color: #cedfbb; }
body[data-page="services"] .result-line:nth-child(even) { background: #f2f9fc; border-color: #d0e4ec; }
body[data-page="services"] .result-line:nth-child(even) > span { background: #e4f3f9; color: #166f96; border-color: #c6e1ed; }

/* Contact details, the contact window and its entry points share the homepage. */
body[data-page="contact"] .contact-grid article { background: #ffffff; border-color: #bfd8c6; box-shadow: 0 8px 24px #246b4208; }
body[data-page="contact"] .contact-grid article:nth-child(even) { background: #fcfeff; border-color: #bedce4; }
body[data-page="contact"] .contact-icon { color: #087d71; background: #edf8ef; border-color: #c6dfc7; }
body[data-page="contact"] .contact-grid article:nth-child(even) .contact-icon { color: #166f96; background: #edf8fc; border-color: #c9e2eb; }
body[data-page="contact"] :is(.contact-grid h3, .contact-grid strong, .contact-grid strong > a) { color: #176c63; }
body[data-page="contact"] .contact-grid article:nth-child(even) :is(h3, strong) { color: #215d72; }
body[data-page="contact"] .contact-grid p { color: #526d72; }
body[data-page="contact"] .contact-grid a:hover { color: #085e54; text-decoration-color: #85b841; }

@media (max-width: 520px) {
  body[data-page="services"] .rich-sample-table tr { background: #ffffff; border-color: #d4e4db; }
  body[data-page="services"] .rich-sample-table tbody th { background: transparent; }
}
@media (forced-colors: active) {
  body[data-page="services"] :is(.wizard-progress i.active, .choice.selected) { outline: 1px solid Highlight; }
}
