/* NODERVA V14 — fully matte black / oxblood system and contrast-driven CTAs. */
:root {
  --matte-black: #060505;
  --matte-black-2: #0e0b0c;
  --matte-black-3: #171113;
  --matte-red: #771e28;
  --matte-red-dark: #56161e;
  --matte-red-deep: #2f0d12;
  --matte-red-soft: #c1646d;
  --matte-red-pale: #dba4a9;
  --matte-white: #e9e1e2;
  --red: var(--matte-red);
  --red-dark: var(--matte-red-dark);
  --red-deep: var(--matte-red-deep);
  --red-soft: #eee1e2;
  --ink: var(--matte-black);
  --v3-black: var(--matte-black);
  --v3-ink: var(--matte-black-2);
  --v3-red: var(--matte-red);
  --v3-red-dark: var(--matte-red-dark);
  --core-red: var(--matte-red);
  --core-red-bright: var(--matte-red-soft);
  --web-red: var(--matte-red);
  --web-red-hot: var(--matte-red-soft);
  --prey-red: var(--matte-red);
  --prey-hot: var(--matte-red-soft);
  --shadow: 0 18px 48px rgba(0,0,0,.26);
}

:root[data-theme="dark"] {
  --theme-bg: var(--matte-black);
  --theme-surface: var(--matte-black-2);
  --theme-surface-2: var(--matte-black-3);
  --theme-text: var(--matte-white);
  --theme-muted: #a99c9e;
  --theme-line: rgba(219,164,169,.15);
  --theme-header: rgba(6,5,5,.97);
}

:root[data-theme="light"] {
  --theme-bg: #e8e0e1;
  --theme-surface: #eee1e2;
  --theme-surface-2: #ddd2d4;
  --theme-text: #171113;
  --theme-muted: #66595c;
  --theme-line: rgba(86,22,30,.2);
  --theme-header: rgba(232,224,225,.97);
}

.section-red,.network-section,.v3-closing,.quote-band,.impact-section,.cta-panel,.contact-signal-strip,.engine-stream,.stats-band .stat-cell:nth-child(2),html[data-theme] .section.section-red,html[data-theme] .network-section,html[data-theme] .v3-closing,html[data-theme] .quote-band,html[data-theme] .impact-section,html[data-theme] .cta-panel {
  background:var(--matte-red-dark);background-image:none;box-shadow:none;
}

html[data-theme="dark"],html[data-theme="dark"] body,html[data-theme="dark"] .section,html[data-theme="dark"] .manifesto-section,html[data-theme="dark"] .capability-section,html[data-theme="dark"] .method-section,html[data-theme="dark"] .v3-ecosystem,html[data-theme="dark"] .ecosystem-shell { background:var(--matte-black); }

html[data-theme="dark"] .section-soft,html[data-theme="dark"] .service-card,html[data-theme="dark"] .project-card,html[data-theme="dark"] .team-card,html[data-theme="dark"] .contact-card,html[data-theme="dark"] .faq-item,html[data-theme="dark"] .contact-form,html[data-theme="dark"] .field input,html[data-theme="dark"] .field select,html[data-theme="dark"] .field textarea,html[data-theme="dark"] .project-filters button,html[data-theme="dark"] .tech-item,html[data-theme="dark"] .module-grid article,html[data-theme="dark"] .culture-list article,html[data-theme="dark"] .roadmap article,html[data-theme="dark"] .model-grid article,html[data-theme="dark"] .founder-mini,html[data-theme="dark"] .project-shot { background:var(--matte-black-2); }

html[data-theme="light"],html[data-theme="light"] body,html[data-theme="light"] .section,html[data-theme="light"] .manifesto-section,html[data-theme="light"] .capability-section,html[data-theme="light"] .method-section,html[data-theme="light"] .v3-ecosystem,html[data-theme="light"] .ecosystem-shell { background:var(--theme-bg); }

html[data-theme="light"] .section-soft,html[data-theme="light"] .service-card,html[data-theme="light"] .project-card,html[data-theme="light"] .team-card,html[data-theme="light"] .contact-card,html[data-theme="light"] .faq-item,html[data-theme="light"] .contact-form,html[data-theme="light"] .field input,html[data-theme="light"] .field select,html[data-theme="light"] .field textarea,html[data-theme="light"] .tech-item { background:var(--theme-surface); }

.service-card,.project-card,.team-card,.contact-card,.method-visual,.contact-form { box-shadow:none!important; }
.method-visual img,.project-media img { filter:saturate(.68) contrast(.94) brightness(.88); }
.method-line article:hover .method-visual img,.project-card:hover .project-media img { filter:saturate(.78) contrast(.97) brightness(.91); }
.engine-aura,.global-glow { opacity:.26;filter:none; }
.prey-orb,.prey-orb.is-active,.prey-orb:hover,.web-heart,.strand-tag,.spider-status,.spider-caption { box-shadow:none!important;text-shadow:none!important;filter:none; }
.prey-orb { background:var(--matte-black-2);border-color:rgba(193,100,109,.38); }
.prey-orb.is-active,.prey-orb:hover { background:var(--matte-red-deep);border-color:var(--matte-red-soft); }
.orb-components i { background:var(--matte-black);border-color:rgba(193,100,109,.32);box-shadow:none; }
.prey-inspector { background:rgba(6,5,5,.96);border-color:rgba(193,100,109,.38);box-shadow:none; }

.button,.v3-button,.manifesto-cta,.card-link,.text-link,.theme-toggle,.project-filters button { box-shadow:none!important;text-shadow:none!important;transition:transform .25s ease,background-color .25s ease,color .25s ease,border-color .25s ease; }

.button:not(.button-light):not(.button-outline),.v3-button.primary,.button.nav-cta,.menu-button { color:var(--matte-red-pale);background:var(--matte-red);background-image:none;border-color:var(--matte-red-soft); }
.button:not(.button-light):not(.button-outline):hover,.v3-button.primary:hover,.button.nav-cta:hover,.menu-button:hover { color:var(--matte-white);background:var(--matte-red-dark);border-color:var(--matte-red-pale); }

.button-outline,.v3-button.ghost,.theme-toggle,.project-filters button,.card-link,.text-link,.text-link.light { color:var(--matte-red-soft);background:var(--matte-black-2);border:1px solid var(--matte-red); }
.button-outline:hover,.v3-button.ghost:hover,.theme-toggle:hover,.theme-toggle:focus-visible,.project-filters button:hover,.project-filters button.active,.card-link:hover,.text-link:hover { color:var(--matte-red-pale);background:var(--matte-red-dark);border-color:var(--matte-red-soft); }
.card-link,.text-link { width:max-content;max-width:100%;min-height:42px;padding:0 14px; }

.button-light,.v3-button.light { color:var(--matte-red-deep);background:var(--matte-red-pale);border-color:var(--matte-red-pale); }
.button-light:hover,.v3-button.light:hover { color:var(--matte-red-pale);background:var(--matte-black-2);border-color:var(--matte-red-soft); }

.manifesto-cta,html[data-theme="dark"] .manifesto-cta,html[data-theme="light"] .manifesto-cta { min-height:64px;padding:6px 6px 6px 20px;color:var(--matte-red-pale);background:var(--matte-black-2);border:1px solid var(--matte-red); }
.manifesto-cta b { width:50px;height:50px;display:grid;place-items:center;color:var(--matte-red-pale);background:var(--matte-red); }
.manifesto-cta:hover { color:var(--matte-white);background:var(--matte-red-dark);border-color:var(--matte-red-soft);box-shadow:none; }
.manifesto-cta:hover b { color:var(--matte-red-soft);background:var(--matte-black); }

.service-icon { color:var(--matte-red-pale);background:var(--matte-red-dark);border-color:var(--matte-red); }
.service-card:hover .service-icon { color:var(--matte-red-deep);background:var(--matte-red-pale);border-color:var(--matte-red-pale); }
.service-outputs span,html[data-theme="dark"] .service-outputs span,html[data-theme="dark"] .services-grid .service-card:nth-child(6) .service-outputs span { color:var(--matte-red-pale);background:var(--matte-red-deep);border:1px solid rgba(193,100,109,.24); }

.eyebrow.red,.v3-kicker,.v3-section-head>span,.v3-section-head>a,.service-number,.method-line span,.capability-list span { color:var(--matte-red-soft); }

.mobile-panel,html[data-theme] .mobile-panel { background:var(--matte-red-dark);background-image:none; }
.mobile-panel>a:hover,.mobile-panel>a.active { background:var(--matte-red-deep); }

html[data-theme="light"] .manifesto-cta,html[data-theme="light"] .button-outline,html[data-theme="light"] .v3-button.ghost,html[data-theme="light"] .theme-toggle,html[data-theme="light"] .project-filters button,html[data-theme="light"] .card-link,html[data-theme="light"] .text-link { color:var(--matte-red-soft);background:#211719;border-color:var(--matte-red); }
html[data-theme="light"] .v3-button.ghost:hover,html[data-theme="light"] .button-outline:hover,html[data-theme="light"] .theme-toggle:hover,html[data-theme="light"] .project-filters button:hover,html[data-theme="light"] .project-filters button.active,html[data-theme="light"] .card-link:hover,html[data-theme="light"] .text-link:hover { color:var(--matte-red-pale);background:var(--matte-red-dark);border-color:var(--matte-red-soft); }

@media(max-width:760px) {
  .manifesto-cta { min-height:60px;padding-left:15px; }
  .manifesto-cta b { width:46px;height:46px; }
  .card-link,.text-link { min-height:40px;padding-inline:12px; }
}
