
  :root {
    --bg: #ffffff; --bg-alt: #f7f9fc; --card: #ffffff; --ink: #111111; --soft: #525252; --muted: #6f6f6f; --line: #dde1e6;
    --acc: #0f62fe; --acc-hi: #0043ce; --on-acc: #ffffff; --acc-soft: #edf5ff; --blue: #0f62fe; --blue-dark: #0043ce; --blue-soft: var(--acc-soft); --chip-bg: rgba(255,255,255,.18); --chip-fg: #ffffff; --stack-wash: #dbe7ff; --stack-title: #002d9c;
    --font: 'Newsreader', Georgia, serif; --display: 'Newsreader', Georgia, serif; --serif: 'Newsreader', Georgia, serif; --mono: 'Red Hat Mono', ui-monospace, monospace; --pixel: 'Geist Pixel', monospace;
  }
  .hc-nav, .hc-foot, .hc-bar {
    --hc-ink: #111111; --hc-muted: #6f6f6f; --hc-soft: #525252; --hc-line: #dde1e6; --hc-blue: #0f62fe; --hc-blue-dark: #0043ce; --hc-dark: #161616; --hc-neon: #4589ff;
    --hc-font: 'Newsreader', Georgia, serif; --hc-serif: 'Newsreader', Georgia, serif; --hc-mono: 'Red Hat Mono', ui-monospace, monospace;
  }
  body { font-size: 18px; letter-spacing: 0; }
  ::selection { background: var(--acc); color: var(--on-acc); }
  h1, h2, h3 { font-weight: 350; letter-spacing: -0.02em; font-variation-settings: "opsz" 72; }
  .hero h1 { font-weight: 350; font-size: clamp(42px, 6.2vw, 80px); line-height: 1.03; letter-spacing: -0.03em; }
  .hero h1.hero-one { font-size: clamp(38px, 5.2vw, 76px); max-width: none; }
  .hero-kicker { margin: 0 0 20px; font-family: var(--display); font-size: clamp(20px, 2vw, 28px); font-weight: 400; letter-spacing: -0.01em; color: var(--ink); }
  .hero.hx-hero { padding-top: 76px; }
  /* hero fills the first screen: copy + form centred, logo strip just above the fold and the archive heading peeking below it so it invites the scroll (Andreas 2026-11-05, Forward Future ref) */
  @media (min-width: 861px) and (min-height: 640px) {
    .hero.hx-hero { display: flex; min-height: min(calc(100svh - 76px - 160px), 800px); padding: 48px 0 36px; }
    .hero.hx-hero .wrap { flex: 1; }
    .hero.hx-hero h1 { margin-top: auto; }
    .hero.hx-hero .hx-marquee { margin-top: auto; padding-top: 56px; }
  }
  .hero .sub .sub-lead { display: block; text-wrap: balance; color: var(--ink); font-weight: 600; }
  .hero.hx-hero .sub { max-width: none; }
  @media (min-width: 960px) { .hx-hero .sub .sub-lead { white-space: nowrap; } } /* Andreas 2026-11-05: one line */
  .hero .sub, .hx-hero .sub { margin-top: 24px; max-width: 52ch; font-size: 20px; line-height: 1.6; color: var(--soft); }
  h2.sec { letter-spacing: -0.025em; }
  .hx-dot { color: var(--acc); }
  .px { font-family: var(--pixel); font-size: .86em; letter-spacing: 0; font-weight: 400; }
  .hero::before { display: none; }
  .hero .wrap { position: relative; z-index: 1; }
  .loopmark { display: block; width: 240px; height: auto; margin: 0 auto 30px; color: var(--acc); }
  .loopmark path { opacity: .34; }
  .sec-label, .ps-label, .hx-lane { color: var(--blue); letter-spacing: 0.16em; }
  .sec-label::before, .ps-label::before, .hx-lane::before { content: ""; display: inline-block; width: 6px; height: 6px; margin-right: 9px; border-radius: 50%; background: var(--acc); vertical-align: 0.1em; }
  .btn, .hc-btn:not(.hc-btn-ghost) { background: var(--acc); border-color: var(--acc); color: var(--on-acc); font-family: var(--mono); font-weight: 500; font-size: 13px; letter-spacing: 0; border-radius: 6px; padding: 4px 4px 4px 16px; gap: 14px; }
  .btn::after, .hc-btn:not(.hc-btn-ghost)::after { content: "\2192"; display: grid; place-items: center; width: 32px; height: 32px; border-radius: 4px; background: var(--chip-bg); color: var(--chip-fg); font-family: var(--mono); font-size: 14px; }
  .btn:hover, .hc-btn:not(.hc-btn-ghost):hover { background: var(--acc-hi); border-color: var(--acc-hi); color: var(--on-acc); }
  .hc-cta .hc-btn { padding: 3px 3px 3px 13px; font-size: 12.5px; }
  .hc-cta .hc-btn::after { width: 28px; height: 28px; }
  .reg-card .btn { justify-content: space-between; padding: 6px 6px 6px 20px; font-size: 14px; }
  .hc-nav { background: rgba(255,255,255,.86); }
  .hc-nav.is-scrolled { background: rgba(255,255,255,.94); }
  .hc-brand { color: #0f62fe !important; }
  .hc-foot .hc-brand { color: #f5f4ef !important; }
  .hc-wm { font-family: var(--display); font-weight: 350; font-size: 23px; letter-spacing: -0.01em; text-transform: none; word-spacing: -0.04em; }
  .hc-wm { color: var(--ink); }
  .hc-wm em { font-style: italic; font-weight: 300; color: #0f62fe; }
  .hc-foot .hc-wm { color: #f5f4ef; }
  .hc-foot .hc-wm em { color: #4589ff; }
  .hc-menu a { font-family: var(--mono); font-weight: 400; font-size: 13px; }
  .way, .case-quote, .reg-card, .hero-proof, .proof-item { border-radius: 6px; }
  .reg-card input, .reg-card select, .reg-card textarea { border-radius: 6px; font-family: var(--font); font-size: 17px; }
  .reg-card input:focus, .reg-card select:focus, .reg-card textarea:focus { border-color: var(--acc); box-shadow: 0 0 0 3px rgba(15,98,254,.14); }
  .ic { color: var(--blue); }
  .rule-item h3, .way li, .faq-item summary { font-family: var(--font); }
  .ps-logos img { opacity: .55; }
  .pair { background: #161616; border-radius: 8px; }
  .bb-art { border-radius: 6px; }
  .path-card, .path.is-js .path-cards::before, .rail-bg { border-radius: 6px; }
  .path-tabs button[aria-selected="true"] { background: var(--acc); color: var(--on-acc); }
  .path-tabs button[aria-selected="true"] i { color: var(--on-acc); opacity: .7; }
  .stack-card h3, .path-build h4, .path-tabs button { font-family: var(--font); }
  .block .bb-sub { font-family: var(--mono); font-size: 13px; font-weight: 500; letter-spacing: 0.02em; }
  .pair-to { background: var(--acc); border-radius: 4px; }
  .pair-to .pair-k, .pair-to h3, .pair-to p { color: var(--on-acc); }
  .pair-to .pair-k { opacity: .7; }
  .pair-to p { opacity: .86; }
  .pair h3 { font-family: var(--font); font-weight: 500; font-size: 23px; letter-spacing: -0.01em; }
  @media (max-width: 860px) {
    .hc-wm { font-size: 19px; }
    .hc-cta .hc-btn { padding: 9px 12px; }
    .hc-cta .hc-btn::after { display: none; }
  }
  @media (max-width: 600px) { .loopmark { width: 180px; margin-bottom: 22px; } }
