/* Public marketing pages (/, /fr, /en, /de, /pl, /ru) — same tokens as login.html / portal.css. */
  :root{
    --ink:#15151a;--surface:#f5f4ef;--card:#fff;--line:#e3e0d6;
    --blue:#7c6c3f;--blue-deep:#5f5128;--blue-soft:#f2efe6;--volt:#c9b98a;
    --pos:#5d7d64;--muted:#6f706c;--muted-2:#68645c;--text:#1c1b17;
    --display:'Cormorant Garamond','Sora','Inter',serif;--body:'Inter',system-ui,-apple-system,sans-serif;
    --ui-2xs:clamp(10.5px,calc(10.1px + .08vw),11.5px);--ui-xs:clamp(11.5px,calc(11px + .1vw),12.5px);--ui-sm:clamp(12.5px,calc(12px + .12vw),14px);--ui-md:clamp(14px,calc(13.4px + .14vw),16px);--ui-lg:clamp(17px,calc(16px + .2vw),20px);--ui-xl:clamp(20px,calc(18px + .4vw),26px);
  }
  *{box-sizing:border-box}html,body{margin:0}
  body{font-family:var(--body);background:var(--surface);color:var(--text);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.6}
  a{color:var(--blue);text-decoration:none;font-weight:600}
  .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
  .skip-link{position:absolute;left:12px;top:8px;z-index:1000;transform:translateY(-150%);background:#fff;color:var(--blue-deep);border:2px solid var(--blue);border-radius:8px;padding:8px 12px;box-shadow:0 8px 24px rgba(11,16,32,.16)}
  .skip-link-tools{top:54px}
  .skip-link:focus{transform:none}
  .in{max-width:1080px;margin:0 auto;padding:0 22px}

  /* top current bar + header */
  .bar{height:3px;background:linear-gradient(90deg,transparent,var(--blue) 20%,var(--volt) 50%,var(--blue) 80%,transparent);background-size:240% 100%;animation:cur 4.5s linear infinite}
  @keyframes cur{0%{background-position:120% 0}100%{background-position:-120% 0}}
  header{background:#fff;border-bottom:1px solid var(--line)}
  header .in{display:flex;align-items:center;gap:12px;height:64px;max-width:1220px}
  .blogo{display:flex;align-items:center;gap:11px}
  .blogo .mk{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(150deg,#1c1e27,#2b2e39);border:1px solid rgba(201,185,138,.4);box-shadow:0 6px 18px rgba(12,12,16,.22)}
  .blogo .mk svg{width:20px;height:20px}
  .blogo .mk svg path:last-child{fill:#c9b98a}
  .blogo b{font-family:var(--display);font-weight:700;font-size:18px;display:block;line-height:1.05;letter-spacing:-.01em;color:var(--ink)}
  .blogo span{font-size:var(--ui-2xs);letter-spacing:.15em;text-transform:uppercase;color:var(--muted-2)}
  header .sp{flex:1}
  .btn{display:inline-block;padding:10px 20px;border-radius:10px;font-weight:600;font-size:var(--ui-md);text-align:center}
  header .btn{white-space:nowrap;flex:0 0 auto}
  .top-demo-cta{display:inline-flex;align-items:center;justify-content:center;min-width:max-content;line-height:1.15}
  .btn-blue{background:#16181f;color:#f5f4f0;box-shadow:0 6px 18px rgba(12,12,16,.18)}
  .btn-blue:hover{background:#262933}
  .btn-ghost{border:1px solid var(--line);color:var(--text);background:#fff}
  .lang{display:flex;flex-wrap:wrap;gap:3px;background:#fff;border:1px solid var(--line);border-radius:9px;padding:3px;margin-right:6px}
  .lang a{padding:5px 9px;border-radius:7px;font-size:var(--ui-xs);font-weight:600;color:var(--muted)}
  .lang a.on{background:var(--blue-soft);color:var(--blue-deep)}

  /* geo-suggested language banner (see AuthController#applyLanguageHint) */
  .lang-suggest{background:var(--blue-soft);border-bottom:1px solid var(--line)}
  .lang-suggest .in{display:flex;align-items:center;gap:12px;padding:9px 22px;font-size:var(--ui-sm);color:var(--blue-deep)}
  .lang-suggest a{color:var(--blue-deep)}
  .lang-suggest .sp{flex:1}
  .lang-suggest-dismiss{background:none;border:0;color:var(--blue-deep);font-size:17px;line-height:1;cursor:pointer;padding:2px 4px;font-weight:700}
  .a11y-tools{display:flex;gap:6px;align-items:center;margin-right:4px;border:1px solid var(--line);border-radius:11px;background:#fff;padding:4px}
  .a11y-tools:focus{outline:2px solid var(--blue);outline-offset:4px}
  .a11y-title{font:800 var(--ui-xs) var(--body);color:var(--text);padding:0 5px;white-space:nowrap}
  .a11y-btn{height:34px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--text);font:700 var(--ui-xs) var(--body);padding:0 11px;cursor:pointer}
  .a11y-btn[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
  .a11y-btn:hover{border-color:#7b8aa8}

  /* hero */
  .hero{position:relative;overflow:hidden;color:#cdd8ee;
    background:radial-gradient(720px 460px at 85% -10%,rgba(201,185,138,.14),transparent 60%),linear-gradient(160deg,#0b0c10,#171922 74%)}
  .hero .in{padding:74px 22px 66px}
  .hero .kick{font-size:var(--ui-xs);letter-spacing:.18em;text-transform:uppercase;color:#7e8eae;font-weight:600}
  .hero h1{font-family:var(--display);color:#fff;font-weight:700;font-size:clamp(30px,4.6vw,46px);line-height:1.14;letter-spacing:-.015em;margin:14px 0 16px;max-width:21ch}
  .hero h1 em{font-style:normal;color:var(--volt)}
  .hero .lede{color:#9fb0d0;font-size:16.5px;max-width:56ch;margin:0 0 30px}
  .hero .acts{display:flex;gap:12px;flex-wrap:wrap}
  .hero .btn-ghost{background:transparent;border-color:rgba(255,255,255,.22);color:#e6ecfb}
  .chips{display:flex;gap:9px;flex-wrap:wrap;margin-top:34px}
  .chip{font-size:var(--ui-sm);color:#c4d0e6;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);border-radius:999px;padding:6px 13px}
  .chip-future{border-color:rgba(214,255,59,.42);color:#efffb4;background:rgba(214,255,59,.08)}

  /* Two honest product paths on the homepage: current product and the formation direction. */
  .product-paths-section{padding-bottom:14px}
  .product-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
  .product-path{position:relative;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:26px;box-shadow:0 1px 2px rgba(11,16,32,.04)}
  .product-path-future{border-color:#cdd7ff;background:linear-gradient(145deg,#fff,#f4f6ff)}
  .product-path h3{font:700 18px/1.3 var(--display);color:var(--ink);margin:13px 0 8px}
  .product-path p{color:var(--muted);margin:0 0 12px}
  .path-state{display:inline-flex;align-items:center;width:max-content;border-radius:999px;padding:5px 10px;background:var(--blue-soft);color:var(--blue-deep);font:700 var(--ui-xs)/1.2 var(--body);letter-spacing:.04em;text-transform:uppercase}
  .path-state-now{background:#eaf8f2;color:#087a52}
  .path-state-later{background:#f0f2f6;color:#4f5d73}
  @media(max-width:720px){.product-paths{grid-template-columns:1fr}}

  /* sections */
  section{padding:58px 0}
  h2{font-family:var(--display);font-size:clamp(22px,3vw,30px);letter-spacing:-.01em;line-height:1.2;margin:0 0 10px;color:var(--ink)}
  .sub{color:var(--muted);max-width:62ch;margin:0 0 34px}
  .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
  @media(max-width:900px){.grid{grid-template-columns:1fr 1fr}}
  @media(max-width:620px){.grid{grid-template-columns:1fr}}
  .f{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:22px 20px;box-shadow:0 1px 2px rgba(11,16,32,.04)}
  .f .fi{width:38px;height:38px;border-radius:11px;background:var(--blue-soft);display:grid;place-items:center;margin-bottom:14px}
  .f .fi svg{width:19px;height:19px;color:var(--blue)}
  .f h3{font-family:var(--display);font-size:16px;margin:0 0 7px;color:var(--ink)}
  .f p{margin:0;color:var(--muted);font-size:13.8px}

  /* steps */
  .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
  @media(max-width:720px){.steps{grid-template-columns:1fr}}
  .st{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:22px 20px}
  .st .n{font-family:var(--display);font-weight:700;color:var(--blue);font-size:var(--ui-sm);letter-spacing:.1em}
  .st h3{font-family:var(--display);font-size:16px;margin:8px 0 7px;color:var(--ink)}
  .st p{margin:0;color:var(--muted);font-size:13.8px}

  /* Public customer-facing Road Map. */
  .roadmap-hero{position:relative;overflow:hidden;color:#cfccc2;background:radial-gradient(800px 520px at 86% -5%,rgba(201,185,138,.14),transparent 62%),linear-gradient(160deg,#0b0c10,#171922 74%);padding:0}
  .roadmap-hero .in{padding:70px 22px 56px}
  .roadmap-hero .kick{font-size:var(--ui-xs);letter-spacing:.18em;text-transform:uppercase;color:#91a3c5;font-weight:700;margin:12px 0 0}
  .roadmap-hero h1{font:700 clamp(31px,4.6vw,48px)/1.12 var(--display);letter-spacing:-.02em;color:#fff;max-width:22ch;margin:13px 0 17px}
  .roadmap-hero .lede{font-size:17px;color:#adbcda;max-width:67ch;margin:0 0 34px}
  .roadmap-status{display:inline-flex;padding:6px 12px;border:1px solid rgba(214,255,59,.35);border-radius:999px;background:rgba(214,255,59,.09);color:#efffb4;font:700 var(--ui-xs)/1.2 var(--body);letter-spacing:.06em;text-transform:uppercase}
  .roadmap-two-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:920px}
  .roadmap-two-paths article{padding:22px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.055);border-radius:15px;backdrop-filter:blur(8px)}
  .roadmap-two-paths h2{font-size:18px;color:#fff;margin:12px 0 7px}
  .roadmap-two-paths p{color:#adbcda;font-size:14px;margin:0}
  .roadmap-section{padding:64px 0}
  .roadmap-flow{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;counter-reset:roadmap}
  .roadmap-step{display:flex;gap:17px;align-items:flex-start;background:var(--card);border:1px solid var(--line);border-radius:15px;padding:22px;min-height:142px}
  .roadmap-number{flex:0 0 40px;height:40px;display:grid;place-items:center;border-radius:12px;background:var(--blue-soft);color:var(--blue-deep);font:700 var(--ui-sm)/1 var(--display)}
  .roadmap-step h3,.boundary-card h3{font:700 17px/1.3 var(--display);color:var(--ink);margin:1px 0 7px}
  .roadmap-step p{color:var(--muted);font-size:14px;margin:0}
  .roadmap-boundary-section{background:#eef2f9;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .boundary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
  .boundary-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:25px}
  .boundary-werfvolt{border-top:4px solid var(--blue)}
  .boundary-owner{display:block;color:var(--blue);font:700 var(--ui-xs)/1 var(--display);letter-spacing:.12em;text-transform:uppercase;margin-bottom:13px}
  .boundary-card ul,.release-grid ul{margin:12px 0 0;padding-left:20px;color:var(--muted)}
  .boundary-card li,.release-grid li{margin:7px 0}
  .release-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
  .release-grid article{background:var(--card);border:1px solid var(--line);border-radius:15px;padding:22px}
  .release-grid ul{font-size:14px}
  .roadmap-caution{margin-top:20px;padding:24px 26px;border:1px solid #e7ce8b;border-radius:15px;background:#fff8e7}
  .roadmap-caution h2{font-size:17px;margin:0 0 7px}
  .roadmap-caution p{color:#68552a;margin:0;max-width:86ch}
  .roadmap-cta-section{padding-top:0}
  .cta-ghost{background:transparent!important;border-color:rgba(255,255,255,.25)!important;color:#fff!important}
  @media(max-width:760px){.roadmap-two-paths,.roadmap-flow,.boundary-grid,.release-grid{grid-template-columns:1fr}.roadmap-hero .in{padding-top:52px}.roadmap-step{min-height:0}}

  /* CTA band */
  .cta{background:linear-gradient(160deg,#0b0c10,#171922 74%);border-radius:18px;color:#fff;padding:40px 34px;display:flex;align-items:center;gap:22px;flex-wrap:wrap}
  .cta h2{color:#fff;margin:0}
  .cta p{color:#9fb0d0;margin:6px 0 0}
  .cta .sp{flex:1}

  .site-footer{border-top:1px solid rgba(255,255,255,.08);background:linear-gradient(145deg,#0b0c10,#15161d);color:#aaa69b;padding:24px 0 16px;font-size:var(--ui-sm)}
  .site-footer .footer-main{display:flex;align-items:center;gap:34px;min-height:64px}
  .footer-brand{min-width:260px}
  .footer-mark{display:inline-flex;align-items:center;gap:10px;color:#fff;text-decoration:none}
  .footer-mark .mk{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:linear-gradient(150deg,#1c1e27,#2b2e39);border:1px solid rgba(201,185,138,.35);box-shadow:0 5px 16px rgba(0,0,0,.24)}
  .footer-mark .mk svg{width:17px;height:17px}
  .footer-mark b{display:block;font-family:var(--display);font-size:15px;line-height:1;color:#fff;letter-spacing:-.01em}
  .footer-mark small{display:block;margin-top:4px;color:#7385a7;font-size:var(--ui-2xs);letter-spacing:.15em;text-transform:uppercase;line-height:1}
  .footer-brand p{margin:9px 0 0;color:#7f91b0;font-size:var(--ui-xs);line-height:1.45}
  .footer-links{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
  .site-footer a{color:#d6e0f4;font-weight:600}
  .site-footer a:hover{color:#fff}
  .footer-notice{margin-left:auto;display:flex;align-items:center;gap:10px;min-width:235px;max-width:330px;padding:9px 12px;border:1px solid rgba(242,207,135,.42);background:rgba(255,248,230,.08);border-radius:12px;color:#f2cf87}
  .footer-notice b{display:block;color:#ffe3a8;font-size:var(--ui-xs);font-weight:700}
  .footer-notice small{display:block;color:#d5c092;font-size:var(--ui-xs);line-height:1.35;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .notice-dot{width:8px;height:8px;flex:none;border-radius:50%;background:#f2cf87;box-shadow:0 0 0 4px rgba(242,207,135,.13)}
  .footer-bottom{display:flex;align-items:center;gap:12px;border-top:1px solid rgba(255,255,255,.08);margin-top:18px;padding-top:12px;color:#7183a4;font-size:var(--ui-xs)}
  .footer-bottom a{color:#91a9ff}
  .footer-bottom .sp{flex:1}
  /* The footer stays in normal document flow and appears after the page content. */
  :root.a11y-contrast{
    --ink:#000;--surface:#fff;--card:#fff;--line:#000;
    --blue:#0037ff;--blue-deep:#001a8f;--blue-soft:#fff200;--volt:#fff200;
    --muted:#000;--muted-2:#000;--text:#000;
  }
  :root.a11y-contrast body{background:#fff;color:#000}
  :root.a11y-contrast .bar{background:#fff200;animation:none}
  :root.a11y-contrast header,:root.a11y-contrast .site-footer{background:#fff;border-color:#000;color:#000}
  :root.a11y-contrast .blogo .mk{box-shadow:none;background:#000}
  :root.a11y-contrast .lang,:root.a11y-contrast .a11y-btn,:root.a11y-contrast .btn-ghost,:root.a11y-contrast .f,:root.a11y-contrast .st,:root.a11y-contrast .product-path,:root.a11y-contrast .roadmap-step,:root.a11y-contrast .boundary-card,:root.a11y-contrast .release-grid article{border-color:#000}
  :root.a11y-contrast .lang-suggest{background:#fff200;border-color:#000}
  :root.a11y-contrast .lang-suggest .in,:root.a11y-contrast .lang-suggest a,:root.a11y-contrast .lang-suggest-dismiss{color:#000}
  :root.a11y-contrast .lang a.on,:root.a11y-contrast .a11y-btn[aria-pressed="true"]{background:#fff200;color:#000}
  :root.a11y-contrast .footer-mark b,:root.a11y-contrast .footer-mark small,:root.a11y-contrast .footer-brand p,:root.a11y-contrast .footer-bottom,:root.a11y-contrast .footer-notice small{color:#000}
  :root.a11y-contrast .site-footer a,:root.a11y-contrast .footer-bottom a{color:#001a8f}
  :root.a11y-contrast .footer-notice{border-color:#000;background:#fff;color:#000}
  :root.a11y-contrast .hero,:root.a11y-contrast .roadmap-hero,:root.a11y-contrast .cta{background:#000;color:#fff}
  :root.a11y-contrast .hero .kick,:root.a11y-contrast .hero .lede,:root.a11y-contrast .roadmap-hero .kick,:root.a11y-contrast .roadmap-hero .lede,:root.a11y-contrast .roadmap-two-paths p,:root.a11y-contrast .chip,:root.a11y-contrast .cta p{color:#fff}
  :root.a11y-contrast .hero h1 em{color:#fff200}
  :root.a11y-contrast .chip{border-color:#fff;background:#000}
  :root.a11y-contrast .f .fi{background:#fff200;color:#000}
  :root.a11y-contrast .path-state,:root.a11y-contrast .roadmap-number{background:#fff200;color:#000}
  :root.a11y-contrast .roadmap-caution{background:#fff;border-color:#000}
  :root.a11y-contrast .roadmap-caution p{color:#000}
  :root.a11y-contrast :focus-visible{outline:3px solid #fff200;outline-offset:4px}
  :root.a11y-text-large body{font-size:17px}
  :root.a11y-text-large .hero .lede{font-size:18px}
  :root.a11y-text-large .sub{font-size:16px}
  :root.a11y-text-large .f p,:root.a11y-text-large .st p{font-size:15.5px}
  :root.a11y-text-large .btn{font-size:15px}
  :root.a11y-text-larger body{font-size:18px}
  :root.a11y-text-larger .hero h1{font-size:clamp(34px,4.8vw,52px)}
  :root.a11y-text-larger .hero .lede{font-size:19.5px}
  :root.a11y-text-larger .sub{font-size:17px}
  :root.a11y-text-larger .f h3,:root.a11y-text-larger .st h3{font-size:18px}
  :root.a11y-text-larger .f p,:root.a11y-text-larger .st p{font-size:16.5px}
  :root.a11y-text-larger .btn{font-size:16px}
  @media(prefers-contrast:more){:root{--muted:#374151;--muted-2:#4b5563;--line:#9aa6c0;--blue:#1e34d6}.btn-ghost,.lang{border-color:#7b8aa8}.chip{border-color:rgba(255,255,255,.42)}}
  @media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
  @media(max-width:1180px){header .in{height:auto;min-height:64px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px}.a11y-tools{order:3;width:100%;margin-right:0}.a11y-btn{flex:1}}
  @media(max-width:620px){.a11y-tools{display:grid;grid-template-columns:1fr 1fr}.a11y-title{grid-column:1/-1}.a11y-btn{width:100%}}
  @media(max-width:760px){.site-footer{padding:22px 0 15px}.site-footer .footer-main{align-items:flex-start;flex-direction:column;gap:18px}.footer-brand{min-width:0}.footer-links{gap:14px}.footer-notice{margin-left:0;max-width:none;width:100%}.footer-bottom{align-items:flex-start;flex-wrap:wrap;gap:7px}.footer-bottom .sp{display:none}}
  :focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:4px}
  @media(max-width:640px){input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px!important}}

/* Public capability ledger: the same runtime modes gate product integration claims. */
.capability-hero{padding:72px 0 44px;background:linear-gradient(145deg,#f5f8ff,#fff 62%)}
.capability-hero h1{max-width:820px;margin:10px 0 16px}.capability-hero .lede{max-width:760px}
.capability-rule{display:flex;gap:10px;align-items:baseline;max-width:760px;margin-top:24px;padding:14px 16px;border:1px solid #d9e0ef;border-radius:12px;background:#fff;color:#4d5a72;font-size:13px}
.capability-rule strong{color:#17233d;white-space:nowrap}.capability-section{padding:44px 0 76px}
.capability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.capability-card{border:1px solid #dde3ef;border-radius:16px;padding:22px;background:#fff;box-shadow:0 10px 28px rgba(22,36,70,.06)}
.capability-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.capability-card h2{margin:3px 0 0;font-size:25px}
.capability-id{font:600 10px/1.2 Sora,sans-serif;letter-spacing:.11em;color:#78849a}.capability-card>p{min-height:52px;margin:16px 0;color:#526078;line-height:1.6}
.capability-state{display:inline-flex;padding:7px 10px;border-radius:999px;background:#edf1f7;color:#526078;font:600 11px/1 Sora,sans-serif;white-space:nowrap}
.capability-state--live{background:#e1f5ea;color:#087246}.capability-state--simulation{background:#fff3d8;color:#8a5900}.capability-state--manual{background:#e9f0ff;color:#2f58b8}.capability-state--not_available{background:#f1f2f5;color:#5d6470}
.capability-card dl{display:grid;gap:8px;margin:0}.capability-card dl div{display:flex;justify-content:space-between;gap:16px;padding-top:8px;border-top:1px solid #edf0f5;font-size:12px}
.capability-card dt{color:#778398}.capability-card dd{margin:0;text-align:right;color:#26334d;font-weight:600;overflow-wrap:anywhere}
.capability-inline{display:grid;gap:6px;margin-top:14px;padding:12px;border:1px solid #e1e6f0;border-radius:10px;background:#f8faff;font-size:11.5px;line-height:1.45;text-align:left}.capability-inline strong{color:#8a5900;text-transform:uppercase;letter-spacing:.05em}.capability-inline span{color:#56637a}.capability-inline a{color:#2f55c8;font-weight:600;text-decoration:none}
.capability-caution{margin-top:22px;padding:20px 22px;border-left:4px solid #e0ad36;background:#fff8e8;border-radius:10px}.capability-caution h2{font-size:20px;margin:0 0 6px}.capability-caution p{margin:0;color:#5f5a4d;line-height:1.6}
@media(max-width:760px){.capability-hero{padding:48px 0 30px}.capability-grid{grid-template-columns:1fr}.capability-rule{align-items:flex-start;flex-direction:column}.capability-card>p{min-height:0}.capability-card-head{align-items:center}}
