/* One color system, three complete directions. Cobalt is the public default. */
:root {
  --page: #f3f6ff;
  --surface: #ffffff;
  --surface-soft: #eaf0ff;
  --ink-color: #182b50;
  --copy: #4a5e7c;
  --muted: #5e708e;
  --edge-color: #ccd8f0;
  --accent: #2e58e8;
  --accent-hover: #2347c6;
  --accent-ink: #ffffff;
  --accent-soft: #dfe9ff;
  --highlight: #c7f461;
  --highlight-ink: #243f26;
  --success-color: #187559;
  --stage-top: #ffffff;
  --stage-bottom: #dbe6ff;
  --neon: #426ef2;
  --cable: #2554f4;
  --cable-dim: #879cc6;
  --studio-line: var(--edge-color);
  --studio-white: var(--ink-color);
}
:root[data-palette="electric"] {
  --page: #183577;
  --surface: #21458c;
  --surface-soft: #294f9d;
  --ink-color: #f5f9ff;
  --copy: #d6e3ff;
  --muted: #bed1f6;
  --edge-color: #5979b5;
  --accent: #8af2ef;
  --accent-hover: #b0fffa;
  --accent-ink: #103751;
  --accent-soft: #285799;
  --highlight: #d4f76f;
  --highlight-ink: #1e3e29;
  --success-color: #a1f3ca;
  --stage-top: #497dcc;
  --stage-bottom: #23478f;
  --neon: #85ecef;
  --cable: #56e7ec;
  --cable-dim: #72a6cf;
}
:root[data-palette="menta"] {
  --page: #edf8f3;
  --surface: #fcfffd;
  --surface-soft: #e0f2ea;
  --ink-color: #173e3b;
  --copy: #426861;
  --muted: #4e7168;
  --edge-color: #bcd9cd;
  --accent: #007d70;
  --accent-hover: #00665e;
  --accent-ink: #ffffff;
  --accent-soft: #d0eee1;
  --highlight: #d3f176;
  --highlight-ink: #2a452b;
  --success-color: #1b7350;
  --stage-top: #fbfff7;
  --stage-bottom: #ccebdc;
  --neon: #0b9b86;
  --cable: #009780;
  --cable-dim: #8fbeb0;
}

.presentation-page, .wizard-page {
  background: var(--page);
  color: var(--ink-color);
}
.presentation-mast, .presentation-footer {
  background: var(--page);
  border-color: var(--edge-color);
}
.presentation-page .brand svg, .wizard-page .brand svg { color: var(--accent); }
.presentation-mast nav > a { color: var(--muted); }
.presentation-mast nav > a[aria-current="location"] { color: var(--ink-color); }
.presentation-mast nav > a[aria-current="location"]:after { background: var(--accent); }
.presentation-page .eyebrow { color: var(--accent); }
.eyebrow i { background: var(--accent); box-shadow: 0 0 10px color-mix(in srgb, var(--accent) 35%, transparent); }
.presentation-page .intro-copy h1 em, .presentation-page .intro-copy h2 em { color: var(--accent); }
.presentation-page .intro-copy > p { color: var(--copy); }
.presentation-page .intro-copy .eligibility-note { color: var(--muted); font-size: 10px; max-width: 45ch; }
.intro-footnote, #solutii, #metoda, #intrebari { border-color: var(--edge-color); }
.presentation-footer, .scroll-invitation { color: var(--muted); }
.scroll-invitation > .scroll-label:last-child, .method-funding-link { color: var(--accent); text-decoration-color: var(--edge-color); }

.presentation-page .primary-action, .wizard-page .form-next {
  background: var(--accent);
  border-color: var(--accent);
  color: var(--accent-ink);
  box-shadow: 0 5px 18px color-mix(in srgb, var(--accent) 18%, transparent), inset 0 1px 0 #ffffff22;
}
.header-verify { color: var(--accent); border-color: var(--edge-color); background: var(--surface); }
@media (hover: hover) and (pointer: fine) {
  .presentation-page .primary-action:hover, .wizard-page .form-next:hover:not(:disabled) {
    background: var(--accent-hover); border-color: var(--accent-hover); color: var(--accent-ink);
    box-shadow: 0 0 24px color-mix(in srgb, var(--accent) 30%, transparent);
  }
  .header-verify:hover { color: var(--accent); border-color: var(--accent); background: var(--accent-soft); }
}
.presentation-page .primary-action:focus-visible, .header-verify:focus-visible,
.service-step summary:focus-visible, .faq-list summary:focus-visible { outline-color: var(--accent); }

.studio, .sector-story, .method-board {
  background: var(--surface);
  border-color: var(--edge-color);
  box-shadow: 0 18px 45px -30px color-mix(in srgb, var(--ink-color) 30%, transparent);
}
.scene-window { background: radial-gradient(ellipse at 50% 35%, var(--stage-top), var(--stage-bottom)); }
.scene-window:after { background: none; }
.scene-fallback { background: var(--stage-bottom); }
.scene-fallback p, .scene-label, .scene-orbit-hint { color: var(--muted); }
.studio-top { color: var(--muted); border-color: var(--edge-color); }
.studio-top > span:first-child { color: var(--ink-color); }
.studio-top i { background: var(--accent); }
.live-document { background: var(--surface-soft); border-color: var(--edge-color); }
.document-kicker { color: var(--accent); }
.live-document p { color: var(--copy); }
.live-document b { color: var(--ink-color); }
.live-document .document-confirm { color: var(--success-color); }
.scene-steps button, .scene-steps button span { color: var(--muted); }
.scene-steps button[aria-pressed="true"], .scene-steps button[aria-pressed="true"] span { color: var(--accent); }
.scene-steps button:hover { color: var(--ink-color); }
#scene-play { color: var(--accent); border-color: var(--edge-color); }
.scene-timeline { background: var(--accent-soft); }
.scene-timeline i { background: var(--accent); }

.sector-tabs button { color: var(--copy); border-color: var(--edge-color); background: var(--surface); }
.sector-tabs button[aria-selected="true"] { background: var(--accent); border-color: var(--accent); color: var(--accent-ink); }
.story-heading, .story-heading > span:last-child { color: var(--muted); }
.story-flow article { background: var(--surface-soft); border-color: var(--edge-color); }
.story-flow article > span { color: var(--accent); }
.story-flow p, .story-approval p, .method-board p { color: var(--copy); }
.story-connector { color: var(--accent); }
.story-connector b { border-color: var(--edge-color); background: var(--surface); }
.story-connector i { background: var(--accent); }
.story-approval { border-color: var(--edge-color); }
.story-approval i { border-color: var(--edge-color); color: var(--success-color); }
.story-note { color: var(--muted); }
.offer-scope, .offer-scope > div, .service-board-head, .service-step, .faq-list, .faq-list details { border-color: var(--edge-color); }
.offer-scope dt, .service-title, .service-step[open] .service-title, .method-principle strong, .faq-list summary { color: var(--ink-color); }
.offer-scope dd, .service-board .service-answer > p, .faq-answer p { color: var(--copy); }
.service-board-head, .service-board-head > span:last-child, .service-number { color: var(--muted); }
.service-step[open] .service-number, .service-deliverable > span, .faq-list details[open] summary,
.service-step summary:hover .service-title, .faq-list summary:hover { color: var(--accent); }
.service-step summary i, .faq-list summary i, .service-step[open] summary i { color: var(--accent); border-color: var(--edge-color); }
.service-deliverable { border-color: var(--accent); }
.service-board .service-deliverable p { color: var(--ink-color); }
.method-principle i { background: var(--success-color); }
.faq-list { background: var(--page); }

.powered-shell { box-shadow: 0 0 22px color-mix(in srgb, var(--neon) calc(var(--power) * 12%), transparent); }
.power-base { stroke: var(--edge-color); }
.power-line { stroke: var(--neon); filter: drop-shadow(0 0 3px var(--neon)); }
.power-port b:after { background: var(--neon); box-shadow: 0 0 5px var(--neon), 0 0 12px var(--neon); }
.logic-thread { opacity: .9; }

/* The grant is the visual anchor; the demonstration explains the investment. */
#actiune .funding-hero h1 { max-width: none; margin: 24px 0 17px; letter-spacing: -.055em; }
.funding-hero .eyebrow { font-size: 10px; letter-spacing: .07em; }
.grant-prefix { display: block; font: 500 20px/1.4 var(--font-display); letter-spacing: -.02em; color: var(--ink-color); }
.grant-amount { display: block; color: var(--accent); font-size: clamp(60px,6.6vw,106px); line-height: 1.09; white-space: nowrap; letter-spacing: -.07em; }
.grant-amount > span { font-size: .64em; letter-spacing: -.04em; }
.grant-purpose { display: block; margin-top: 11px; font-size: clamp(30px,3.15vw,47px); line-height: 1.1; letter-spacing: -.045em; }
#actiune .funding-hero h1 .grant-purpose br { display: block; }
.funding-hero > p { max-width: 44ch; font-size: 14px; }
.funding-hero > .funding-lead { color: var(--ink-color); font-size: 17px; font-weight: 600; margin-bottom: 13px; }
.funding-window { margin-top: 25px; padding-top: 20px; border-top: 1px solid var(--edge-color); }
.funding-window-label { display: inline-block; padding: 5px 9px; background: var(--highlight); color: var(--highlight-ink); border-radius: 4px; font-size: 8px; font-weight: 700; letter-spacing: .06em; }
.funding-window p { margin-top: 10px; font-size: 11px; color: var(--copy); }
.funding-window strong { color: var(--ink-color); font-weight: 600; }
.funding-window a { display: inline-block; color: var(--muted); font-size: 10px; margin-top: 6px; text-decoration: underline; text-underline-offset: 4px; }
.wizard-mast { border-color: var(--edge-color); }
.wizard-heading span, .wizard-heading p, .wizard-exit { color: var(--muted); }
.wizard-exit:hover { color: var(--accent); }
/* Form inputs keep a light, high-contrast surface for all three directions. */
.wizard-page .evaluation-card { border: 1px solid var(--edge-color); box-shadow: 0 10px 35px #1830500d; }
.funding-page { background: var(--page); color: var(--ink-color); --line: var(--edge-color); }
.funding-page .mast, .funding-page .subhero, .funding-page .foot { background: var(--page); border-color: var(--edge-color); }
.funding-page .topline nav a, .funding-page .lede, .funding-page .footrow > span,
.funding-page .footer-line .microtag { color: var(--copy); }
.funding-page .brand svg, .funding-page .subhero h1 em, .funding-page .eyebrow { color: var(--accent); }
.funding-page .topline nav .navcta { color: var(--accent); background: var(--surface); border-color: var(--edge-color); }
.funding-page .paper { background: var(--surface); color: var(--ink-color); }
.funding-page .fund-copy p, .funding-page .source p, .funding-page .fund-data span,
.funding-page .fund-data small { color: var(--copy); }
.funding-page .source { background: var(--surface-soft); border-color: var(--accent); }
.funding-page .footer-line { border-color: var(--edge-color); }
.funding-page .btn.ink { background: var(--accent); color: var(--accent-ink); border-color: var(--accent); }
.wizard-page .form-next { --accent: #2e58e8; --accent-hover: #2347c6; --accent-ink: #fff; }
[data-palette="menta"] .wizard-page .form-next { --accent: #007d70; --accent-hover: #00665e; }

.palette-picker { position: relative; z-index: 6; margin: 20px clamp(20px,4.1vw,80px) 0; padding: 15px 18px; border: 1px solid var(--edge-color); border-radius: 12px; background: var(--surface); display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.palette-picker strong { display: block; font-size: 12px; }
.palette-picker > div > span { display: block; font-size: 10px; color: var(--muted); margin-top: 4px; }
.palette-picker nav { display: flex; flex-wrap: wrap; gap: 8px; }
.palette-picker a { display: flex; align-items: center; gap: 8px; padding: 12px; border: 1px solid var(--edge-color); border-radius: 7px; font-size: 11px; min-height: 44px; }
.palette-picker a[aria-current] { border-color: var(--accent); background: var(--accent-soft); }
.palette-picker i { width: 16px; height: 16px; border-radius: 50%; background: linear-gradient(90deg,#2e58e8 50%,#e8eefc 50%); }
.palette-picker [data-palette-choice="electric"] i { background: linear-gradient(90deg,#21458c 50%,#8af2ef 50%); }
.palette-picker [data-palette-choice="menta"] i { background: linear-gradient(90deg,#007d70 50%,#d3f176 50%); }
@media (min-width:701px) and (max-width:999px) {
  .grant-amount { font-size: clamp(52px,6.7vw,68px); }
  .grant-purpose { font-size: 30px; }
  .funding-hero > .funding-lead { font-size: 14px; }
  .funding-hero > p { font-size: 12px; }
  .funding-hero .primary-action { padding-inline: 15px; font-size: 11px; }
}
@media (max-width:700px) {
  .intro-copy { background: var(--page); }
  .logic-thread { opacity: .45; }
  #actiune .funding-hero h1 { margin: 18px 0 15px; }
  .grant-prefix { font-size: 16px; }
  .grant-amount { font-size: clamp(57px,16.4vw,90px); }
  .grant-purpose { font-size: clamp(29px,8vw,39px); margin-top: 9px; }
  .funding-hero > .funding-lead { font-size: 14px; }
  .funding-hero > p { font-size: 12px; line-height: 1.75; }
  .funding-hero .primary-action { width: 100%; }
  .funding-window { margin-top: 20px; padding-top: 17px; }
  .funding-window p { font-size: 10px; }
  .palette-picker { display: block; padding: 14px; }
  .palette-picker nav { margin-top: 12px; gap: 6px; }
  .palette-picker a { flex: 1 1 100%; padding: 10px; }
}
