/* Medora brand v3 — marketing pages (2026-10-16). Source of truth: MedoraMarketing brand/v3/tokens.css.
   Loaded AFTER homepage.css and brand-polish.css on marketing pages only. Restyles; never changes layout
   structure, copy, links or scripts. App pages never include this file. Undo = remove the <link>. */

:root {
  --v3-ink: #0B1220; --v3-ink-2: #334155; --v3-muted: #5A6678; --v3-faint: #6B7688;
  --v3-line: #E7ECF2; --v3-line-strong: #D5DCE5;
  --v3-bg: #FFFFFF; --v3-bg-subtle: #F7F8FA;
  --v3-brand: #12A2E0; --v3-brand-text: #0A6E99; --v3-brand-soft: #ECF8FE;
  --v3-ok: #15803D; --v3-check: #B45309;
  --v3-sans: 'Geist', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif;
  --v3-mono: 'Geist Mono', ui-monospace, 'SF Mono', Menlo, monospace;
  --v3-ease: cubic-bezier(.2,.7,.2,1);
}

/* ---- Type ---- */
body.marketing-site { font-family: var(--v3-sans); color: var(--v3-ink); background: var(--v3-bg); }
body.marketing-site h1, body.marketing-site h2, body.marketing-site h3, body.marketing-site h4 { font-family: var(--v3-sans); }
body.marketing-site .hero-title { font-weight: 600; letter-spacing: -0.035em; line-height: 1.02; font-size: clamp(2.5rem, 4.8vw, 4rem); text-wrap: balance; }
body.marketing-site .hero-title .gradient-text { color: var(--v3-ink); background: none; -webkit-text-fill-color: currentColor; }
body.marketing-site .section-title, body.marketing-site .cta-title { font-weight: 600; letter-spacing: -0.028em; line-height: 1.08; font-size: clamp(1.8rem, 3vw, 2.6rem); text-wrap: balance; }
body.marketing-site .feature-title, body.marketing-site .solution-title, body.marketing-site .pillar-title,
body.marketing-site .credibility-title, body.marketing-site .security-title, body.marketing-site .step-title { font-weight: 600; letter-spacing: -0.018em; }
body.marketing-site .hero-subtitle { color: var(--v3-ink-2); font-size: 1.2rem; line-height: 1.5; }
body.marketing-site .section-subtitle, body.marketing-site .feature-description, body.marketing-site .solution-description,
body.marketing-site .pillar-description, body.marketing-site .cta-description { color: var(--v3-muted); }

/* Kickers: mono, quiet, no pill */
body.marketing-site .hero-badge, body.marketing-site .feature-label, body.marketing-site .spt-badge {
  font-family: var(--v3-mono); font-size: 12px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase;
  color: var(--v3-muted); background: none; border: 0; box-shadow: none; padding: 0; }
body.marketing-site .hero-badge span { background: none; border: 0; padding: 0; color: inherit; }
body.marketing-site .feature-label { color: var(--v3-brand-text); }

/* ---- Buttons: ink primary (AA), quiet secondary ---- */
body.marketing-site .btn { border-radius: 8px; font-family: var(--v3-sans); font-weight: 600; letter-spacing: -0.005em; }
body.marketing-site .btn.btn-primary, body.marketing-site .nav-links .btn-primary {
  background: var(--v3-ink); color: #fff; border: 1px solid var(--v3-ink); box-shadow: none; transition: background .16s var(--v3-ease), transform .16s var(--v3-ease); }
body.marketing-site .btn.btn-primary:hover, body.marketing-site .nav-links .btn-primary:hover { background: #1C2A3E; border-color: #1C2A3E; transform: translateY(-1px); box-shadow: none; }
body.marketing-site .btn.btn-secondary { background: #fff; color: var(--v3-ink); border: 1px solid var(--v3-line-strong); box-shadow: none; }
body.marketing-site .btn.btn-secondary:hover { border-color: var(--v3-ink); box-shadow: none; }
body.marketing-site .btn:focus-visible, body.marketing-site a:focus-visible, body.marketing-site summary:focus-visible { outline: 2px solid var(--v3-brand-text); outline-offset: 3px; }
body.marketing-site .cta-text-link, body.marketing-site main a:not(.btn), body.marketing-site section a:not(.btn) { color: var(--v3-brand-text); }

/* ---- Hero ---- */
body.marketing-site .hero { padding-top: 96px; }
/* Homepage film + founder kicker: ink control, quiet kicker */
body.marketing-site .mfilm-btn.mfilm-watch { background: var(--v3-ink); border-color: var(--v3-ink); color: #fff; box-shadow: none; }
body.marketing-site .mfilm-btn.mfilm-watch:hover { background: #1C2A3E; }
body.marketing-site .mx-kicker { font-family: var(--v3-mono); font-weight: 500; font-size: 12px; letter-spacing: .08em; color: var(--v3-brand-text); }
body.marketing-site .hero::before { background: none; }
body.marketing-site .hero-benefit { color: var(--v3-ink-2); }
body.marketing-site .hero-benefit-icon { color: var(--v3-brand-text); font-family: var(--v3-mono); }
body.marketing-site .hero-video video, body.marketing-site .hero-visual img, body.marketing-site .hero-video iframe { border-radius: 14px; }

/* ---- Sections: white and one subtle grey, separated by hairlines ---- */
body.marketing-site .credibility-section, body.marketing-site .solution-section, body.marketing-site .security-section,
body.marketing-site .validation-section, body.marketing-site .features-section { background: var(--v3-bg-subtle); border-top: 1px solid var(--v3-line); border-bottom: 1px solid var(--v3-line); }

/* ---- Cards: hairline, small radius, no lift, no decorative bars ---- */
body.marketing-site .pillar-card, body.marketing-site .solution-card, body.marketing-site .credibility-card,
body.marketing-site .security-card, body.marketing-site .testimonial-card, body.marketing-site .workflow-step,
body.marketing-site .challenge-stat, body.marketing-site .pricing-card, body.marketing-site .feature-visual,
body.marketing-site .spt-card, body.marketing-site .ap-card {
  border: 1px solid var(--v3-line); border-radius: 10px; background: #fff; box-shadow: none; transform: none; }
body.marketing-site .pillar-card:hover, body.marketing-site .solution-card:hover, body.marketing-site .credibility-card:hover,
body.marketing-site .security-card:hover, body.marketing-site .testimonial-card:hover, body.marketing-site .workflow-step:hover,
body.marketing-site .challenge-stat:hover, body.marketing-site .pricing-card:hover { transform: none; box-shadow: none; border-color: var(--v3-line-strong); }
body.marketing-site .credibility-card::before, body.marketing-site .solution-card::after, body.marketing-site .security-card::after,
body.marketing-site .testimonial-card::before, body.marketing-site .workflow-step::before, body.marketing-site .challenge-stat::before { display: none; }
/* Icons: muted ink, never decorative cyan tiles */
body.marketing-site .pillar-icon { background: none; color: var(--v3-muted); width: auto; height: auto; justify-content: flex-start; font-size: 18px; }
body.marketing-site .ap-card i, body.marketing-site .solution-card > i, body.marketing-site .credibility-card > i { color: var(--v3-muted); }
body.marketing-site .solution-features li::before, body.marketing-site .feature-bullets li::before,
body.marketing-site .pillar-benefits li::before, body.marketing-site .spt-card-list li::before { color: var(--v3-brand-text); }

/* Numbers and steps in mono */
body.marketing-site .step-number, body.marketing-site .spt-step-number { font-family: var(--v3-mono); color: var(--v3-brand-text); font-weight: 500; letter-spacing: .06em; }
body.marketing-site .stat-number, body.marketing-site .price, body.marketing-site .from-price { font-variant-numeric: tabular-nums; letter-spacing: -0.03em; }

/* FAQ */
body.marketing-site details { border-color: var(--v3-line); }
body.marketing-site details summary { color: var(--v3-ink); font-weight: 600; }

/* CTA band */
body.marketing-site .cta-section { border-top: 1px solid var(--v3-line); }
body.marketing-site .trust-signal { font-family: var(--v3-mono); font-size: 12px; letter-spacing: .06em; text-transform: uppercase; color: var(--v3-muted); background: none; border: 0; }

@media (prefers-reduced-motion: reduce) { body.marketing-site .btn.btn-primary { transition: none; } }
