:root {
  --s-ink: #20212a;
  --s-navy: #171c2c;
  --s-plum: #4d3b59;
  --s-plum-light: #75647e;
  --s-teal: #477f88;
  --s-teal-light: #7ba7ad;
  --s-orange: #cf8740;
  --s-paper: #ffffff;
  --s-warm: #f6f5f3;
  --s-cool: #f3f5f5;
  --s-line: #e4e2df;
  --s-muted: #6c6b72;
}

body {
  color: var(--s-ink);
  background: var(--s-paper);
}

/* Quiet, premium header */
.site-header {
  border: 0;
  border-bottom: 1px solid rgba(32, 33, 42, 0.09);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 7px 24px rgba(23, 28, 44, 0.045);
}

.main-nav a {
  color: #373741;
}

.main-nav a::after {
  height: 2px;
  background: var(--s-teal);
}

/* Deep neutral hero with restrained brand color */
.hero {
  background:
    radial-gradient(circle at 82% 42%, rgba(123, 167, 173, 0.15), transparent 31%),
    radial-gradient(circle at 13% 115%, rgba(117, 100, 126, 0.16), transparent 32%),
    linear-gradient(128deg, #161a2a 0%, #29253b 55%, #342a42 100%);
}

.hero h1 {
  text-shadow: none;
}

.hero h1 em,
.hero-facts strong {
  color: #9fc3c7;
}

.hero-copy {
  color: rgba(255, 255, 255, 0.69);
}

.hero-grid {
  opacity: 0.075;
}

.hero-orbit {
  border-color: rgba(255, 255, 255, 0.11);
}

.orbit-two::before,
.orbit-two::after {
  width: 8px;
  height: 8px;
  background: var(--s-orange);
}

.button.primary {
  color: #fff;
  background: var(--s-teal);
}

.button.primary:hover {
  background: #396d75;
}

.button.ghost {
  border-color: rgba(255, 255, 255, 0.28);
  background: rgba(255, 255, 255, 0.025);
}

.hero-facts div {
  text-shadow: none;
}

/* Global section language */
.eyebrow {
  color: var(--s-teal);
}

.eyebrow::before,
.eyebrow.light::before {
  width: 18px;
  height: 2px;
  background: var(--s-orange);
}

.eyebrow.light {
  color: #aac5c8;
}

.alt {
  background: var(--s-warm);
}

.lead-copy,
.section-heading > p:last-child,
.value-row p,
.feature-card p,
.solution-card p,
.support-lead {
  color: var(--s-muted);
}

.lead-copy strong {
  color: var(--s-teal);
}

.value-row,
.value-row article + article {
  border-color: var(--s-line);
}

.value-row article h3,
.value-row article:nth-child(2) h3 {
  color: var(--s-ink);
}

/* Business cards: neutral surfaces with controlled accents */
.feature-card,
.feature-card.featured,
.feature-card:nth-child(2),
.feature-card:nth-child(3) {
  border-color: var(--s-line);
  border-top-color: var(--s-teal-light);
  background: #fff;
  box-shadow: 0 14px 34px rgba(23, 28, 44, 0.055);
}

.feature-card:nth-child(2) {
  border-top-color: var(--s-plum-light);
}

.feature-card:nth-child(3) {
  border-top-color: #7d9d98;
}

.feature-card.dark {
  border-color: #393648;
  border-top-color: var(--s-orange);
  background: #252333;
  box-shadow: 0 16px 35px rgba(23, 28, 44, 0.12);
}

.feature-card:hover {
  box-shadow: 0 18px 42px rgba(23, 28, 44, 0.08);
}

.feature-card > span,
.value-row article > span,
.feature-card:nth-child(3) > span,
.feature-card.dark > span,
.value-row article:nth-child(2) > span {
  min-width: 0;
  height: auto;
  padding: 0;
  color: var(--s-teal);
  border-radius: 0;
  background: transparent;
  font-size: 20px;
  box-shadow: none;
}

.feature-card:nth-child(2) > span,
.value-row article:nth-child(3) > span {
  color: var(--s-plum-light);
}

.feature-card.dark > span {
  color: #d99a61;
}

.feature-card.featured li:nth-child(odd),
.feature-card.featured li:nth-child(even) {
  color: #5a5960;
  border: 1px solid #e4e2df;
  border-left-width: 1px;
  background: #f8f7f5;
}

/* Solutions: calm editorial list */
.solution-list {
  border-top-color: var(--s-ink);
}

.solution-card {
  border-color: var(--s-line);
}

.solution-card:hover {
  border-color: var(--s-line);
  background: #fafafa;
}

.solution-no,
.solution-card:nth-child(even) .solution-no {
  color: var(--s-teal);
  border: 1px solid rgba(71, 127, 136, 0.34);
  background: transparent;
  box-shadow: none;
}

.solution-card:nth-child(even) .solution-no {
  color: var(--s-plum-light);
  border-color: rgba(117, 100, 126, 0.33);
}

.solution-tag,
.solution-card:nth-child(even) .solution-tag,
.solution-card .department,
.solution-card:nth-child(even) .department {
  color: var(--s-teal);
}

.solution-points span:nth-child(odd),
.solution-points span:nth-child(even) {
  color: #57565d;
  border: 0;
  border-left: 2px solid #9db7ba;
  background: var(--s-cool);
}

.solution-points span:nth-child(even) {
  border-left-color: #a99dae;
}

.custom-solution {
  background: var(--s-navy);
  box-shadow: none;
}

.custom-solution::after {
  border-color: rgba(123, 167, 173, 0.09);
}

/* Client section */
.client-grid {
  border: 1px solid var(--s-line);
  border-top: 3px solid var(--s-plum-light);
  border-bottom: 3px solid var(--s-teal-light);
  background: #fff;
}

.client-grid figure {
  border-color: var(--s-line);
}

.client-grid figcaption {
  color: #55545b;
}

.client-grid figcaption::before {
  background: var(--s-orange);
}

/* Dark technology section */
.future {
  background: var(--s-navy);
}

.future-steps > div {
  border-color: rgba(255, 255, 255, 0.1);
}

.future-steps span,
.future-steps > div:nth-child(even) span {
  color: #8eb4b9;
}

.ai-panel {
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: #282d3e;
}

.ai-panel > p,
.ai-panel li:nth-child(even) span {
  color: #8eb4b9;
}

.ai-panel li {
  border-color: rgba(255, 255, 255, 0.09);
}

/* Support */
.support-items span:nth-child(3n + 2),
.support-items span:nth-child(3n + 3) {
  color: var(--s-ink);
}

.contact-card {
  border: 0;
  background: var(--s-plum);
}

.contact-card .button.white {
  color: var(--s-plum);
  background: #fff;
}

.to-top {
  color: #fff;
  background: var(--s-teal);
}

.site-footer {
  border-top: 3px solid var(--s-teal);
  background: #151822;
}

@media (max-width: 600px) {
  .main-nav {
    border-bottom-color: var(--s-teal);
  }
}
