/* AI Mentor color palette — layout-neutral overrides. */
:root {
  --color-bg: #f6f3ec;
  --color-surface: #fcfbf8;
  --color-text-primary: #0a1628;
  --color-text-strong: #12233f;
  --color-text-secondary: #5d697c;
  --color-accent: #168c83;
  --color-accent-hover: #0d665f;
  --color-soft: #dce7ec;
  --color-warm-accent: #c98b3c;
  --color-border: #cbd8dd;
  --color-accent-soft: #e4f1ef;

  --bg: var(--color-bg);
  --bg-soft: var(--color-surface);
  --ink: var(--color-text-primary);
  --ink-soft: var(--color-text-secondary);
  --ink-faint: #626f80;
  --button-bg: #0d665f;
  --button-hover: #09544e;
  --on-accent: #ffffff;
  --accent: var(--color-accent);
  --accent-dark: var(--color-accent-hover);
  --accent-light: #5ab7ae;
  --accent-soft: var(--color-accent-soft);
  --accent-border: #b9d6d3;
  --border: var(--color-border);
  --surface-gradient: linear-gradient(135deg, #e4f1ef 0%, #fcfbf8 52%, #dce7ec 100%);
  --surface-gradient-hover: linear-gradient(135deg, #daedea 0%, #fcfbf8 50%, #d3e2e8 100%);
  --shadow-md: 0 14px 36px rgba(10, 22, 40, 0.1);
}

body { background: var(--color-bg); }
::selection { background: var(--color-accent-soft); color: var(--color-accent-hover); }

.site-header { background: rgba(246, 243, 236, 0.92); }
.site-header.scrolled { box-shadow: 0 1px 0 var(--color-border), 0 10px 26px rgba(10, 22, 40, 0.07); }
.mobile-nav { background: var(--color-surface); }
.header-cta { background: var(--color-text-strong); color: #fff; box-shadow: 0 6px 18px rgba(18, 35, 63, 0.2); }
.header-cta:hover { background: var(--color-text-primary); box-shadow: 0 12px 26px rgba(10, 22, 40, 0.24); }

.btn-primary { background: var(--button-bg); color: var(--on-accent); box-shadow: 0 6px 18px rgba(22, 140, 131, 0.24); }
.btn-primary:hover { background: var(--button-hover); color: var(--on-accent); box-shadow: 0 12px 26px rgba(13, 102, 95, 0.28); }
.mobile-nav .btn-primary { color: var(--on-accent); }
.badge,
.trainer-outcome,
.flagship-result,
.programs-outcome,
.ch-result,
.g-stats,
.price-example { border-color: var(--accent-border); }

.hero::before { background-image: radial-gradient(circle, rgba(74, 131, 145, 0.28) 1px, transparent 1.5px); }
.hero::after { background: radial-gradient(620px 420px at 86% 6%, rgba(22, 140, 131, 0.08), transparent 70%); }
.hero-visual::before { background: var(--color-accent-soft); }
.editor,
.proof-card,
.method-step,
.trainer-format,
.card-hero,
.program-full,
.flagship,
.day-col--pm,
.dr-node,
.route-node,
.format-card,
.next-card,
.card-for,
.program-note,
.case-card,
.price-card,
.book { background-color: var(--color-surface); }
.editor-bar { background: rgba(220, 231, 236, 0.28); }
.ed-flow-track { background: var(--color-soft); }

.program-row--featured,
.program-full--featured,
.price-card--featured { border-color: var(--color-accent); box-shadow: 0 14px 38px rgba(22, 140, 131, 0.12); }
.program-row--featured:hover,
.program-full--featured:hover { box-shadow: 0 20px 48px rgba(22, 140, 131, 0.16); }
.program-acc--flagship { border-color: rgba(22, 140, 131, 0.48); }
.program-acc:hover,
.program-acc[open] { border-color: var(--accent-border); }

.audience-panel--fit { background: linear-gradient(145deg, rgba(22, 140, 131, 0.08), rgba(252, 251, 248, 0.94) 62%); }
.flagship,
.book { box-shadow: 0 18px 50px rgba(22, 140, 131, 0.12); }
.flagship::after,
.book::after { background: radial-gradient(circle, rgba(22, 140, 131, 0.1), transparent 70%); }

#programs::after { background: rgba(246, 243, 236, 0.4); }

@keyframes programFocus {
  0%, 100% { box-shadow: 0 12px 32px rgba(10, 22, 40, 0.08); }
  35% { box-shadow: 0 0 0 4px rgba(22, 140, 131, 0.16), 0 22px 55px rgba(22, 140, 131, 0.18); transform: translateY(-3px); }
}

html[data-theme="dark"] {
  --color-bg: #081522;
  --color-surface: #102233;
  --color-text-primary: #f4f1e9;
  --color-text-strong: #e7edf2;
  --color-text-secondary: #acb8c6;
  --color-accent: #4ab9af;
  --color-accent-hover: #78d1c9;
  --color-soft: #203747;
  --color-warm-accent: #d4a25f;
  --color-border: #294354;
  --color-accent-soft: #123a3b;

  --bg: var(--color-bg);
  --bg-soft: var(--color-surface);
  --ink: var(--color-text-primary);
  --ink-soft: var(--color-text-secondary);
  --ink-faint: #a4b2c0;
  --button-bg: #4ab9af;
  --button-hover: #78d1c9;
  --on-accent: #071a1d;
  --accent: var(--color-accent);
  --accent-dark: var(--color-accent-hover);
  --accent-light: #78d1c9;
  --accent-soft: var(--color-accent-soft);
  --accent-border: #2c6764;
  --border: var(--color-border);
  --surface-gradient: linear-gradient(135deg, #123a3b 0%, #102233 52%, #203747 100%);
  --surface-gradient-hover: linear-gradient(135deg, #174645 0%, #112738 50%, #254050 100%);
  --shadow-md: 0 14px 36px rgba(0, 0, 0, 0.28);
}

html[data-theme="dark"] .site-header { background: rgba(8, 21, 34, 0.92); }
html[data-theme="dark"] .mobile-nav { background: var(--color-surface); }
html[data-theme="dark"] .header-cta { background: var(--color-accent); color: #071a1d; }
html[data-theme="dark"] .editor,
html[data-theme="dark"] .proof-card,
html[data-theme="dark"] .method-step,
html[data-theme="dark"] .trainer-format,
html[data-theme="dark"] .card-hero,
html[data-theme="dark"] .program-full,
html[data-theme="dark"] .flagship,
html[data-theme="dark"] .day-col--pm,
html[data-theme="dark"] .dr-node,
html[data-theme="dark"] .route-node,
html[data-theme="dark"] .format-card,
html[data-theme="dark"] .next-card,
html[data-theme="dark"] .card-for,
html[data-theme="dark"] .program-note,
html[data-theme="dark"] .case-card,
html[data-theme="dark"] .price-card,
html[data-theme="dark"] .book,
html[data-theme="dark"] .program-acc,
html[data-theme="dark"] .trust-logos a,
html[data-theme="dark"] .visit-cities { background: var(--color-surface); border-color: var(--color-border); }
html[data-theme="dark"] .editor-bar,
html[data-theme="dark"] .sc-block--pain,
html[data-theme="dark"] .day-col,
html[data-theme="dark"] .book-step,
html[data-theme="dark"] .sched-date { background: var(--color-soft); border-color: var(--color-border); }
html[data-theme="dark"] .ed-flow-track { background: var(--color-soft); }
html[data-theme="dark"] .badge { background: var(--color-accent-soft); border-color: var(--accent-border); color: var(--color-accent); }
html[data-theme="dark"] .audience-panel--fit { background: linear-gradient(145deg, rgba(74, 185, 175, 0.14), rgba(16, 34, 51, 0.96) 62%); }
html[data-theme="dark"] .photo-frame { background: linear-gradient(150deg, #123a3b 0%, #102233 100%); }
html[data-theme="dark"] .trainer-outcome,
html[data-theme="dark"] .programs-outcome,
html[data-theme="dark"] .flagship-result,
html[data-theme="dark"] .ch-result,
html[data-theme="dark"] .g-ph,
html[data-theme="dark"] .g-stats,
html[data-theme="dark"] .price-example { border-color: var(--accent-border); }
html[data-theme="dark"] .btn-outline:hover { background: rgba(74, 185, 175, 0.14); }
html[data-theme="dark"] #programs::after { background: rgba(8, 21, 34, 0.42); }
html[data-theme="dark"] .footer,
html[data-theme="dark"] .price-included,
html[data-theme="dark"] .edtech-evidence { background: #06111d; }
.footer-links a:hover strong { color: var(--accent-light); }
