/* v0.1.0 — Astro palette preview matched to generated-world hero video.
   Scope: visual palette only. Keeps the editorial light/dark alternation. */
:root {
  --bg: #e8eaeb;
  --bg-soft: #dfe3e4;
  --panel: #e3e6e7;
  --panel-2: #d8dddf;
  --text: #151a1d;
  --text-dim: #4c575d;
  --text-faint: #6e7a81;
  --line: #b8c1c6;
  --line-strong: #828f96;
  --accent: #7faec1;
  --accent-soft: #d4e1e6;
  --accent-2: #c7d5db;
  --astro-dark: #050909;
  --astro-dark-soft: #0b1217;
  --astro-dark-panel: #111a20;
  --astro-dark-line: #26343c;
  --astro-dark-text: #eef4f5;
  --astro-dark-dim: #b7c5ca;
  --astro-wire: #dcebed;
  --astro-wire-muted: #91b9c8;
}

body {
  background: var(--bg);
  color: var(--text);
}

::selection {
  background: #b9d3dc;
  color: #050909;
}

.nav {
  background: rgba(5, 9, 9, .72);
  border-color: rgba(220, 235, 237, .18);
  box-shadow: 0 24px 70px rgba(0, 0, 0, .24);
}

.nav__links a:hover,
.hero .hero__kicker,
.hero__meta,
.hero__meta-item {
  color: var(--astro-wire);
}

.nav__status {
  background: #edf2f3;
  color: #101719;
}

.nav__status .dot {
  background: #86b7c8;
}

.hero {
  background: var(--astro-dark);
}

.hero__sub,
.hero__sub em {
  color: #eef4f5;
}

.hero .btn--primary {
  background: #f0f5f6;
  border-color: #f0f5f6;
  color: #070d0f;
}

.hero .btn--primary:hover {
  background: #cfe1e7;
  border-color: #cfe1e7;
  color: #050909;
}

.hero .btn--ghost {
  color: #f3f8f8;
  border-color: rgba(220, 235, 237, .58);
}

.section,
#journey {
  background: var(--bg);
  border-bottom-color: var(--line);
}

.section--agile,
#agile,
.section--contact,
.footer {
  background: var(--bg-soft);
}

#xnode {
  background: #eef0ef;
}

#contact {
  background: #d9dee1;
}

.section__title span,
.section__lede,
.kicker,
.card__num,
.cap__tag,
.cap__body,
.xnode-caption,
.xnode-feature p,
.xnode-feature__tag,
.stage__body,
.stage__era,
.stage__years {
  color: var(--text-dim);
}

.section__head > .kicker,
.services,
.card,
.card:nth-of-type(3n+2),
.card:nth-of-type(3n+3),
.cap,
.xnode-method,
.xnode-tab,
.xnode-feature,
.stage,
.footer {
  border-color: var(--line) !important;
}

.card:hover,
.xnode-tab[aria-selected="true"] {
  background: #dce3e6 !important;
  color: #101719 !important;
}

.btn--primary,
#archive .btn {
  background: #102029;
  border-color: #102029;
  color: #f3f8f8;
}

.btn--primary:hover,
#archive .btn:hover {
  background: #203743;
  border-color: #203743;
  color: #fff;
}

.btn--ghost {
  border-color: #53646d;
  color: #11191d;
}

/* Dark editorial blocks — closer to the hero video's near-black blue. */
.contrast,
#archive {
  background:
    radial-gradient(circle at 75% 10%, rgba(127, 174, 193, .11), transparent 34%),
    linear-gradient(180deg, var(--astro-dark-soft), var(--astro-dark));
  color: var(--astro-dark-text);
  --line: var(--astro-dark-line);
  --text-dim: var(--astro-dark-dim);
  --accent: var(--astro-wire-muted);
}

.contrast__title span,
.section#archive .section__title span,
.section#archive .section__lede {
  color: #c7d8de;
}

.contrast__col,
.contrast__col li,
.tools li,
.partner-card-controls,
.portfolio-controls {
  border-color: var(--astro-dark-line) !important;
}

.contrast__label,
.contrast__col li,
.contrast__note,
.tools li,
.portfolio-caption,
.partner-card-controls,
.portfolio-controls {
  color: var(--astro-dark-dim);
}

.contrast__col--agent li::before,
.contrast__col--agent li:last-child {
  color: var(--astro-wire);
}

/* Agile board / generated-system diagram: remove sage, keep the circuit-board read. */
.agile__copy p,
.agile__principle strong,
.xnode-method__step,
.xnode-method__detail,
.xnode-tab,
.xnode-feature h3,
.xnode-closing,
.contact__primary,
.contact__socials a,
.footer,
.footer__item {
  color: var(--text) !important;
}

.agile__lead {
  color: #11191d !important;
}

.agile__principle {
  border-color: #9aa7ad;
}

.agile-board,
[data-cycle-board] {
  filter: grayscale(.4) saturate(.65) hue-rotate(150deg);
  background: #dce3e6 !important;
  border-color: #9ba9b0 !important;
  color: #172126 !important;
}

.agile-core,
.agile-node,
[data-cycle-board] .cycle-card {
  background: #eef3f4 !important;
  color: #172126 !important;
  border-color: #7d909a !important;
}

.agile-trace,
.agile-mobile-trace,
[data-cycle-board] .cycle-line {
  stroke: #647982 !important;
}

.agile-board__decor,
.agile-board__vias,
[data-cycle-board] .cycle-junction {
  fill: #72868f !important;
}

[data-cycle-board] .cycle-card.is-active {
  background: #d5e5eb !important;
  border-color: #5f96aa !important;
  box-shadow: 0 0 0 2px rgba(95, 150, 170, .18) !important;
}

[data-cycle-board] .cycle-pulse,
[data-cycle-board] .cycle-connection.is-active .cycle-pulse {
  stroke: #5f96aa !important;
}

/* Marquee and portfolio controls: cold graphite instead of olive. */
.marquee {
  background: #dde3e5;
  border-block-color: #a8b5bc;
  color: #11191d;
}

.marquee .marquee__group span,
.marquee__pause {
  color: #11191d;
}

.marquee .marquee__group i {
  color: #6d8994;
}

.marquee.marquee--ink .marquee__group span,
.marquee.marquee--ink .marquee__group i {
  color: transparent !important;
}

.marquee__pause {
  background: #dde3e5;
  border-color: #8fa0a8;
}

.marquee__pause:hover {
  background: #cfd9dd;
}

#archive [data-portfolio="partner-cards"] {
  scrollbar-color: #7895a0 #050909;
}

#archive [data-portfolio="partner-cards"] .tilt-tile {
  background: #dfe6e8;
  color: #11191d;
}

#archive [data-portfolio="partner-cards"] .tilt-tile__card,
.xnode-media-frame {
  background: #091015;
}

.partner-card-caption span {
  color: #596870;
}

#archive [data-portfolio="partner-cards"] .tilt-tile:hover .partner-card-caption {
  background: #eef3f4;
}

.partner-card-controls button,
.portfolio-controls button {
  border-color: #6f8791;
  color: #eef4f5;
}

.partner-card-controls button:hover:not(:disabled),
.portfolio-controls button:hover:not(:disabled) {
  background: #dcebed;
  color: #071012;
}

@media (max-width: 600px) {
  .nav {
    background: rgba(5, 9, 9, .82);
  }
}
