
:root{
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
  --navy:#1E2A37; --navy-deep:#16202B; --blue:#3D65AA; --blue-2:#6091D6;
  --op:#A9C6F0; --tac:#6D98E0; --str:#3D65AA; --gap:#C4574A;
  --c-op:#4A6FA8; --c-tac:#2F5596; --c-mkt:#1E3F7A;
  --bg:#FFFFFF; --bg-2:#F3F6FA; --ink:#1E2A37; --muted:#4F5E6E; --line:#D9E1EA; --link:#2F5596;
  --font:"Familjen Grotesk", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#121A23; --bg-2:#18222E; --ink:#E6ECF3; --muted:#A3B0BF; --line:#2A3746; --link:#8DB4F2; --c-op:#C8D8F2; --c-tac:#8DB4F2; --c-mkt:#6D98E0;
  }
}
:root[data-theme="dark"]{
  --bg:#121A23; --bg-2:#18222E; --ink:#E6ECF3; --muted:#A3B0BF; --line:#2A3746; --link:#8DB4F2; --c-op:#C8D8F2; --c-tac:#8DB4F2; --c-mkt:#6D98E0;
}
*,*::before,*::after{box-sizing:inherit}
html{scroll-padding-top:env(safe-area-inset-top,0px);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:18px;line-height:1.55;}
img{max-width:100%}
a{color:var(--link)}
:focus-visible{outline:3px solid var(--blue-2);outline-offset:3px;border-radius:4px}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px}

/* header */
.top{position:absolute;left:0;right:0;top:env(safe-area-inset-top,0px);z-index:20;}
.top .wrap{display:flex;align-items:center;justify-content:space-between;height:76px}
.top img{height:30px;width:auto;display:block}
.top nav{display:flex;gap:28px;align-items:center}
.top nav a{color:#DCE5F0;text-decoration:none;font-size:16px}
.top nav a:hover{color:#fff}
.btn{display:inline-flex;align-items:center;min-height:46px;padding:0 22px;border-radius:999px;font-weight:600;font-size:16px;text-decoration:none;border:1.5px solid transparent;font-family:inherit;cursor:pointer}
.btn-solid{background:#fff;color:var(--navy)}
.btn-solid:hover{background:#E4ECF8}
.btn-ghost{border-color:rgba(255,255,255,.45);color:#fff}
.btn-ghost:hover{border-color:#fff}
.top nav .btn{min-height:40px;padding:0 18px;color:var(--navy)}
@media (max-width:860px){.top nav a:not(.btn){display:none}}

/* scrolly */
.scrolly{position:relative;background:var(--navy-deep);color:#fff}
.stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden}
.stage canvas{display:block;width:100%;height:100%}
.steps{position:relative;margin-top:-100vh;margin-top:-100svh;z-index:5;pointer-events:none}
.step{min-height:100vh;min-height:100svh;display:flex;align-items:center}
.step .wrap{width:100%}
.card{max-width:430px;pointer-events:auto;transition:opacity .2s linear}
.step h1{font-size:clamp(46px,6.4vw,86px);line-height:.98;letter-spacing:-.025em;margin:0 0 26px;font-weight:700;max-width:9ch}
.step h2{font-size:clamp(28px,3vw,38px);line-height:1.1;letter-spacing:-.015em;margin:0 0 16px;font-weight:600}
.step p{color:#C9D5E3;margin:0 0 16px;font-size:18px}
.step .lede{font-size:20px;color:#DCE5F0;max-width:30ch}
.product{display:inline-block;font-weight:600;color:var(--str);margin-bottom:18px;font-size:17px}
.ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.legend{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:12px}
.legend li{display:grid;grid-template-columns:26px 1fr;gap:10px;align-items:start;color:#C9D5E3;font-size:16px;line-height:1.4}
.legend b{color:#fff;font-weight:600}
.sw{display:block;border-radius:50%;margin:5px auto 0}
.gaps{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}
.gap{border:1px solid rgba(255,255,255,.22);border-radius:10px;padding:10px 14px;min-width:150px}
.gap span{display:block;font-size:14px;color:#A9B8CA}
.gap strong{font-size:26px;font-variant-numeric:tabular-nums;font-weight:600}
blockquote{margin:22px 0 0;padding:0;font-size:22px;line-height:1.3;color:#fff;font-weight:500;font-style:italic}
blockquote cite{display:block;margin-top:8px;font-size:15px;font-style:normal;color:#A9B8CA;font-weight:400}
.cue{position:absolute;left:50%;bottom:calc(22px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);color:#A9B8CA;font-size:14px;z-index:6;transition:opacity .3s}
@media (max-width:860px){
  .step{align-items:flex-end;padding-bottom:calc(28px + env(safe-area-inset-bottom,0px))}
  .step.hero{align-items:flex-end}
  .card{max-width:none;background:rgba(22,32,43,.9);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:22px;border-radius:16px;border:1px solid rgba(255,255,255,.08)}
  .step.hero .card{background:none;border:0;backdrop-filter:none;-webkit-backdrop-filter:none;padding:0}
  .step.hero .product,.step.hero .btn-ghost{display:none}
  .step.hero .ctas{margin-top:20px}
  .step h1{font-size:44px;margin-bottom:14px}
  .step p,.step .lede{font-size:16px}
  .step h2{font-size:25px}
  .legend li{font-size:14px}
  .gap strong{font-size:21px}
  blockquote{font-size:18px}
  .cue{display:none}
  .step .more{display:none}
}

/* content sections */
section.band{padding:112px 0}
section.alt{background:var(--bg-2)}
.band h2{font-size:clamp(32px,3.6vw,48px);line-height:1.05;letter-spacing:-.02em;margin:0 0 20px;font-weight:700;max-width:24ch}
.band .intro{color:var(--muted);max-width:62ch;margin:0 0 48px;font-size:19px}

.horizons{display:grid;grid-template-columns:170px repeat(3,1fr);border-top:1.5px solid var(--ink)}
.horizons > div{padding:18px 18px 18px 0;border-bottom:1px solid var(--line);font-size:17px;line-height:1.45}
.horizons .rh{color:var(--muted);font-size:15px;padding-top:20px}
.horizons .ch{font-weight:700;font-size:22px;display:flex;align-items:center;gap:10px}
.horizons .ch i{display:inline-block;border-radius:50%}
.horizons .where{font-weight:600}
.pushback{margin-top:0;padding:22px 24px;background:var(--navy);color:#fff;border-radius:0 0 12px 12px;font-size:17px}
@media (max-width:860px){
  .horizons{grid-template-columns:1fr}
  .horizons > .rh,.horizons > .blank{display:none}
  .horizons > div{padding:8px 0;border-bottom:0}
  .horizons > .ch{padding-top:28px;border-top:1px solid var(--line)}
  .horizons > div[data-l]::before{content:attr(data-l);display:block;font-size:13px;color:var(--muted)}
  .pushback{border-radius:12px;margin-top:20px}
}

.research{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:start}
.bars{display:grid;gap:22px;margin-top:6px}
.bar-row{display:grid;grid-template-columns:96px 1fr 64px;gap:14px;align-items:center}
.bar-row span{color:var(--muted);font-size:16px}
.bar-track{height:34px;background:var(--line);border-radius:6px;position:relative;overflow:hidden}
.bar-fill{position:absolute;inset:0 auto 0 0;background:var(--blue);border-radius:6px}
.bar-row strong{font-size:24px;font-variant-numeric:tabular-nums;text-align:right}
.bars figcaption{color:var(--muted);font-size:15px;margin-top:4px}
.cite{font-size:14px;color:var(--muted);margin-top:22px;max-width:60ch}
@media (max-width:860px){.research{grid-template-columns:1fr;gap:36px}}

.voices{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1.5px solid var(--ink)}
.voice{padding:26px 26px 10px 0}
.voice + .voice{padding-left:26px;border-left:1px solid var(--line)}
.voice q{display:block;font-size:24px;line-height:1.2;font-weight:600;letter-spacing:-.01em;quotes:"\201C" "\201D"}
.voice p{color:var(--muted);font-size:16px;margin:14px 0 0}
.voice p b{color:var(--ink);font-weight:600}
@media (max-width:860px){.voices{grid-template-columns:1fr}.voice + .voice{padding-left:0;border-left:0;border-top:1px solid var(--line)}}

ol.path{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(5,1fr);counter-reset:s}
ol.path li{counter-increment:s;padding:0 20px 0 0;position:relative}
ol.path li::before{content:counter(s);display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:var(--navy);color:#fff;font-weight:600;margin-bottom:16px;position:relative;z-index:1}
:root[data-theme="dark"] ol.path li::before{background:var(--blue)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) ol.path li::before{background:var(--blue)}}
ol.path li::after{content:"";position:absolute;top:19px;left:38px;right:0;height:1.5px;background:var(--line)}
ol.path li:last-child::after{display:none}
ol.path h3{margin:0 0 6px;font-size:19px}
ol.path p{margin:0;color:var(--muted);font-size:16px;line-height:1.45}
.plans{margin-top:44px;color:var(--muted);max-width:70ch;font-size:17px}
.plans b{color:var(--ink)}
@media (max-width:960px){ol.path{grid-template-columns:1fr;gap:26px}ol.path li{padding:0 0 0 56px}ol.path li::before{position:absolute;left:0;top:0}ol.path li::after{display:none}}

.engine{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.engine dl{margin:0;display:grid;gap:22px}
.engine dt{font-weight:700;font-size:19px}
.engine dd{margin:4px 0 0;color:var(--muted);font-size:17px}
@media (max-width:860px){.engine{grid-template-columns:1fr;gap:28px}}

.final{background:var(--navy-deep);color:#fff;padding:120px 0 96px}
.final h2{font-size:clamp(34px,4.4vw,58px);line-height:1.02;letter-spacing:-.02em;margin:0 0 22px;max-width:18ch}
.final p{color:#C9D5E3;max-width:52ch;font-size:19px}
.foot{border-top:1px solid rgba(255,255,255,.12);margin-top:96px;padding-top:32px;display:grid;grid-template-columns:1fr 1.6fr;gap:48px;font-size:14px;color:#A9B8CA}
.foot img{height:26px;width:auto;margin-bottom:14px}
.foot a{color:#DCE5F0}
.foot ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
@media (max-width:860px){.foot{grid-template-columns:1fr}}

/* step 3 highlights */
.hl-td{color:var(--str)} .hl-bu{color:#E6ECF3}

/* configurator */
.cfg{display:grid;grid-template-columns:minmax(280px,.8fr) 1.4fr;gap:40px;align-items:start}
.cfg-label{font-size:14px;font-weight:600;color:var(--muted);margin:0 0 12px}
.cfg-label + .cfg-mods{margin-bottom:28px}
.cfg-mods{display:grid;gap:10px}
.cfg-mod{display:grid;grid-template-columns:14px 1fr 22px;gap:14px;align-items:center;text-align:left;font:inherit;color:var(--ink);background:var(--bg);border:1.5px solid var(--line);border-radius:12px;padding:14px 16px;cursor:pointer;min-height:64px}
.cfg-mod:hover{border-color:var(--muted)}
.cfg-mod .dot{width:12px;height:12px;border-radius:50%;background:var(--mc)}
.cfg-mod .t b{display:block;font-size:17px;font-weight:600}
.cfg-mod .t small{display:block;font-size:13.5px;color:var(--muted);margin-top:2px}
.cfg-mod .tick{width:22px;height:22px;border-radius:6px;border:1.5px solid var(--line);position:relative}
.cfg-mod[aria-pressed="true"]{border-color:var(--mc);box-shadow:inset 0 0 0 1px var(--mc)}
.cfg-mod[aria-pressed="true"] .tick{background:var(--mc);border-color:var(--mc)}
.cfg-mod[aria-pressed="true"] .tick::after{content:"";position:absolute;left:7px;top:3px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.cfg-mod[data-m="0"],.blk[data-m="0"]{--mc:var(--c-op)}
.cfg-mod[data-m="1"],.blk[data-m="1"]{--mc:var(--c-tac)}
.cfg-mod[data-m="2"],.blk[data-m="2"]{--mc:var(--c-mkt)}
.cfg-presets{display:flex;flex-direction:column;gap:8px}
.cfg-presets button{font:inherit;font-size:15px;text-align:left;color:var(--link);background:none;border:0;border-left:2px solid var(--line);padding:6px 0 6px 14px;cursor:pointer;min-height:36px}
.cfg-presets button:hover,.cfg-presets button.on{border-left-color:var(--link);color:var(--ink)}
.cfg-view{background:var(--navy-deep);color:#fff;border-radius:16px;padding:28px 28px 24px}
.cfg-axis{display:grid;grid-template-columns:repeat(3,1fr);font-size:13px;color:#A9B8CA;margin-bottom:10px;position:relative}
.cfg-axis span:nth-child(2){grid-column:2;text-align:left}
.cfg-axis span:nth-child(3){grid-column:3;text-align:left}
.cfg-axis span:nth-child(4){position:absolute;right:0}
.cfg-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:8px}
.blk{border-radius:10px;padding:14px;min-height:118px;display:flex;flex-direction:column;gap:2px;border:1.5px dashed rgba(255,255,255,.22);transition:background .25s,border-color .25s}
.blk b{font-size:16px;font-weight:600;color:#C9D5E3}
.blk .own{font-size:13px;color:#8C9CB0}
.blk .st{font-size:13.5px;line-height:1.35;color:#8C9CB0;margin-top:auto}
.blk.on{background:color-mix(in srgb,var(--mc) 24%,#16202B);border:1.5px solid var(--mc)}
.blk.on b{color:#fff}.blk.on .own{color:#DCE5F0}.blk.on .st{color:#fff}
.cfg-view .blk[data-m="0"]{--mc:#A9C6F0}.cfg-view .blk[data-m="1"]{--mc:#6D98E0}.cfg-view .blk[data-m="2"]{--mc:#3D65AA}
.rec{grid-column:1/4;border-radius:10px;padding:12px 14px;font-size:14.5px;border:1.5px dashed rgba(255,255,255,.22);color:#8C9CB0;transition:all .25s}
.rec.on{background:#fff;color:var(--navy);border-color:#fff;font-weight:600}
.cfg-out{display:flex;align-items:center;gap:10px;font-size:14px;color:#C9D5E3;margin:14px 0 18px}
.cfg-out .arrow{width:22px;height:1.5px;background:#C9D5E3;position:relative;flex:none}
.cfg-out .arrow::after{content:"";position:absolute;right:-1px;top:-4px;border:5px solid transparent;border-left:7px solid #C9D5E3;border-right:0}
.cfg-sum{list-style:none;padding:16px 0 0;margin:0;border-top:1px solid rgba(255,255,255,.12);display:grid;gap:10px}
.cfg-sum li{font-size:15px;line-height:1.45;color:#C9D5E3;padding-left:18px;position:relative}
.cfg-sum li::before{content:"";position:absolute;left:0;top:8px;width:8px;height:8px;border-radius:50%;background:var(--mc,#fff)}
.cfg-sum b{color:#fff;font-weight:600}
@media (max-width:960px){.cfg{grid-template-columns:1fr;gap:28px}}
@media (max-width:600px){.cfg-view{padding:18px}.cfg-axis{display:none}.cfg-row{grid-template-columns:1fr}.blk{min-height:0;padding:12px 14px}.blk .st{margin-top:6px}.rec{grid-column:1/-1 !important}.stats dt{font-size:26px}}
@media (prefers-reduced-motion: reduce){.blk,.rec{transition:none}}

/* integrations */
.flow{display:grid;grid-template-columns:1fr minmax(240px,.85fr) 1fr;gap:56px;align-items:center;position:relative}
.flow-col{display:grid;gap:12px;position:relative;z-index:1}
.flow-h{margin:0 0 2px;font-size:14px;font-weight:600;color:var(--muted)}
.node{display:grid;grid-template-columns:40px 1fr;gap:14px;align-items:start;background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:16px;position:relative}
.node b{font-size:16.5px}
.node p{margin:3px 0 0;font-size:14.5px;line-height:1.45;color:var(--muted)}
.ic{width:40px;height:40px;border-radius:10px;background:var(--bg-2);display:flex;align-items:center;justify-content:center}
.ic svg{width:22px;height:22px;fill:none;stroke:var(--ink);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.flow-col:first-child .node::after,.flow-col:last-child .node::before{content:"";position:absolute;top:50%;width:56px;height:0;border-top:1.5px dashed var(--muted);opacity:.55}
.flow-col:first-child .node::after{right:-57px}
.flow-col:last-child .node::before{left:-57px}
.core{background:var(--navy);color:#fff;border-radius:16px;padding:26px 24px;position:relative;z-index:1}
:root[data-theme="dark"] .core{background:#24344A}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .core{background:#24344A}}
.core-tag{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--str)}
.core ol{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:14px;counter-reset:c}
.core li{counter-increment:c;padding-left:34px;position:relative;font-size:15.5px;line-height:1.4;color:#C9D5E3}
.core li::before{content:counter(c);position:absolute;left:0;top:-1px;width:24px;height:24px;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center}
.core b{color:#fff}
.ways{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:56px}
.way{border-top:2px solid var(--ink);padding-top:16px}
.way h3{margin:0 0 6px;font-size:19px}
.way p{margin:0;color:var(--muted);font-size:16px;line-height:1.5}
.grain{margin:32px 0 0;font-size:16.5px;color:var(--muted);max-width:72ch}
.grain b{color:var(--ink)}
@media (max-width:960px){
  .flow{grid-template-columns:1fr;gap:28px}
  .flow-col:first-child .node::after,.flow-col:last-child .node::before{display:none}
  .flow-mid{position:relative}
  .flow-mid::before,.flow-mid::after{content:"";display:block;width:0;height:22px;border-left:1.5px dashed var(--muted);margin:0 auto 6px;opacity:.6}
  .flow-mid::after{margin:6px auto 0}
  .ways{grid-template-columns:1fr;gap:24px;margin-top:40px}
}

/* desks */
.desks{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.desk{border:1px solid var(--line);border-radius:14px;padding:20px;background:var(--bg);display:flex;flex-direction:column}
.desk h3{margin:0;font-size:14px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.desk q{display:block;margin:8px 0 14px;font-size:19px;line-height:1.25;font-weight:600;quotes:"\201C" "\201D";min-height:48px}
.mini{height:120px;margin-top:auto}
.mini svg{width:100%;height:100%;display:block;overflow:visible}
.tot{margin:12px 0 0;font-size:14px;color:var(--muted);line-height:1.9}
.tot strong{font-variant-numeric:tabular-nums;color:var(--ink);font-weight:700;padding:1px 7px;border-radius:5px;margin-left:4px}
.tot strong.ma{background:color-mix(in srgb,var(--c-op) 18%,transparent);box-shadow:inset 0 0 0 1.5px var(--c-op)}
.tot strong.mb{background:color-mix(in srgb,var(--c-mkt) 18%,transparent);box-shadow:inset 0 0 0 1.5px var(--c-mkt)}
.match{margin:20px 0 0;font-size:15px;color:var(--muted);display:flex;gap:10px;align-items:center}
.match .pill{width:24px;height:24px;border-radius:50%;background:var(--ink);color:var(--bg);display:inline-flex;align-items:center;justify-content:center;font-weight:700;flex:none}
.mini .tip{font-size:11px;fill:var(--muted)}
.desk .lg{margin:6px 0 0;font-size:12.5px;color:var(--muted);display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px}
.desk .lg i{width:10px;height:10px;border-radius:2px;display:inline-block}
@media (max-width:1000px){.desks{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.desks{grid-template-columns:1fr}.desk q{min-height:0}}

/* value calculator */
.value{display:grid;grid-template-columns:1.35fr 1fr;gap:28px;align-items:start}
.calc,.bench{border:1px solid var(--line);border-radius:14px;padding:28px;background:var(--bg)}
.value h3{margin:0 0 18px;font-size:20px}
.inputs{display:grid;grid-template-columns:1fr 1fr;gap:18px 28px}
.inputs label{display:grid;grid-template-columns:1fr auto;gap:6px 10px;font-size:14.5px;color:var(--muted)}
.inputs output{font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}
.inputs input{grid-column:1/3;width:100%;accent-color:var(--c-tac);height:28px;margin:0}
.results{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0 18px}
.res{background:var(--bg-2);border-radius:10px;padding:14px}
.res span{display:block;font-size:13.5px;color:var(--muted);line-height:1.3}
.res strong{display:block;margin-top:6px;font-size:28px;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--link)}
.ssbar{display:grid;gap:8px}
.ssbar > div{display:grid;grid-template-columns:170px 1fr 70px;gap:12px;align-items:center;font-size:14px;color:var(--muted)}
.ssbar .bar{height:14px;background:var(--bg-2);border-radius:4px;overflow:hidden}
.ssbar i{display:block;height:100%;background:var(--c-tac);border-radius:4px;transition:width .25s}
.ssbar em{font-style:normal;font-weight:600;color:var(--ink);text-align:right;font-variant-numeric:tabular-nums}
.stats{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:0}
.stats dt{font-size:32px;font-weight:700;letter-spacing:-.02em;color:var(--link)}
.stats dd{margin:2px 0 0;color:var(--muted);font-size:15.5px}
@media (max-width:960px){.value{grid-template-columns:1fr}}
@media (max-width:600px){.inputs{grid-template-columns:1fr}.results{grid-template-columns:1fr}.ssbar > div{grid-template-columns:1fr 60px}.ssbar > div > span{grid-column:1/3}.calc,.bench{padding:20px}}

/* pipeline */
ol.pipe{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(5,1fr);gap:20px;position:relative}
ol.pipe::before{content:"";position:absolute;left:20px;right:20px;top:20px;border-top:1.5px dashed var(--line)}
ol.pipe li{position:relative}
ol.pipe .ic{background:var(--bg);border:1px solid var(--line);position:relative;margin-bottom:16px}
ol.pipe h3{margin:0 0 6px;font-size:18px}
ol.pipe h3 a{color:var(--ink);text-decoration-color:var(--line);text-underline-offset:4px}
ol.pipe h3 a:hover{text-decoration-color:var(--link)}
ol.pipe p{margin:0;color:var(--muted);font-size:15.5px;line-height:1.45}
@media (max-width:960px){ol.pipe{grid-template-columns:1fr;gap:22px}ol.pipe::before{left:20px;right:auto;top:20px;bottom:20px;border-top:0;border-left:1.5px dashed var(--line)}ol.pipe li{display:grid;grid-template-columns:40px 1fr;gap:0 16px}ol.pipe .ic{grid-row:1/3;margin:0}}

/* engine features */
.feat dt a{color:var(--ink);text-decoration-color:var(--line);text-underline-offset:4px}
.feat dt a:hover{text-decoration-color:var(--link)}

/* who */
.chips{list-style:none;padding:0;margin:0 0 36px;display:flex;flex-wrap:wrap;gap:10px}
.chips li{border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-size:15px;background:var(--bg)}
.cases{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.case{background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:24px}
.case span{font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--link)}
.case h3{margin:8px 0 8px;font-size:20px;line-height:1.25}
.case p{margin:0;color:var(--muted);font-size:16px;line-height:1.5}
.quote{margin:40px 0 0;max-width:760px}
.quote blockquote{margin:0;font-size:24px;line-height:1.35;font-weight:500;font-style:normal;color:var(--ink)}
.quote figcaption{margin-top:10px;color:var(--muted);font-size:15px}
@media (max-width:860px){.cases{grid-template-columns:1fr}.quote blockquote{font-size:20px}}

/* customers, partners */
.split2{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.btn-dark{background:var(--navy);color:#fff;margin-top:12px}
.btn-dark:hover{background:var(--blue)}
:root[data-theme="dark"] .btn-dark{background:var(--blue)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .btn-dark{background:var(--blue)}}
ol.mini{list-style:none;counter-reset:m;padding:0;margin:8px 0 0;display:grid;gap:18px}
ol.mini li{counter-increment:m;position:relative;padding-left:52px;color:var(--muted);font-size:17px;line-height:1.5}
ol.mini li::before{content:counter(m);position:absolute;left:0;top:-2px;width:34px;height:34px;border-radius:50%;border:1.5px solid var(--ink);display:flex;align-items:center;justify-content:center;font-weight:600;color:var(--ink);font-size:15px}
ol.mini b{color:var(--ink)}
.links{display:flex;gap:20px;flex-wrap:wrap;margin-top:18px}
.links a{font-weight:600}
.placeholder{border:2px dashed var(--line);border-radius:14px;padding:28px;background:var(--bg)}
.placeholder span{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#2F5596;background:#E4ECF8;padding:4px 8px;border-radius:4px}
.placeholder h3{margin:14px 0 6px;font-size:22px}
.placeholder p{margin:0;color:var(--muted);font-size:16px}
@media (max-width:860px){.split2{grid-template-columns:1fr;gap:28px}}

@media (prefers-reduced-motion: reduce){.card{transition:none}}
/* ===== site chrome: header with menus ===== */
.top{position:absolute;left:0;right:0;top:env(safe-area-inset-top,0px);z-index:30}
.top.solid{position:relative;background:var(--navy-deep)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;height:76px;gap:24px}
.top img{height:30px;width:auto;display:block}
.menu{display:flex;align-items:center;gap:4px;margin:0;padding:0;list-style:none}
.menu > li{position:relative}
.menu > li > a,.menu > li > button{display:inline-flex;align-items:center;gap:6px;color:#DCE5F0;text-decoration:none;font:inherit;font-size:15.5px;background:none;border:0;padding:10px 12px;border-radius:8px;cursor:pointer;min-height:44px}
.menu > li > a:hover,.menu > li > button:hover,.menu > li:focus-within > button{color:#fff;background:rgba(255,255,255,.07)}
.menu > li > button::after{content:"";width:6px;height:6px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(45deg) translateY(-2px);opacity:.7}
.drop{position:absolute;left:0;top:100%;min-width:250px;background:#fff;color:var(--navy);border-radius:12px;box-shadow:0 18px 40px rgba(10,20,30,.25);padding:10px;display:none;z-index:40}
.drop.wide{min-width:520px;display:none;grid-template-columns:1fr 1fr;gap:2px 10px}
.menu > li:hover > .drop,.menu > li:focus-within > .drop{display:block}
.menu > li:hover > .drop.wide,.menu > li:focus-within > .drop.wide{display:grid}
.drop a{display:block;padding:9px 12px;border-radius:8px;color:var(--navy);text-decoration:none;font-size:15px;line-height:1.3}
.drop a small{display:block;color:#5C6B7A;font-size:13px;margin-top:2px}
.drop a:hover{background:#F0F4FA}
.drop .lead{grid-column:1/-1;background:#F3F6FA;margin-bottom:4px}
.drop .lead b{color:var(--navy)}
.acts{display:flex;align-items:center;gap:10px}
.acts .login{color:#DCE5F0;text-decoration:none;font-size:15.5px;padding:10px 6px}
.acts .btn{min-height:40px;padding:0 18px;color:var(--navy)}
.burger{display:none;background:none;border:1px solid rgba(255,255,255,.3);color:#fff;border-radius:10px;width:44px;height:44px;cursor:pointer}
.burger span{display:block;width:18px;height:1.5px;background:#fff;margin:4px auto}
.mnav{display:none}
@media (max-width:1080px){
  .menu,.acts .login{display:none}
  .burger{display:block}
  .mnav[data-open="true"]{display:block;position:fixed;inset:0;z-index:60;background:var(--navy-deep);overflow:auto;padding:16px 20px 40px}
  .mnav .mhead{display:flex;justify-content:space-between;align-items:center;height:60px;margin-bottom:8px}
  .mnav details{border-bottom:1px solid rgba(255,255,255,.12)}
  .mnav summary{list-style:none;cursor:pointer;color:#fff;font-size:19px;font-weight:600;padding:16px 0;display:flex;justify-content:space-between}
  .mnav summary::-webkit-details-marker{display:none}
  .mnav summary::after{content:"+";color:#A9B8CA}
  .mnav details[open] summary::after{content:"–"}
  .mnav details a,.mnav .solo{display:block;color:#C9D5E3;text-decoration:none;padding:10px 0 10px 4px;font-size:16px}
  .mnav .solo{color:#fff;font-size:19px;font-weight:600;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.12)}
  .mnav .btn{margin-top:24px;width:100%;justify-content:center}
}
@media (max-width:600px){.acts .btn{display:none}}

/* ===== hero platform line ===== */
.platform{margin-top:30px;padding-top:20px;border-top:1px solid rgba(255,255,255,.14);max-width:440px}
.platform p{margin:0 0 12px;font-size:15px;color:#A9B8CA}
.platform p b{color:#fff;font-weight:600}
.platform ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}
.platform li{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:center;font-size:15.5px;color:#DCE5F0;line-height:1.35}
.platform svg{width:20px;height:20px;fill:none;stroke:var(--str);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:860px){
  .step.hero .card{padding-bottom:4px}
  .platform{margin-top:18px;padding-top:14px}
  .platform p{font-size:13.5px;margin-bottom:8px}
  .platform ul{grid-template-columns:1fr;gap:5px}
  .platform li{font-size:13.5px;grid-template-columns:18px 1fr;gap:8px}
  .platform svg{width:16px;height:16px}
}
@media (max-height:760px) and (max-width:860px){.platform ul li:nth-child(3){display:none}}

/* reconcile step: inputs */
.inputs-tg{list-style:none;padding:0;margin:14px 0 6px;display:grid;gap:8px}
.inputs-tg label{display:grid;grid-template-columns:20px 12px 1fr;gap:10px;align-items:center;font-size:15.5px;color:#DCE5F0;cursor:pointer;min-height:32px}
.inputs-tg input{width:18px;height:18px;accent-color:#fff;margin:0}
.inputs-tg i{width:11px;height:11px;border-radius:50%}
.in-note{font-size:14px;color:#A9B8CA;margin:4px 0 10px}
.inout{display:flex;gap:8px;align-items:center;font-size:13px;color:#A9B8CA;margin-top:4px}
.inout .ghost{width:12px;height:12px;border:1.5px solid #A9B8CA;border-radius:50%}
.inout .solid{width:22px;height:2.5px;background:#fff;border-radius:2px;margin-left:8px}

/* ===== homepage sections ===== */
.eyebrowless{margin-top:0}
.path{list-style:none;padding:0;margin:8px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:0;counter-reset:p;position:relative}
.path li{counter-increment:p;padding:0 22px 0 0;position:relative}
.path li::before{content:counter(p);width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;background:var(--bg);border:1.5px solid var(--ink);margin-bottom:16px;position:relative;z-index:1}
.path li:last-child::before{background:var(--navy);color:#fff;border-color:var(--navy)}
.path li::after{content:"";position:absolute;top:20px;left:40px;right:0;border-top:1.5px dashed var(--line)}
.path li:last-child::after{display:none}
.path h3{margin:0 0 6px;font-size:19px}
.path p{margin:0;color:var(--muted);font-size:15.5px;line-height:1.5}
.path .chips2{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.path .chips2 span{font-size:12.5px;font-weight:600;padding:3px 9px;border-radius:999px;border:1px solid var(--line);color:var(--muted)}
.path .chips2 span i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:0}
.mix{margin-top:44px;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--bg)}
.mix > div{padding:22px 24px;position:relative}
.mix > div + div{border-left:1px solid var(--line)}
.mix > div::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--mc)}
.mix h3{margin:0 0 4px;font-size:18px}
.mix p{margin:0;color:var(--muted);font-size:15px;line-height:1.45}
.mix .who{display:block;font-size:13px;font-weight:600;color:var(--muted);margin-bottom:8px}
.mix-foot{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:20px;flex-wrap:wrap}
.mix-foot p{margin:0;color:var(--muted);font-size:16px;max-width:60ch}
.link-arrow{font-weight:600;text-decoration:none;color:var(--link);white-space:nowrap}
.link-arrow:hover{text-decoration:underline}
@media (max-width:960px){.path{grid-template-columns:1fr;gap:26px}.path li{padding:0 0 0 58px}.path li::before{position:absolute;left:0;top:0}.path li::after{display:none}.mix{grid-template-columns:1fr}.mix > div + div{border-left:0;border-top:1px solid var(--line)}}

/* roles: 3x2 */
.desks.six{grid-template-columns:repeat(3,1fr)}
.desk .pain{margin:0 0 14px;color:var(--muted);font-size:15px;line-height:1.45}
.desk .day1{margin:14px 0 0;padding-top:12px;border-top:1px solid var(--line);font-size:14.5px;color:var(--ink);line-height:1.45}
.desk .day1 b{display:block;font-size:12.5px;color:var(--muted);font-weight:600;margin-bottom:2px}
.desk .hz{font-size:12.5px;font-weight:600;color:var(--muted);margin:2px 0 0}
.desk.first{border-color:var(--c-tac);box-shadow:inset 0 0 0 1px var(--c-tac)}
.desk .tagfirst{display:inline-block;font-size:12px;font-weight:700;color:#fff;background:var(--c-tac);border-radius:999px;padding:2px 9px;margin-left:8px;vertical-align:1px;letter-spacing:0;text-transform:none}
.mini.icon{display:flex;align-items:center;justify-content:center;background:var(--bg-2);border-radius:10px}
.mini.icon svg{width:auto;height:auto}
@media (max-width:1000px){.desks.six{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.desks.six{grid-template-columns:1fr}}

/* customer types */
.types{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:28px}
.type{font:inherit;text-align:left;border:1.5px solid var(--line);border-radius:12px;background:var(--bg);padding:16px;cursor:pointer;color:var(--ink);display:flex;flex-direction:column;gap:6px}
.type b{font-size:16.5px}
.type span{font-size:14px;color:var(--muted);line-height:1.4}
.type em{font-style:normal;font-size:13px;font-weight:600;color:var(--link);margin-top:auto;padding-top:6px}
.type[aria-pressed="true"]{border-color:var(--c-tac);box-shadow:inset 0 0 0 1px var(--c-tac)}
@media (max-width:960px){.types{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.types{grid-template-columns:1fr}}

/* proof */
.proof-top{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;margin-bottom:56px}
.cases9{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.case9{display:flex;flex-direction:column;gap:8px;border:1px solid var(--line);border-radius:14px;padding:20px;background:var(--bg);text-decoration:none;color:var(--ink);transition:border-color .15s}
.case9:hover{border-color:var(--link)}
.case9 span{font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--link)}
.case9 b{font-size:17px;line-height:1.3;font-weight:600}
.case9 em{font-style:normal;margin-top:auto;font-size:14px;color:var(--muted)}
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:48px}
.quotes figure{margin:0;border-top:2px solid var(--ink);padding-top:16px}
.quotes blockquote{margin:0;font-size:19px;line-height:1.4;color:var(--ink);font-style:normal;font-weight:500}
.quotes figcaption{margin-top:12px;font-size:14px;color:var(--muted)}
.quotes figcaption b{color:var(--ink);display:block}
.more-row{display:flex;justify-content:flex-end;margin-top:20px}
@media (max-width:960px){.proof-top{grid-template-columns:1fr;gap:32px}.cases9,.quotes{grid-template-columns:1fr}}

/* platform showcase */
.tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.tile{border:1px solid var(--line);border-radius:14px;padding:24px;background:var(--bg);display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center}
.tile h3{margin:0 0 6px;font-size:20px}
.tile h3 a{color:var(--ink);text-decoration-color:var(--line);text-underline-offset:4px}
.tile p{margin:0;color:var(--muted);font-size:15.5px;line-height:1.5}
.tile .vis{background:var(--bg-2);border-radius:10px;padding:14px;min-height:150px;display:flex;flex-direction:column;justify-content:center}
.vis svg{width:100%;height:auto;display:block}
.vis .rank{list-style:none;padding:0;margin:0;display:grid;gap:7px;font-size:13px}
.vis .rank li{display:flex;justify-content:space-between;gap:8px;color:var(--ink)}
.vis .rank li span:last-child{color:var(--c-mkt);letter-spacing:1px;white-space:nowrap}
.vis .models{display:grid;grid-template-columns:repeat(10,1fr);gap:3px}
.vis .models i{height:14px;border-radius:2px;background:var(--line)}
.vis .models i.best{background:var(--c-tac)}
.vis .cap{font-size:12.5px;color:var(--muted);margin-top:8px}
@media (max-width:960px){.tiles{grid-template-columns:1fr}}
@media (max-width:520px){.tile{grid-template-columns:1fr}}

/* gateways */
.templates{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.tpl{border:1px solid var(--line);border-radius:14px;padding:20px;background:var(--bg);text-decoration:none;color:var(--ink);display:flex;flex-direction:column;gap:10px}
.tpl:hover{border-color:var(--link)}
.tpl b{font-size:18px}
.tpl ul{list-style:none;padding:0;margin:0;display:grid;gap:5px;font-size:13.5px;color:var(--muted)}
.tpl ul li{display:flex;justify-content:space-between;gap:8px}
.tpl ul li span:last-child{color:var(--c-mkt);white-space:nowrap}
.tpl .acc{margin-top:auto;font-size:13.5px;color:var(--muted)}
.tpl .acc strong{color:var(--ink);font-size:16px}
.res2{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;margin-top:64px}
.posts{list-style:none;padding:0;margin:0;border-top:1.5px solid var(--ink)}
.posts li{border-bottom:1px solid var(--line)}
.posts a{display:flex;justify-content:space-between;gap:16px;padding:14px 0;text-decoration:none;color:var(--ink);font-size:16.5px;line-height:1.35}
.posts a:hover{color:var(--link)}
.posts a span:last-child{color:var(--muted);font-size:14px;white-space:nowrap}
.wp{background:var(--navy);color:#fff;border-radius:14px;padding:26px;display:flex;flex-direction:column;gap:12px}
.wp span{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--str)}
.wp h3{margin:0;font-size:22px;line-height:1.25}
.wp p{margin:0;color:#C9D5E3;font-size:15.5px}
.wp .btn{align-self:flex-start;margin-top:8px}
.inds{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.inds a{border:1px solid var(--line);border-radius:999px;padding:9px 16px;font-size:15px;color:var(--ink);text-decoration:none;background:var(--bg)}
.inds a:hover{border-color:var(--link);color:var(--link)}
.h3s{font-size:22px;margin:0 0 16px}
@media (max-width:960px){.templates{grid-template-columns:1fr}.res2{grid-template-columns:1fr}}

/* teasers */
.teasers{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.teaser{border-radius:16px;padding:32px;background:var(--navy);color:#fff;display:flex;flex-direction:column;gap:12px;text-decoration:none}
.teaser.light{background:var(--bg);color:var(--ink);border:1px solid var(--line)}
.teaser span{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--str)}
.teaser.light span{color:var(--link)}
.teaser h3{margin:0;font-size:26px;line-height:1.15;letter-spacing:-.01em}
.teaser p{margin:0;font-size:16px;color:#C9D5E3}
.teaser.light p{color:var(--muted)}
.teaser em{font-style:normal;font-weight:600;margin-top:auto;padding-top:10px}
@media (max-width:860px){.teasers{grid-template-columns:1fr}}

/* ===== subpages ===== */
.phero{background:var(--navy-deep);color:#fff;padding:72px 0 88px}
.phero .crumb{font-size:14px;color:#A9B8CA;margin:0 0 18px}
.phero .crumb a{color:#A9B8CA}
.phero h1{font-size:clamp(40px,5.2vw,68px);line-height:1.02;letter-spacing:-.025em;margin:0 0 22px;max-width:16ch}
.phero p.lede{font-size:20px;color:#C9D5E3;max-width:56ch;margin:0}
.phero .ctas{margin-top:30px}

/* top-down / bottom-up tree */
.tdbu{display:grid;grid-template-columns:minmax(260px,.8fr) 1.3fr;gap:40px;align-items:start}
.tabs3{display:grid;gap:10px}
.tabs3 button{font:inherit;text-align:left;border:1.5px solid var(--line);border-radius:12px;padding:14px 16px;background:var(--bg);color:var(--ink);cursor:pointer}
.tabs3 button b{display:block;font-size:17px}
.tabs3 button span{display:block;font-size:14px;color:var(--muted);margin-top:3px;line-height:1.4}
.tabs3 button[aria-selected="true"]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.tree{background:var(--bg-2);border-radius:16px;padding:26px}
.tree .lvl{display:grid;gap:12px;margin-bottom:34px;position:relative}
.tree .lvl:last-of-type{margin-bottom:0}
.tree .l0{grid-template-columns:1fr;justify-items:center}
.tree .l1{grid-template-columns:1fr 1fr}
.tree .l2{grid-template-columns:repeat(4,1fr)}
.tnode{background:var(--bg);border:1.5px solid var(--line);border-radius:10px;padding:10px 12px;text-align:center;min-width:120px;position:relative;transition:border-color .25s,background .25s}
.tnode small{display:block;font-size:12.5px;color:var(--muted)}
.tnode strong{display:block;font-size:22px;font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.tnode em{display:block;font-style:normal;font-size:12px;font-weight:600;margin-top:2px;min-height:15px}
.tnode.good{border-color:#2E9E6B}.tnode.good em{color:#1F7A50}
.tnode.bad{border-color:#C4574A}.tnode.bad em{color:#B23B37}
.tnode.src{background:color-mix(in srgb,var(--c-tac) 10%,var(--bg))}
.tree .arrows{display:flex;justify-content:center;gap:6px;font-size:13px;color:var(--muted);margin:-24px 0 10px}
.tree-note{margin:18px 0 0;font-size:15px;color:var(--ink);line-height:1.5}
.tree-cap{font-size:13px;color:var(--muted);margin-top:12px}
@media (max-width:960px){.tdbu{grid-template-columns:1fr}}
@media (max-width:600px){.tree{padding:16px}.tree .l2{grid-template-columns:1fr 1fr}.tnode{min-width:0;padding:8px}.tnode strong{font-size:18px}}

/* method */
.method{display:grid;grid-template-columns:1fr 1fr;gap:56px}
.method ol{margin:0;padding-left:20px;display:grid;gap:12px;color:var(--muted);font-size:16.5px}
.method ol b{color:var(--ink)}
.refs{list-style:none;padding:0;margin:0;display:grid;gap:12px;font-size:15px;color:var(--muted)}
@media (max-width:860px){.method{grid-template-columns:1fr;gap:28px}}

/* partners */
.ptypes{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ptype{border:1px solid var(--line);border-radius:14px;padding:24px;background:var(--bg);display:flex;flex-direction:column;gap:8px}
.ptype h3{margin:0;font-size:20px}
.ptype p{margin:0;color:var(--muted);font-size:15.5px;line-height:1.5}
.ptype a{margin-top:auto;padding-top:8px}
.sell{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(6,1fr);gap:0;counter-reset:s}
.sell li{counter-increment:s;padding-right:16px;position:relative}
.sell li::before{content:counter(s);display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--navy);color:#fff;font-weight:600;font-size:14px;margin-bottom:12px;position:relative;z-index:1}
.sell li::after{content:"";position:absolute;top:17px;left:34px;right:0;border-top:1.5px solid var(--line)}
.sell li:last-child::after{display:none}
.sell h3{margin:0 0 4px;font-size:16.5px}
.sell p{margin:0;font-size:14.5px;color:var(--muted);line-height:1.45}
.interview{display:grid;grid-template-columns:1fr 1.2fr;gap:0;border:2px dashed var(--line);border-radius:16px;overflow:hidden}
.interview .ph{background:var(--bg-2);min-height:260px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;color:var(--muted);font-size:14px}
.interview .ph .play{width:64px;height:64px;border-radius:50%;border:2px solid var(--muted);display:flex;align-items:center;justify-content:center}
.interview .ph .play::after{content:"";border:11px solid transparent;border-left:17px solid var(--muted);border-right:0;margin-left:5px}
.interview .tx{padding:28px}
.interview .tx span{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#2F5596;background:#E4ECF8;padding:4px 8px;border-radius:4px}
.interview .tx h3{margin:14px 0 8px;font-size:24px}
.interview .tx ul{margin:12px 0 0;padding-left:18px;color:var(--muted);font-size:15.5px;display:grid;gap:6px}
@media (max-width:960px){.ptypes{grid-template-columns:1fr}.sell{grid-template-columns:1fr 1fr;gap:24px}.sell li::after{display:none}.interview{grid-template-columns:1fr}}

/* customers page */
.whoami{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.whoami article{border:1px solid var(--line);border-radius:14px;padding:24px;background:var(--bg);display:flex;flex-direction:column;gap:10px}
.whoami .you{font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--link)}
.whoami h3{margin:0;font-size:20px;line-height:1.25}
.whoami p{margin:0;color:var(--muted);font-size:15.5px;line-height:1.5}
.whoami .next{margin-top:auto;padding-top:12px;border-top:1px solid var(--line);font-size:15px}
.whoami .next b{display:block;font-size:12.5px;color:var(--muted);font-weight:600}
.keep{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.keep div{border-radius:14px;padding:24px}
.keep .same{background:var(--bg-2)}
.keep .new{background:var(--navy);color:#fff}
.keep h3{margin:0 0 12px;font-size:19px}
.keep ul{margin:0;padding-left:18px;display:grid;gap:8px;font-size:16px}
.keep .same ul{color:var(--muted)}
.keep .new ul{color:#C9D5E3}
.contact-card{display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center;border:1px solid var(--line);border-radius:14px;padding:24px;background:var(--bg)}
.contact-card .av{width:56px;height:56px;border-radius:50%;background:var(--bg-2);display:flex;align-items:center;justify-content:center}
.contact-card .av svg{width:26px;height:26px;fill:none;stroke:var(--muted);stroke-width:1.6}
.contact-card h3{margin:0 0 4px;font-size:19px}
.contact-card p{margin:0;color:var(--muted);font-size:15.5px}
@media (max-width:960px){.whoami{grid-template-columns:1fr}.keep{grid-template-columns:1fr}.contact-card{grid-template-columns:1fr}}

/* footer sitemap */
.sitemap{display:grid;grid-template-columns:1.2fr repeat(5,1fr);gap:28px;border-top:1px solid rgba(255,255,255,.12);margin-top:80px;padding-top:40px;font-size:14.5px}
.sitemap h4{margin:0 0 12px;color:#fff;font-size:14px;font-weight:600}
.sitemap ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.sitemap a{color:#A9B8CA;text-decoration:none}
.sitemap a:hover{color:#fff}
.sitemap .brand img{height:28px;width:auto;margin-bottom:12px}
.sitemap .brand p{color:#A9B8CA;margin:0 0 12px;font-size:14px;line-height:1.5}
.refs-foot{margin-top:40px;padding-top:24px;border-top:1px solid rgba(255,255,255,.12);font-size:13px;color:#8C9CB0;display:grid;gap:6px}
.refs-foot b{color:#A9B8CA;font-weight:600}
.legal{margin-top:24px;font-size:13px;color:#8C9CB0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}
.legal a{color:#8C9CB0}
@media (max-width:1000px){.sitemap{grid-template-columns:1fr 1fr 1fr}}
@media (max-width:600px){.sitemap{grid-template-columns:1fr 1fr}.sitemap .brand{grid-column:1/-1}}
.final .foot{display:none}
.path.p5{grid-template-columns:repeat(5,1fr)}
@media (max-width:960px){.path.p5{grid-template-columns:1fr}}
/* hero fit */
.step.hero{align-items:flex-start;padding-top:max(104px,12vh)}
.step.hero .card{max-width:480px}
.step.hero h1{font-size:clamp(44px,4.9vw,70px);margin-bottom:20px}
.step.hero .lede{font-size:19px;max-width:34ch}
.step.hero .ctas{margin-top:24px}
@media (max-width:860px){.step.hero{align-items:flex-end;padding-top:0}.step.hero h1{font-size:40px}}
.mob{display:none}
@media (max-width:860px){
  .mob{display:inline}
  .platform ul{display:none}
  .platform p{margin:0;font-size:14px;line-height:1.45}
  .inputs-tg{margin:8px 0 2px;gap:2px}
  .inputs-tg label{font-size:14.5px;min-height:30px}
  .in-note{font-size:13px;margin:2px 0 6px}
  .step .gaps{flex-wrap:nowrap;margin-top:10px}
  .step .gap{min-width:0;flex:1;padding:8px 10px}
  .step .gap span{font-size:12px}
  .step .gap strong{font-size:18px}
}
.top .drop a{color:var(--navy);font-size:15px}
.top .drop a:hover{color:var(--navy)}
/* ===== copied content pages ===== */
.phero .ebr{display:inline-block;font-size:14px;font-weight:600;color:var(--str);margin-bottom:14px}
.phero h1{max-width:22ch;font-size:clamp(36px,4.6vw,60px)}
.withside{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:56px;align-items:start}
.narrowc .cmain{max-width:760px}
.cmain{min-width:0}
.cblock{margin:0 0 44px}
.cblock h2{font-size:clamp(24px,2.4vw,30px);line-height:1.2;letter-spacing:-.01em;margin:0 0 14px}
.cblock p{color:var(--muted);font-size:17.5px;line-height:1.65;margin:0 0 14px;max-width:68ch}
.cl{margin:0 0 14px;padding-left:20px;display:grid;gap:8px;color:var(--muted);font-size:17px;line-height:1.55;max-width:68ch}
.cquote{margin:0 0 40px;padding:22px 26px;border-left:3px solid var(--c-tac);background:var(--bg-2);border-radius:0 12px 12px 0}
.cquote blockquote{margin:0;font-size:20px;line-height:1.45;color:var(--ink);font-style:normal;font-weight:500}
.cquote figcaption{margin-top:10px;font-size:14.5px;color:var(--muted)}
.cstats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin:0 0 44px}
.cstats div{background:var(--bg-2);border-radius:12px;padding:18px}
.cstats dt{font-size:30px;font-weight:700;letter-spacing:-.02em;color:var(--link)}
.cstats dd{margin:4px 0 0;color:var(--muted);font-size:14.5px;line-height:1.4}
.faq{display:grid;gap:10px}
.faq details{border:1px solid var(--line);border-radius:12px;padding:0 18px;background:var(--bg)}
.faq summary{cursor:pointer;font-weight:600;font-size:17px;padding:16px 0;list-style:none;display:flex;justify-content:space-between;gap:12px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--muted);font-weight:400}
.faq details[open] summary::after{content:"–"}
.faq details p{margin:0 0 16px}
.csteps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;counter-reset:cs}
.csteps li{counter-increment:cs;border:1px solid var(--line);border-radius:12px;padding:18px;background:var(--bg)}
.csteps li::before{content:counter(cs);display:flex;width:30px;height:30px;border-radius:50%;background:var(--navy);color:#fff;align-items:center;justify-content:center;font-weight:600;font-size:14px;margin-bottom:10px}
.csteps h3{margin:0 0 4px;font-size:17px}
.csteps p{margin:0;font-size:15px;color:var(--muted);line-height:1.5}
.rel{list-style:none;padding:0;margin:0;border-top:1.5px solid var(--ink)}
.rel li{border-bottom:1px solid var(--line)}
.rel a{display:block;padding:13px 0;color:var(--ink);text-decoration:none;font-size:16.5px}
.rel a:hover{color:var(--link)}
.mig{border:1px dashed #E0A33A;background:color-mix(in srgb,#3D65AA 12%,var(--bg));border-radius:12px;padding:14px 18px;font-size:14.5px;color:var(--ink);margin-bottom:36px;line-height:1.5}
.cform{position:sticky;top:24px;border:1px solid var(--line);border-radius:14px;padding:24px;background:var(--bg-2)}
.cform h3{margin:0 0 14px;font-size:20px}
.cform form{display:grid;gap:12px}
.cform label{display:grid;gap:4px;font-size:14px;color:var(--muted)}
.cform input,.cform textarea{font:inherit;font-size:16px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);min-height:44px}
.cform .btn{justify-content:center;margin-top:6px}
.cform .ok{color:var(--ink);font-size:16px}
.fine{font-size:13px;color:var(--muted);margin:6px 0 0}
.hstats{display:flex;gap:36px;flex-wrap:wrap;margin:28px 0 0}
.hstats dt{font-size:36px;font-weight:700;letter-spacing:-.02em;color:#fff}
.hstats dd{margin:2px 0 0;font-size:14px;color:#A9B8CA}
.hfigs{list-style:none;padding:0;margin:26px 0 0;display:flex;gap:12px;flex-wrap:wrap}
.hfigs li{border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:8px 16px;font-size:15px;color:#fff}
.mv{color:var(--muted);font-size:15.5px}
.mv b{color:var(--ink);font-weight:600}
table.ind{width:100%;border-collapse:collapse;font-size:15.5px;margin-top:8px}
table.ind th{text-align:left;font-size:13px;color:var(--muted);font-weight:600;padding:8px 0;border-bottom:1.5px solid var(--ink)}
table.ind td{padding:10px 0;border-bottom:1px solid var(--line);vertical-align:top}
table.ind td.st,table.ind th:last-child{text-align:right;white-space:nowrap;color:var(--c-mkt);padding-left:16px}
.lgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.lgh{font-size:24px;margin:40px 0 16px}
.lgh:first-child{margin-top:0}
.lcard{display:flex;flex-direction:column;gap:8px;border:1px solid var(--line);border-radius:14px;padding:20px;background:var(--bg);text-decoration:none;color:var(--ink)}
.lcard:hover{border-color:var(--link)}
.lcard span{font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--link)}
.lcard b{font-size:17.5px;line-height:1.3;font-weight:600}
.lcard p{margin:0;color:var(--muted);font-size:15px;line-height:1.45}
.lcard em{font-style:normal;margin-top:auto;padding-top:6px;font-size:14px;color:var(--muted)}
.vgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.vcard{border:1px solid var(--line);border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:6px}
.vcard span{font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--link)}
.vcard h3{margin:0;font-size:18px;line-height:1.3}
.vcard .sp{font-weight:600;color:var(--ink)!important}
.vcard p{margin:0;color:var(--muted);font-size:15px;line-height:1.45}
.vcard a{margin-top:auto;padding-top:8px}
.outline{margin:0;padding-left:22px;display:grid;gap:8px;font-size:17px;color:var(--ink)}
.ctabox{margin-top:40px;background:var(--navy);color:#fff;border-radius:14px;padding:26px}
.ctabox h3{margin:0 0 6px;font-size:22px}.ctabox p{color:#C9D5E3;margin:0 0 16px}
.ctabox .btn-dark{background:#fff;color:var(--navy)}
@media (max-width:960px){.withside{grid-template-columns:1fr;gap:32px}.cform{position:static}.lgrid,.vgrid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.lgrid,.vgrid{grid-template-columns:1fr}.hstats{gap:22px}.hstats dt{font-size:28px}}
.platform .about-line{font-size:15.5px;line-height:1.6;color:#A9B8CA;margin:0;max-width:46ch}
.platform .about-line b{color:#fff;font-weight:600}
@media (max-width:860px){.platform .about-line{font-size:13.5px;line-height:1.5}}
/* hero: built-on line */
.built-on{display:flex;gap:10px;align-items:flex-start;margin-top:26px;padding-top:18px;border-top:1px solid #34445A;color:#A9B8CA;text-decoration:none;font-size:14.5px;line-height:1.45;max-width:40ch}
.built-on:hover{color:#fff}
.built-on .dot{flex:none;width:8px;height:8px;border-radius:50%;background:#3D65AA;margin-top:6px}
@media (max-width:860px){.built-on{display:none}}
/* engine: platform behind Indicio One */
.pfx{background:var(--navy);color:#fff;padding:96px 0}
.pfx .kicker{display:block;color:#3D65AA;font-weight:600;font-size:16px;margin-bottom:12px}
.pfx h2{font-size:clamp(30px,3.4vw,46px);line-height:1.08;letter-spacing:-.02em;margin:0 0 18px;max-width:20ch}
.pfx p.intro{color:#C9D5E3;max-width:62ch}
.pfx-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;margin-top:44px}
.intro-fig{margin:0;background:#1A2533;border:1px solid #2C3B4D;border-radius:16px;padding:22px 22px 16px;position:sticky;top:24px}
.intro-viz{width:100%;height:auto;display:block}
.intro-fig figcaption{display:flex;flex-wrap:wrap;gap:16px;font-size:13.5px;color:#C9D5E3;margin-top:10px}
.intro-fig figcaption i{display:inline-block;width:18px;height:0;vertical-align:middle;margin-right:7px;border-top:2.4px solid #fff}
.intro-fig .k-ind{border-top:2px dashed #6D98E0}.intro-fig .k-fc{border-top-color:#3D65AA}
.intro-fig .cap{font-size:12.5px;color:#7F90A4;margin:8px 0 0}
.pfx-flow{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.pfx-flow li{border-left:3px solid var(--mc);background:#243243;border-radius:0 12px 12px 0;padding:18px 22px}
.pfx-flow li.one{border-left-color:#fff;background:#fff;color:var(--navy)}
.pfx-flow .h{display:block;font-size:13.5px;font-weight:600;color:var(--mc);margin-bottom:4px}
.pfx-flow li.one .h{color:#3D65AA}
.pfx-flow h3{margin:0 0 6px;font-size:20px;line-height:1.25}
.pfx-flow p{margin:0;font-size:16px;line-height:1.5;color:#C9D5E3}
.pfx-flow li.one p{color:#4F5E6E}
.pfx .more-row a{color:#3D65AA}
@media (max-width:960px){.pfx{padding:64px 0}.pfx-grid{grid-template-columns:1fr;gap:28px}.intro-fig{position:static}}
/* hero step: Indicio builds */
.card .kick{display:block;color:#C8D6FF;font-weight:600;font-size:14px;letter-spacing:.02em;margin-bottom:10px}
.tourney{margin:18px 0 4px;padding:14px;border:1px solid rgba(200,214,255,.18);border-radius:12px;background:rgba(109,152,224,.06)}
.tourney .cells{display:grid;grid-template-columns:repeat(21,1fr);gap:4px}
.tourney i{display:block;aspect-ratio:1;border-radius:2px;background:rgba(255,255,255,.08);transition:background .25s,box-shadow .25s,transform .25s}
.tourney i.t{background:rgba(109,152,224,.55)}
.tourney i.lose{background:rgba(255,255,255,.12)}
.tourney i.best{background:#3D65AA;box-shadow:0 0 10px rgba(61,101,170,.8);transform:scale(1.15)}
.tcap{display:flex;gap:8px;align-items:baseline;margin-top:10px;font-size:13.5px;color:#A9B8CA}
.tcap .n{font-weight:700;color:#fff;font-variant-numeric:tabular-nums;min-width:2.2ch}
.tcap b{margin-left:auto;color:#3D65AA;font-weight:600;opacity:0;transition:opacity .4s}
.tourney.done .tcap b{opacity:1}
@media (max-width:860px){.tourney{margin:10px 0 2px;padding:10px}.tourney .cells{gap:3px}.card.build h2{font-size:22px}}
/* system map */
.sysmap{background:linear-gradient(180deg,#16202B 0%,#1E2A37 100%);color:#fff;padding:110px 0 100px;position:relative;overflow:hidden}
.sysmap::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(200,214,255,.07) 1px,transparent 1px);background-size:22px 22px;pointer-events:none}
.sysmap .wrap{position:relative}
.sysmap .kicker{display:block;color:#3D65AA;font-weight:600;font-size:16px;margin-bottom:12px}
.sysmap h2{font-size:clamp(30px,3.6vw,50px);line-height:1.06;letter-spacing:-.022em;margin:0 0 18px;max-width:22ch}
.sysmap .lead{color:#C9D5E3;font-size:19px;max-width:60ch;margin:0}
.sm-pick{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:36px 0 10px}
.sm-pick-l{font-size:14px;color:#A9B8CA;margin-right:6px}
.mod{display:inline-flex;align-items:center;gap:9px;min-height:42px;padding:0 16px;border-radius:999px;border:1px solid #3A4B60;background:transparent;color:#A9B8CA;font:inherit;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}
.mod i{width:14px;height:14px;border-radius:4px;border:2px solid currentColor;transition:all .2s}
.mod[data-mod=mkt]{--mc:#3D65AA}.mod[data-mod=tac]{--mc:#6D98E0}.mod[data-mod=op]{--mc:#A9C6F0}
.mod.on{border-color:var(--mc);color:#fff;background:color-mix(in srgb,var(--mc) 14%,transparent)}
.mod.on i{background:var(--mc);border-color:var(--mc)}
.mod:focus-visible{outline:2px solid #fff;outline-offset:2px}
.sm-status{min-height:1.6em;color:#C9D5E3;font-size:16px;margin:4px 0 0}
.sm-status b{color:#fff}
.sm-stage{margin-top:26px}
.sm-svg{width:100%;height:auto;display:block;overflow:visible;font-family:var(--font)}
.sm-h{font-size:13px;font-weight:600;fill:#7F90A4;letter-spacing:.04em;text-transform:uppercase}
.sm-platbox{fill:rgba(109,152,224,.06);stroke:rgba(200,214,255,.22);stroke-dasharray:5 5}
.sm-plat.on .sm-platbox{stroke:rgba(200,214,255,.45)}
.sm-plat-t{font-size:12.5px;fill:#A9B8CA;font-weight:500}
.sm-box{fill:#223042;stroke:#34445A;transition:all .3s}
.sm-node{cursor:pointer;opacity:.32;transition:opacity .35s}
.sm-node.on{opacity:1}
.sm-node:hover .sm-box,.sm-node:focus .sm-box{stroke:#C8D6FF}
.sm-node.cur .sm-box{stroke:#fff;stroke-width:1.5}
.sm-node:focus{outline:none}
.g-plat .sm-box{fill:#26364A}
.g-out .sm-box{fill:#1A2533}
.sm-wire{fill:none;stroke:#34445A;stroke-width:1.5}
.sm-flow{fill:none;stroke-width:2.2;stroke-linecap:round;stroke-dasharray:3 13;opacity:0;transition:opacity .35s}
.sm-edge.on .sm-flow{opacity:.95;animation:smflow 1.1s linear infinite}
.sm-edge.on .sm-wire{stroke:#3E5068}
.sm-edge.faint .sm-flow{stroke-dasharray:2 14;stroke-width:1.6}
.sm-edge.faint.on .sm-flow{opacity:.45}
.sm-edge.rec .sm-flow{stroke:#fff;stroke-width:3}
.sm-edge.hl .sm-wire{stroke:#C8D6FF;stroke-width:2}
@keyframes smflow{to{stroke-dashoffset:-16}}
.sm-onebg{fill:#2A3A50;stroke:#5B6E86;stroke-width:1.5;transition:all .4s}
.sm-halo{fill:none;stroke:rgba(255,255,255,0);stroke-width:1;transition:all .4s}
.sm-node.rec .sm-onebg{fill:#fff;stroke:#fff}
.sm-node.rec .sm-halo{stroke:rgba(255,255,255,.35);animation:smpulse 2.4s ease-out infinite;transform-origin:center;transform-box:fill-box}
.sm-one-t{font-size:16px;font-weight:700;fill:#fff}
.sm-one-s{font-size:12px;fill:#A9B8CA}
.sm-node.rec .sm-one-t{fill:#1E2A37}.sm-node.rec .sm-one-s{fill:#3D65AA;font-weight:600}
@keyframes smpulse{0%{transform:scale(.92);opacity:1}100%{transform:scale(1.18);opacity:0}}
.sm-detail{margin-top:30px;border-left:3px solid var(--dc,#fff);padding:4px 0 4px 20px;max-width:70ch;min-height:96px}
.sm-dk{display:block;font-size:13px;color:#A9B8CA;text-transform:uppercase;letter-spacing:.05em;font-weight:600}
.sm-detail h3{margin:4px 0 6px;font-size:22px}
.sm-detail p{margin:0;color:#C9D5E3;font-size:16.5px}
@media (max-width:760px){.sysmap{padding:72px 0}.sysmap .lead{font-size:16.5px}.mod{font-size:14px;min-height:38px;padding:0 13px}.sm-pick-l{width:100%}.sm-h{font-size:11.5px}.sm-one-t{font-size:15px}}
@media (prefers-reduced-motion:reduce){.sm-edge.on .sm-flow,.sm-node.rec .sm-halo{animation:none}}
.sm-one-s2{font-size:10.5px;fill:#7F90A4}
.sm-node.rec .sm-one-s2{fill:#4F5E6E}
/* benefits bento */
.benefits{background:var(--bg)}
.bento{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}
.bt-tile{border:1px solid var(--line);border-radius:18px;padding:26px;background:var(--bg-2);display:flex;flex-direction:column;gap:10px;overflow:hidden}
.bt-tile.big{grid-column:span 2;flex-direction:row;align-items:center;gap:24px;background:linear-gradient(135deg,var(--bg-2),var(--bg))}
.bt-tile.big .bt-copy{flex:0 0 36%}
.bt-tile.big .bviz{flex:1;min-width:0}
.bt-k{font-size:13px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--link)}
.bt-tile h3{margin:0;font-size:22px;line-height:1.2}
.bt-tile p{margin:0;color:var(--muted);font-size:15.5px;line-height:1.5}
.bviz{width:100%;height:auto;display:block;margin:6px 0;overflow:visible}
.bviz .bt{font-family:var(--font);font-size:14px;font-weight:600;fill:var(--ink)}
.bviz .bt.s{font-size:12px;font-weight:500;fill:var(--muted)}
.bviz .bt.w{fill:var(--bg)}
.bviz .draw{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.4s cubic-bezier(.4,0,.2,1)}
.bviz .draw.d2{transition-delay:.9s}
.bviz .grow{transform:scaleX(0);transform-box:fill-box;transform-origin:left;transition:transform 1.1s cubic-bezier(.4,0,.2,1) .2s}
.bviz .grow.rt{transform-origin:right}.bviz .grow.g2{transition-delay:.5s}
.bviz .pop{opacity:0;transform:translateY(6px);transition:all .6s ease 1.3s}
.bviz .pulse{opacity:0}
.in .bviz .draw{stroke-dashoffset:0}
.in .bviz .grow{transform:none}
.in .bviz .pop{opacity:1;transform:none}
.in .bviz .pulse{animation:btpulse 2.4s ease-out 1.6s infinite;transform-box:fill-box;transform-origin:center}
@keyframes btpulse{0%{opacity:.5;transform:scale(1)}100%{opacity:0;transform:scale(3.2)}}
.bviz path.draw[stroke-dasharray="1"]{stroke-dasharray:1}
@media (max-width:1000px){.bento{grid-template-columns:1fr 1fr}.bt-tile.big{grid-column:1/-1}}
@media (max-width:700px){.bento{grid-template-columns:1fr}.bt-tile.big{flex-direction:column;align-items:stretch}.bt-tile{padding:20px}}
/* reveal */
.rv{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none}.bviz .draw{stroke-dashoffset:0;transition:none}.bviz .grow{transform:none;transition:none}.bviz .pop{opacity:1;transform:none;transition:none}}
/* modular horizon bars */
.kicker2{display:block;color:var(--link);font-weight:600;font-size:15px;margin-bottom:10px}
.hbar{width:100%;max-width:240px;height:auto;display:block;margin:0 0 18px;overflow:visible}
.hbar .seg{fill:none;stroke:var(--line);stroke-width:1.5;stroke-dasharray:4 3;transition:fill .5s,stroke .5s}
.hbar .sl{font-family:var(--font);font-size:11px;fill:var(--muted)}
.path.in .hbar .seg.on{fill:var(--sc);stroke:var(--sc);stroke-dasharray:none}
.hbar .oneline{fill:none;stroke:var(--ink);stroke-width:3.5;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1s ease 1.4s}
.path.in .hbar .oneline{stroke-dashoffset:0}
.hbar .mag circle{fill:var(--bg);stroke:var(--ink);stroke-width:2.5}.hbar .mag path{stroke:var(--ink);stroke-width:3;stroke-linecap:round}
.path li:nth-child(2) .seg{transition-delay:.3s}.path li:nth-child(3) .seg{transition-delay:.7s}.path li:nth-child(4) .seg{transition-delay:1.1s}
.path.rv{opacity:1;transform:none}
/* benchmark ranges */
.ranges{display:grid;gap:20px;margin-top:16px}
.rg-top{display:flex;align-items:baseline;gap:12px;margin-bottom:8px}
.rg-top strong{font-size:26px;letter-spacing:-.01em;color:var(--link);min-width:4.6em}
.rg-top span{color:var(--muted);font-size:15px}
.rg-track{position:relative;height:12px;border-radius:6px;background:var(--bg-2)}
.rg-track i{position:absolute;top:0;bottom:0;border-radius:6px;background:linear-gradient(90deg,var(--c-tac),var(--link));transform:scaleX(0);transform-origin:left;transition:transform 1s cubic-bezier(.4,0,.2,1)}
.ranges.in .rg-track i{transform:none}
.ranges .rg:nth-child(2) i{transition-delay:.15s}.ranges .rg:nth-child(3) i{transition-delay:.3s}.ranges .rg:nth-child(4) i{transition-delay:.45s}
.rg-axis{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-top:-8px}
.ranges.rv{opacity:1;transform:none}
.bars .bar-fill{transform:scaleX(0);transform-origin:left;transition:transform 1.2s cubic-bezier(.4,0,.2,1)}
.bars.in .bar-fill{transform:none}
.bars .bar-row:nth-child(2) .bar-fill{transition-delay:.2s}.bars .bar-row:nth-child(3) .bar-fill{transition-delay:.4s}
.tile.rv .rank li{opacity:0;transform:translateX(-8px);transition:all .45s ease}
.tile.rv.in .rank li{opacity:1;transform:none}
.tile.rv.in .rank li:nth-child(2){transition-delay:.15s}.tile.rv.in .rank li:nth-child(3){transition-delay:.3s}.tile.rv.in .rank li:nth-child(4){transition-delay:.45s}
.tile.rv svg rect{transform:scaleX(0);transform-box:fill-box;transform-origin:right;transition:transform .9s ease .3s}
.tile.rv svg rect[x="90"]{transform-origin:left}
.tile.rv.in svg rect{transform:none}
.tile.rv:nth-child(2){transition-delay:.1s}.tile.rv:nth-child(4){transition-delay:.1s}
@media (prefers-reduced-motion:reduce){.bars .bar-fill,.tile.rv .rank li,.tile.rv svg rect,.rg-track i,.hbar .seg,.hbar .oneline{transition:none!important;transform:none!important;opacity:1!important}}
.bt-tile.big{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr);gap:28px}
.bviz.conv .bt{font-size:20px}
.bviz.conv .bt.w{font-size:15px}
@media (max-width:700px){.bt-tile.big{grid-template-columns:1fr}}
/* deck pass */
.card .cost{font-size:15px;color:#C9D5E3;border-left:2px solid #E08A7E;padding-left:12px;margin-top:12px}
.bt-tile.wide{grid-column:1/-1}
.bt-src{font-size:12.5px!important;color:var(--muted)!important;margin-top:10px!important}
.stockstat{display:flex;gap:16px;align-items:center;margin-top:22px;padding:18px 20px;border-radius:14px;background:var(--navy);color:#fff}
.stockstat strong{font-size:40px;letter-spacing:-.02em;line-height:1}
.stockstat span{font-size:14.5px;color:#C9D5E3;line-height:1.45}
.cases9.c4{grid-template-columns:repeat(2,1fr)}
.case9 p{margin:6px 0 10px;font-size:14.5px;color:var(--muted);line-height:1.45}
.quotes.q2{grid-template-columns:1.3fr 1fr;align-items:stretch}
.nfp{display:flex;flex-direction:column;gap:10px;padding:26px;border-radius:16px;background:var(--navy);color:#fff;text-decoration:none}
.nfp span{color:#3D65AA;font-weight:700}
.nfp b{font-size:22px;line-height:1.25}
.nfp em{font-style:normal;color:#C8D6FF;font-weight:600;margin-top:auto}
.runways{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:40px}
.runways>div{border:1px solid var(--line);background:var(--bg);border-radius:14px;padding:22px}
.runways span{font-size:13px;font-weight:600;color:var(--link);text-transform:uppercase;letter-spacing:.05em}
.runways h3{margin:6px 0;font-size:19px}.runways p{margin:0;color:var(--muted);font-size:15.5px}
@media (max-width:760px){.cases9.c4,.quotes.q2,.runways{grid-template-columns:1fr}.stockstat strong{font-size:32px}}
.keepadd{display:grid;grid-template-columns:1fr 1.1fr;gap:20px;margin-top:36px}
.ka-col{display:grid;gap:14px}
.ka{border:1px solid var(--line);border-radius:14px;padding:20px 22px;background:var(--bg-2)}
.ka span{display:block;font-weight:700;color:var(--link);margin-bottom:4px}
.ka p{margin:0;color:var(--ink);font-size:16px}
.ka-take{background:var(--navy);color:#fff;border-radius:16px;padding:28px}
.ka-take h3{margin:0 0 12px;font-size:21px}
.ka-take ul{margin:0;padding-left:20px;display:grid;gap:10px;color:#DCE5F0;font-size:15.5px}
.ka-first{margin:18px 0 0;padding-top:14px;border-top:1px solid #3A4B60;color:#3D65AA;font-weight:600}
@media (max-width:860px){.keepadd{grid-template-columns:1fr}}
/* ===== kit: authored pages ===== */
.phero .aud{display:inline-block;font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#C8D6FF;border:1px solid #3A4B60;border-radius:999px;padding:4px 12px;margin:0 0 16px}
.phero .aud + .ebr{display:block}
.phero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px;align-items:center}
.phero-aside{background:#1A2533;border:1px solid #2C3B4D;border-radius:18px;padding:22px}
@media (max-width:960px){.phero-grid{grid-template-columns:1fr;gap:28px}}
.kcards{display:grid;gap:16px;margin-top:28px}
.kcards.c2{grid-template-columns:repeat(2,1fr)}.kcards.c3{grid-template-columns:repeat(3,1fr)}.kcards.c4{grid-template-columns:repeat(4,1fr)}
.kcard{display:flex;flex-direction:column;gap:8px;border:1px solid var(--line);border-radius:16px;padding:22px;background:var(--bg);color:var(--ink);text-decoration:none;transition:border-color .2s,transform .2s}
a.kcard:hover{border-color:var(--link);transform:translateY(-2px)}
.kcard span{font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--link)}
.kcard b{font-size:19px;line-height:1.25}
.kcard p{margin:0;color:var(--muted);font-size:15.5px;line-height:1.5}
.kcard em{font-style:normal;margin-top:auto;padding-top:8px;font-weight:600;color:var(--link);font-size:15px}
.kcard em::after{content:" →"}
.band.alt .kcard{background:var(--bg)}
.kpoints{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:14px}
.kpoints li{display:grid;grid-template-columns:minmax(150px,220px) 1fr;gap:18px;padding:16px 0;border-top:1px solid var(--line)}
.kpoints b{font-size:17.5px}.kpoints span{color:var(--muted);font-size:16.5px;line-height:1.55}
.kstats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:18px;margin:28px 0 0}
.kstats div{border-left:3px solid var(--link);padding:4px 0 4px 16px}
.kstats dt{font-size:34px;font-weight:700;letter-spacing:-.02em;line-height:1.1}
.kstats dd{margin:6px 0 0;color:var(--muted);font-size:15px}
.ksplit{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}
.ksplit.atop{align-items:start}
.nextsteps{background:var(--bg-2);border-top:1px solid var(--line)}
.ns-head{display:grid;grid-template-columns:1fr auto;gap:8px 32px;align-items:end}
.ns-head h2{margin:0;grid-column:1}.ns-head p{margin:0;color:var(--muted);grid-column:1;max-width:62ch}
.ns-head .btn{grid-column:2;grid-row:1/3}
.mcta{display:none}
@media (max-width:860px){
  .kcards.c3,.kcards.c4,.kcards.c2,.ksplit{grid-template-columns:1fr}.ksplit{gap:28px}
  .kpoints li{grid-template-columns:1fr;gap:4px}
  .ns-head{grid-template-columns:1fr}.ns-head .btn{grid-column:1;grid-row:auto;justify-self:start;margin-top:10px}
  .mcta{display:flex;position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:50;justify-content:center;align-items:center;min-height:50px;border-radius:999px;background:#3D65AA;color:#fff;font-weight:700;text-decoration:none;box-shadow:0 10px 30px rgba(10,20,30,.35);transform:translateY(140%);transition:transform .3s}
  .mcta.show{transform:none}
  footer.final{padding-bottom:96px}
}
/* value page */
.vh-aside span{display:block;font-size:13px;color:#A9B8CA;text-transform:uppercase;letter-spacing:.05em;font-weight:600}
.vh-aside b{display:block;font-size:22px;line-height:1.3;margin:10px 0 14px;color:#fff}
.vh-aside .link-arrow{color:#3D65AA}
.mk-chain{display:grid;grid-template-columns:1fr 34px 1fr 34px 1fr 34px 1fr;align-items:stretch;margin-top:36px}
.mk-node{border:1px solid var(--line);border-radius:16px;padding:20px;background:var(--bg-2);display:flex;flex-direction:column;gap:6px}
.mk-node.first{background:var(--navy);color:#fff;border-color:var(--navy)}
.mk-k{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--link)}
.mk-node.first .mk-k{color:#3D65AA}
.mk-node b{font-size:17px}
.mk-node strong{font-size:30px;letter-spacing:-.02em;line-height:1.1;color:var(--link)}
.mk-node.first strong{color:#fff}
.mk-node p{margin:4px 0 0;font-size:14.5px;color:var(--muted);line-height:1.45}
.mk-node.first p{color:#C9D5E3}
.mk-bar{position:relative;height:8px;border-radius:4px;background:color-mix(in srgb,var(--link) 14%,transparent);margin:6px 0}
.mk-node.first .mk-bar{background:rgba(255,255,255,.15)}
.mk-bar i{position:absolute;top:0;bottom:0;border-radius:4px;background:var(--link);transform:scaleX(0);transform-origin:left;transition:transform 1s ease}
.mk-node.first .mk-bar i{background:#3D65AA}
.mk-chain.in .mk-bar i{transform:none}
.mk-chain .mk-node:nth-child(3) i{transition-delay:.3s}.mk-chain .mk-node:nth-child(5) i{transition-delay:.6s}.mk-chain .mk-node:nth-child(7) i{transition-delay:.9s}
.mk-arrow{position:relative}
.mk-arrow::before{content:"";position:absolute;left:6px;right:6px;top:50%;border-top:2px solid var(--muted);opacity:.5}
.mk-arrow::after{content:"";position:absolute;right:4px;top:calc(50% - 5px);border:5px solid transparent;border-left:7px solid var(--muted);opacity:.6}
.mk-src{margin-top:16px}
.vc-profiles,.vc-scn{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.vc-profiles span,.vc-scn span{font-size:14px;color:var(--muted);margin-right:6px;width:100%}
.vc-profiles button,.vc-scn button{font:inherit;font-size:14.5px;font-weight:600;min-height:40px;padding:0 16px;border-radius:999px;border:1px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer}
.vc-profiles button[aria-pressed="true"],.vc-scn button[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:#fff}
.vc-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:24px;margin-top:22px}
.vc-in,.vc-out{border:1px solid var(--line);border-radius:16px;background:var(--bg);padding:24px}
.vc-in h3{margin:0 0 6px}
.vc-in label{display:grid;grid-template-columns:1fr auto;gap:4px 12px;margin-top:16px;font-size:15px;color:var(--muted)}
.vc-in output{font-weight:700;color:var(--ink)}
.vc-in input{grid-column:1/-1;width:100%;accent-color:var(--link)}
.vc-in small{grid-column:1/-1;font-size:12.5px}
.vc-scn{margin-top:22px}
.vc-total{background:var(--navy);color:#fff;border-radius:14px;padding:20px 22px}
.vc-total span{display:block;font-size:14px;color:#A9B8CA}
.vc-total strong{display:block;font-size:48px;letter-spacing:-.02em;line-height:1.1;margin:4px 0}
.vc-total em{font-style:normal;color:#3D65AA;font-weight:600;font-size:15px}
.vc-bars{display:grid;gap:16px;margin-top:20px}
.vb-top{display:flex;justify-content:space-between;font-size:15.5px}
.vb-top strong{font-size:17px}
.vb-track{height:12px;border-radius:6px;background:var(--bg-2);margin:6px 0 4px;overflow:hidden}
.vb-track i{display:block;height:100%;border-radius:6px;transition:width .4s ease}
.vb small{color:var(--muted);font-size:13px}
.fin-card{background:var(--navy);color:#fff;border-radius:18px;padding:28px}
.fin-card span{font-size:13px;color:#A9B8CA;text-transform:uppercase;letter-spacing:.05em;font-weight:600}
.fin-card b{display:block;font-size:28px;margin:10px 0}
.fin-card p{color:#C9D5E3}
.fin-card .link-arrow{color:#3D65AA}
@media (max-width:1000px){.mk-chain{grid-template-columns:1fr;gap:0}.mk-arrow{height:26px}.mk-arrow::before{left:50%;right:auto;top:4px;bottom:4px;border-top:0;border-left:2px solid var(--muted)}.mk-arrow::after{right:auto;left:calc(50% - 4px);top:auto;bottom:0;border:5px solid transparent;border-top:7px solid var(--muted)}.vc-grid{grid-template-columns:1fr}}
/* methodology */
.lead2{font-size:18px;color:var(--muted);line-height:1.6;max-width:60ch}
.mh{width:100%;height:auto;display:block}
.mh .mh-h{font-size:13px;font-weight:700;fill:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-family:var(--font)}
.mh .mh-c{font-size:12.5px;fill:var(--muted);font-family:var(--font)}
.mh .mh-l{stroke:var(--line);stroke-width:2;fill:none}
.mh text{font-family:var(--font)}
.formula span{display:block;font-size:13px;color:#A9B8CA;text-transform:uppercase;letter-spacing:.05em;font-weight:600}
.formula .eq{font-family:"Times New Roman",Georgia,serif;font-size:clamp(22px,2.4vw,30px);color:#fff;margin:14px 0;white-space:nowrap;overflow-x:auto}
.formula p{color:#C9D5E3;font-size:15px;line-height:1.55;margin:0}
.rtab{width:100%;border-collapse:collapse;font-size:15.5px;margin-top:8px}
.rtab th,.rtab td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line)}
.rtab th{font-size:13px;color:var(--muted);font-weight:600}
.rtab tr.hl td{background:color-mix(in srgb,var(--link) 10%,transparent);font-weight:700}
.wex{border:1px solid var(--line);border-radius:16px;background:var(--bg);padding:22px}
.wex h3{margin:0 0 6px}
.stockstat.big{flex-direction:column;align-items:flex-start;padding:26px}
.stockstat.big strong{font-size:56px}
.refs{display:grid;gap:10px;padding-left:22px;color:var(--muted);font-size:15.5px;max-width:90ch}
/* personas */
.personas{background:var(--bg)}
.pgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:30px}
.pcard{display:flex;flex-direction:column;gap:8px;padding:22px 20px;border-radius:16px;border:1px solid var(--line);background:var(--bg-2);color:var(--ink);text-decoration:none;transition:all .2s}
.pcard:hover{border-color:var(--navy);background:var(--navy);color:#fff;transform:translateY(-3px)}
.pcard span{font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--link)}
.pcard:hover span{color:#3D65AA}
.pcard b{font-size:19px;line-height:1.25}
.pcard p{margin:0;font-size:14.5px;color:var(--muted);line-height:1.45}
.pcard:hover p{color:#C9D5E3}
.pcard em{font-style:normal;font-weight:600;margin-top:auto;padding-top:6px;color:var(--link)}
.pcard:hover em{color:#fff}
.pcard em::after{content:" →"}
@media (max-width:1100px){.pgrid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:700px){.pgrid{grid-template-columns:1fr}}
/* cases and industries */
.cfacts{margin:0;display:grid;gap:14px}
.cfacts dt{font-size:12.5px;color:#A9B8CA;text-transform:uppercase;letter-spacing:.05em;font-weight:600}
.cfacts dd{margin:2px 0 0;color:#fff;font-size:15.5px;line-height:1.45}
.cfh{font-size:12.5px;color:#A9B8CA;text-transform:uppercase;letter-spacing:.05em;font-weight:600;margin:18px 0 8px}
.hztags{display:flex;gap:8px;flex-wrap:wrap}
.hztags span{display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:600;border:1px solid #3A4B60;border-radius:999px;padding:4px 12px;color:#fff}
.hztags i{width:9px;height:9px;border-radius:50%}
.cdid{background:var(--navy);color:#fff;border-radius:18px;padding:28px}
.cdid h3{margin:0 0 12px}
.cdid ul{margin:0;padding-left:20px;display:grid;gap:10px;color:#DCE5F0}
.bigq{margin:36px 0 0;border-left:3px solid var(--link);padding:6px 0 6px 24px}
.bigq blockquote{margin:0;font-size:clamp(20px,2.2vw,26px);line-height:1.4}
.bigq figcaption{margin-top:12px;color:var(--muted);font-size:15px}
.bigq figcaption b{display:block;color:var(--ink)}
.bigq.sm blockquote{font-size:19px}
.drv{margin:0;padding-left:18px;display:grid;gap:8px;color:#fff;font-size:16px}
.hzrows{list-style:none;padding:0;margin:26px 0 18px;display:grid;gap:10px}
.hzrows li{display:grid;grid-template-columns:140px 1fr;gap:16px;align-items:center;border-left:4px solid var(--mc);background:var(--bg-2);border-radius:0 12px 12px 0;padding:16px 20px}
.hzrows span{font-weight:700;color:var(--ink)}
.hzrows b{font-weight:500;color:var(--muted)}
.pvis{background:var(--bg);border-radius:14px;padding:18px;color:var(--ink)}
.pvis svg{width:100%;height:auto;display:block}
.pvis .rank{list-style:none;margin:0;padding:0;display:grid;gap:10px;font-size:15px}
.pvis .rank li{display:flex;justify-content:space-between;gap:12px}
.pvis .rank li span:last-child{color:#1E3F7A}
.pvis .models{display:grid;grid-template-columns:repeat(16,1fr);gap:4px}
.pvis .models i{aspect-ratio:1;border-radius:2px;background:var(--line)}
.pvis .models i.best{background:var(--link)}
.pvis .cap{font-size:13px;color:var(--muted);margin:12px 0 0}
.mlist{display:grid;gap:0}
.mrow{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:28px;padding:22px 0;border-top:1px solid var(--line)}
.mrow b{font-size:19px}.mrow p{margin:6px 0 0;color:var(--muted)}
.chips{display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start}
.chips span{border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-size:14px;background:var(--bg-2)}
.vpath{grid-template-columns:1fr 1fr!important}
@media (max-width:760px){.hzrows li{grid-template-columns:1fr;gap:4px}.mrow{grid-template-columns:1fr;gap:10px}.vpath{grid-template-columns:1fr!important}}
/* top-down / bottom-up v2 */
.td2{margin-top:32px}
.td2-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.td2-steps button{display:grid;grid-template-columns:auto 1fr;gap:2px 12px;text-align:left;font:inherit;padding:14px 16px;border-radius:14px;border:1px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer;transition:all .2s}
.td2-steps button i{grid-row:1/3;font-style:normal;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--bg-2);font-weight:700;font-size:14px}
.td2-steps button b{font-size:16px}.td2-steps button span{font-size:13.5px;color:var(--muted)}
.td2-steps button[aria-selected="true"]{background:var(--navy);border-color:var(--navy);color:#fff}
.td2-steps button[aria-selected="true"] i{background:#3D65AA;color:#fff}
.td2-steps button[aria-selected="true"] span{color:#C9D5E3}
.td2-main{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px;margin-top:16px}
.td2-stage{position:relative;background:var(--bg);border:1px solid var(--line);border-radius:18px;padding:26px 22px 22px;display:grid;gap:44px}
.td2-wires{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.td2-wires .w{fill:none;stroke:var(--line);stroke-width:2}
.td2-wires .f{fill:none;stroke-width:2.6;stroke-linecap:round;stroke-dasharray:3 11;opacity:0;transition:opacity .3s}
.td2-wires .f1{stroke:#3D65AA}.td2-wires .f2{stroke:#A9C6F0}
[data-dir="down"] .f1{opacity:1;animation:tdflow 1s linear infinite}
[data-dir="up"] .f2{opacity:1;animation:tdflow 1s linear infinite reverse}
[data-dir="both"] .f1{opacity:1;animation:tdflow 1.2s linear infinite}
[data-dir="both"] .f2{opacity:1;animation:tdflow 1.2s linear infinite reverse;stroke-dashoffset:7}
@keyframes tdflow{to{stroke-dashoffset:-14}}
.td2-lvl{position:relative;z-index:1}
.td2-lvl .lv{display:block;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.td2-row{display:grid;gap:12px}
.td2-row.r0{grid-template-columns:minmax(0,260px);justify-content:center}
.td2-row.r1{grid-template-columns:repeat(2,minmax(0,240px));justify-content:space-around}
.td2-row.r2{grid-template-columns:repeat(4,1fr)}
.tn{position:relative;background:var(--bg-2);border:1.5px solid var(--line);border-radius:14px;padding:12px 14px 10px;transition:border-color .3s,box-shadow .3s,background .3s}
.tn small{display:block;font-size:13px;color:var(--muted)}
.tn strong{display:block;font-size:28px;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.15}
.tn.ttop strong{font-size:34px}
.tbar{position:relative;height:6px;border-radius:3px;background:color-mix(in srgb,var(--muted) 18%,transparent);margin:6px 0 4px}
.tbar i{position:absolute;left:0;top:0;bottom:0;border-radius:3px;background:var(--link)}
.tbar b{position:absolute;top:-4px;width:2px;height:14px;background:var(--ink);opacity:.55}
.tn em{display:block;min-height:18px;font-style:normal;font-size:13px;font-weight:700}
.tn.good{border-color:#4A6FA8;box-shadow:0 0 0 3px color-mix(in srgb,#4A6FA8 18%,transparent)}.tn.good em{color:#4A6FA8}
.tn.lost{border-color:#C4574A;box-shadow:0 0 0 3px color-mix(in srgb,#C4574A 16%,transparent)}.tn.lost em{color:#B5483C}
.tn.lost em::before{content:"✗ "}.tn.good em::before{content:"✓ "}
.td2-dir{position:absolute;right:18px;top:16px;font-size:13.5px;font-weight:600;color:var(--muted)}
.td2-side{display:flex;flex-direction:column;gap:14px}
.td2-note{margin:0;padding:18px;border-radius:14px;background:var(--navy);color:#fff;font-size:16px;line-height:1.5}
.td2-score{display:grid;gap:8px}
.td2-score > div{border-radius:12px;padding:12px 14px;border:1px solid var(--line);background:var(--bg)}
.td2-score span{display:block;font-size:12.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.td2-score b{font-size:16px}
.td2-score .ok{border-color:#4A6FA8}.td2-score .ok b{color:#4A6FA8}.td2-score .ok b::before{content:"✓ "}
.td2-score .bad{border-color:#C4574A}.td2-score .bad b{color:#B5483C}.td2-score .bad b::before{content:"✗ "}
.td2-score .warn{border-color:#1E3F7A}.td2-score .warn b{color:#2F5596}
.td2-trust{border:1px solid var(--line);border-radius:12px;padding:14px;background:var(--bg)}
.td2-trust label{font-weight:700;font-size:15px}
.td2-trust input{width:100%;margin:10px 0 2px;accent-color:var(--link)}
.td2-ends{display:flex;justify-content:space-between;font-size:13px;color:var(--muted)}
.td2-checks{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
.ck{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 10px;border-radius:12px;padding:12px 14px;border:1px solid var(--line);background:var(--bg)}
.ck span{font-size:13px;color:var(--muted)}.ck b{grid-row:2;font-variant-numeric:tabular-nums}.ck i{grid-row:1/3;grid-column:2;font-style:normal;font-size:22px;font-weight:700}
.ck.ok i{color:#4A6FA8}.ck.bad{border-color:#C4574A}.ck.bad i{color:#B5483C}
@media (max-width:960px){.td2-main{grid-template-columns:1fr}.td2-steps{grid-template-columns:1fr 1fr}.td2-checks{grid-template-columns:1fr}}
@media (max-width:560px){.td2-stage{padding:18px 10px;gap:34px}.td2-row.r2{gap:6px}.td2-row.r1{gap:8px}.tn{padding:8px 8px 6px}.tn strong{font-size:20px}.tn.ttop strong{font-size:26px}.tn small{font-size:11.5px}.tn em{font-size:11px}.td2-dir{display:none}.td2-steps button span{display:none}}
.mh-wide{margin-top:36px;background:var(--bg-2);border-radius:18px;padding:24px}
.bigq blockquote{color:var(--ink)}
.cform select{width:100%;min-height:44px;border:1px solid var(--line);border-radius:10px;padding:0 12px;font:inherit;font-size:15px;background:var(--bg);color:var(--ink)}
/* ===== homepage v4: problem, way in, bring/keep, platform band ===== */
.pb3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}
.pb{border:1px solid var(--line);border-radius:18px;padding:22px;background:var(--bg-2);display:flex;flex-direction:column;gap:8px}
.pb svg{width:100%;height:auto;display:block;margin-bottom:6px;overflow:visible}
.pb .pbt{font-family:var(--font);font-size:12px;fill:var(--muted)}
.pb h3{margin:0;font-size:20px;line-height:1.25}
.pb p{margin:0;color:var(--muted);font-size:15.5px;line-height:1.5}
.pb .cost{margin-top:auto;padding-top:10px;border-top:1px solid var(--line);color:var(--ink);font-weight:600;font-size:15px}
.wpath{position:relative;margin-top:36px}
.wband{position:absolute;left:0;right:0;top:40px;width:100%;height:150px;pointer-events:none}
.wsteps{list-style:none;margin:0;padding:0;position:relative;display:grid;grid-template-columns:1fr 1fr 1.25fr 110px 1.25fr 1.35fr;gap:12px;align-items:stretch}
.ws{position:relative;background:var(--bg);border:1px solid var(--line);border-radius:16px;padding:18px 16px;display:flex;flex-direction:column;gap:6px}
.ws-n{width:28px;height:28px;border-radius:50%;background:var(--navy);color:#fff;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center}
.ws-when{font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--link)}
.ws h3{margin:0;font-size:18px;line-height:1.25}
.ws dl{margin:4px 0 0;display:grid;gap:2px}
.ws dt{font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-top:6px}
.ws dd{margin:0;font-size:14.5px;line-height:1.45;color:var(--ink)}
.ws-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto;padding-top:10px}
.hzt{font-size:12px;font-weight:700;border-radius:999px;padding:3px 10px;background:color-mix(in srgb,var(--hc) 16%,transparent);color:var(--ink);border:1px solid var(--hc)}
.ws.last{background:var(--navy);border-color:var(--navy);color:#fff}
.ws.last h3,.ws.last dd{color:#fff}.ws.last dt{color:#A9B8CA}.ws.last .ws-when{color:#3D65AA}.ws.last .ws-n{background:#3D65AA;color:#fff}.ws.last .hzt{color:#fff}
.ws-acc{display:grid;gap:6px;margin:6px 0 2px;padding:10px;border-radius:10px;background:var(--bg-2)}
.ws-acc div{display:grid;grid-template-columns:1fr;gap:3px;font-size:12.5px;color:var(--muted)}
.ws-acc i{display:block;height:9px;border-radius:5px;background:#8C9CB0;transform-origin:left;transform:scaleX(0);transition:transform 1s ease .3s}
.ws-acc i.b{background:var(--c-tac);transition-delay:.7s}
.wpath.in .ws-acc i{transform:none}
.ws-acc small{font-size:11.5px;color:var(--muted)}
.wgate{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:8px;border-left:2px dashed var(--c-mkt);border-right:2px dashed var(--c-mkt);padding:0 8px;border-radius:0}
.wgate span{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#2F5596}
.wgate b{font-size:14.5px;line-height:1.35}
.wpath.rv{opacity:1;transform:none}
.bk{display:grid;grid-template-columns:1fr 200px 1fr;gap:0;align-items:center;margin-top:34px}
.bk-col{border-radius:18px;padding:26px;height:100%}
.bk-col h3{margin:0 0 14px;font-size:21px}
.bk-col ul{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.bk-col li{display:grid;gap:2px}
.bk-col li b{font-size:16.5px}.bk-col li span{font-size:15px;line-height:1.45}
.bk-col.bkkeep{background:var(--bg-2);border:1px solid var(--line)}
.bk-col.bkkeep li span{color:var(--muted)}
.bk-col.bkbring{background:var(--navy);color:#fff}
.bk-col.bkbring h3{color:#3D65AA}.bk-col.bkbring li span{color:#C9D5E3}
.bk-mid{position:relative;height:100%;display:flex;align-items:center;justify-content:center}
.bk-mid::before{content:"";position:absolute;left:0;right:0;top:50%;border-top:2px dashed var(--line)}
.bk-ring{position:relative;width:150px;height:150px;border-radius:50%;background:var(--bg);border:3px solid var(--navy);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 0 0 10px color-mix(in srgb,var(--navy) 8%,transparent)}
.bk-ring b{font-size:20px}.bk-ring span{font-size:13px;color:var(--muted);max-width:11ch}
.platband{background:var(--navy-deep);color:#fff}
.platband .kicker{display:block;color:#3D65AA;font-weight:600;margin-bottom:10px}
.platband h2{color:#fff;max-width:18ch}
.platband p{color:#C9D5E3;font-size:17.5px;max-width:58ch}
.pl-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:48px;align-items:center}
.pl-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pl-stats a{display:flex;flex-direction:column;gap:4px;padding:18px;border-radius:14px;background:#1E2A37;border:1px solid #2C3B4D;text-decoration:none;color:#fff}
.pl-stats a:hover{border-color:#3D65AA}
.pl-stats strong{font-size:32px;letter-spacing:-.02em}.pl-stats span{font-size:14px;color:#A9B8CA}
.pl-stats p{grid-column:1/-1;font-size:13.5px!important;color:#A9B8CA!important;margin:4px 0 0}
.pgrid{grid-template-columns:repeat(3,1fr)}
@media (max-width:1100px){.wsteps{grid-template-columns:1fr 1fr 1fr}.wgate{grid-column:1/-1;flex-direction:row;border:0;border-top:2px dashed var(--c-mkt);border-bottom:2px dashed var(--c-mkt);padding:10px}.wband{display:none}}
@media (max-width:860px){.pb3,.pl-grid{grid-template-columns:1fr}.bk{grid-template-columns:1fr}.bk-mid{height:auto;padding:18px 0}.bk-mid::before{display:none}.bk-ring{width:120px;height:120px}}
@media (max-width:700px){.wsteps{grid-template-columns:1fr}.pgrid{grid-template-columns:1fr}}
.ws:nth-child(1){background:var(--bg)}.ws:nth-child(2){background:color-mix(in srgb,var(--c-tac) 4%,var(--bg))}.ws:nth-child(3){background:color-mix(in srgb,var(--c-tac) 8%,var(--bg))}.ws:nth-child(5){background:color-mix(in srgb,var(--c-tac) 12%,var(--bg))}
.step.hero h1{font-size:clamp(40px,4.2vw,60px);max-width:12ch}
.link-arrow{white-space:normal}
.ksplit .path{grid-template-columns:1fr 1fr!important;row-gap:28px}
.ksplit .path li::after,.ksplit .path::before{display:none}
/* gateway hero */
.gateway{background:var(--navy-deep);color:#fff;padding:130px 0 34px;position:relative}
.gw-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:56px;align-items:center}
.gateway h1{font-size:clamp(40px,4.6vw,64px);line-height:1.03;letter-spacing:-.025em;margin:0 0 18px;max-width:14ch}
.gw-lede{font-size:19px;line-height:1.55;color:#C9D5E3;max-width:46ch;margin:0}
.gw-doors{display:grid;grid-template-columns:1.15fr 1fr;gap:12px;margin-top:30px}
.door{display:flex;flex-direction:column;gap:6px;padding:20px;border-radius:16px;border:1px solid #34445A;background:#1E2A37;color:#fff;text-decoration:none;transition:transform .2s,border-color .2s}
.door:hover{transform:translateY(-3px);border-color:#C8D6FF}
.door span{font-size:13.5px;color:#A9B8CA;font-weight:600}
.door b{font-size:22px;letter-spacing:-.01em}
.door p{margin:0;font-size:14.5px;line-height:1.45;color:#C9D5E3}
.door em{font-style:normal;font-weight:700;margin-top:auto;padding-top:8px;font-size:15px;color:#C8D6FF}
.door em::after{content:" →"}
.door.main{background:#fff;color:var(--navy);border-color:#fff}
.door.main span{color:#3D65AA}.door.main p{color:#4F5E6E}.door.main em{color:#1E2A37}
.door.main b{color:#1E2A37}
.gw-fig{margin:0;background:#1A2533;border:1px solid #2C3B4D;border-radius:18px;padding:18px 18px 12px}
.gw-viz{width:100%;height:auto;display:block}
.gw-viz .gwt{font-family:var(--font);font-size:12px;fill:#A9B8CA}
.gw-fig figcaption{font-size:12.5px;color:#7F90A4;margin-top:6px}
.proofstrip{list-style:none;margin:44px 0 0;padding:18px 0 0;border-top:1px solid #2C3B4D;display:flex;flex-wrap:wrap;gap:10px 34px;font-size:14.5px;color:#A9B8CA}
.proofstrip b{color:#fff}
.step .big{font-size:clamp(34px,3.6vw,52px);line-height:1.05;letter-spacing:-.02em;margin:0 0 18px;font-weight:700;max-width:15ch}
@media (max-width:960px){.gateway{padding:96px 0 28px}.gw-grid{grid-template-columns:1fr;gap:28px}.gw-doors{grid-template-columns:1fr}.gateway h1{font-size:38px}.gw-lede{font-size:17px}.proofstrip{gap:8px 20px;font-size:13.5px}.step .big{font-size:30px}}
/* doors as switches */
button.door{font:inherit;text-align:left;cursor:pointer}
.door[aria-pressed="true"]{box-shadow:0 0 0 3px #3D65AA}
.door:not(.main)[aria-pressed="true"]{background:#fff;color:var(--navy);border-color:#fff}
.door:not(.main)[aria-pressed="true"] span{color:#3D65AA}.door:not(.main)[aria-pressed="true"] p{color:#4F5E6E}.door:not(.main)[aria-pressed="true"] em{color:#1E2A37}
.door.main[aria-pressed="false"]{background:#1E2A37;color:#fff;border-color:#34445A}
.door.main[aria-pressed="false"] b{color:#fff}.door.main[aria-pressed="false"] span{color:#A9B8CA}.door.main[aria-pressed="false"] p{color:#C9D5E3}.door.main[aria-pressed="false"] em{color:#C8D6FF}
.asbtn{background:none;border:0;padding:0;font:inherit;font-weight:600;cursor:pointer;color:#3D65AA}
.platband.slim{padding:64px 0}
.pl-switch{display:flex;align-items:center;justify-content:space-between;gap:32px}
.pl-switch h2{margin:6px 0 10px}.pl-switch p{margin:0}
.pl-stats.light a{background:var(--navy)}
@media (max-width:860px){.pl-switch{flex-direction:column;align-items:flex-start}}
/* before/after examples */
.exgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:30px}
.exc{display:flex;flex-direction:column;gap:10px;border:1px solid var(--line);border-radius:16px;padding:20px;background:var(--bg);color:var(--ink);text-decoration:none;transition:transform .2s,border-color .2s}
.exc:hover{transform:translateY(-3px);border-color:var(--link)}
.exw{font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--link)}
.exn strong{display:block;font-size:34px;letter-spacing:-.02em;line-height:1}
.exn span{font-size:14px;color:var(--muted)}
.exc dl{margin:0;display:grid;gap:3px}
.exc dt{font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#B0503F;margin-top:6px}
.exc dt.af{color:#4A6FA8}
.exc dd{margin:0;font-size:14px;line-height:1.45;color:var(--ink)}
.exc em{font-style:normal;font-weight:600;color:var(--link);margin-top:auto;font-size:14.5px}
.exc em::after{content:" →"}
.vc-chk{display:flex!important;align-items:center;gap:10px;color:var(--ink)!important;font-weight:600}
.vc-chk input{width:auto!important}
@media (max-width:1150px){.exgrid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:760px){.exgrid{grid-template-columns:1fr}}
.ctas .link-arrow{align-self:center}.exn span{display:block;line-height:1.4;margin-top:4px}
/* ===== platform view ===== */
.pl-hero{background:var(--navy-deep);color:#fff}
.pl-hero .kicker{display:block;color:#3D65AA;font-weight:600;margin-bottom:12px}
.plh-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:end}
.plh-grid h2{color:#fff;margin:0;font-size:clamp(34px,4vw,56px);line-height:1.04;letter-spacing:-.025em}
.plh-grid p{color:#C9D5E3;font-size:18px;margin:0}
.pdemo{display:grid;grid-template-columns:320px minmax(0,1fr);gap:20px;margin-top:36px}
.pd-side{display:flex;flex-direction:column;gap:18px}
.pd-pick{display:flex;flex-wrap:wrap;gap:8px}
.pd-pick span{width:100%;font-size:13px;color:#A9B8CA;font-weight:600}
.pd-pick button{font:inherit;font-size:14px;font-weight:600;min-height:38px;padding:0 14px;border-radius:999px;border:1px solid #3A4B60;background:transparent;color:#DCE5F0;cursor:pointer}
.pd-pick button[aria-pressed="true"]{background:#3D65AA;border-color:#3D65AA;color:#fff}
.pd-steps{list-style:none;margin:0;padding:0;display:grid;gap:4px;counter-reset:pd}
.pd-steps li{counter-increment:pd;display:grid;grid-template-columns:30px 1fr;gap:0 12px;padding:10px 12px;border-radius:12px;color:#7F90A4;cursor:pointer;transition:all .3s}
.pd-steps li::before{content:counter(pd);grid-row:1/3;width:26px;height:26px;border-radius:50%;border:1.5px solid #3A4B60;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700}
.pd-steps b{font-size:15.5px}.pd-steps span{font-size:13px;line-height:1.4}
.pd-steps li.done{color:#C9D5E3}.pd-steps li.done::before{content:"✓";background:#A9C6F0;border-color:#A9C6F0;color:#16202B}
.pd-steps li.on{background:#1E2A37;color:#fff}.pd-steps li.on::before{background:#3D65AA;border-color:#3D65AA;color:#fff}
.pd-replay{align-self:flex-start;font:inherit;font-weight:600;font-size:14px;color:#C8D6FF;background:none;border:0;cursor:pointer;padding:0}
.pd-replay::before{content:"↻ "}
.pd-stage{min-height:400px;background:#1A2533;border:1px solid #2C3B4D;border-radius:20px;padding:26px;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.pd-k{display:block;font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#A9B8CA;margin-bottom:10px}
.pd-sub{color:#A9B8CA;font-size:14px;margin:14px 0 0}
.pd-sub b{color:#fff}
.pd-search strong{display:block;font-size:clamp(34px,4.4vw,56px);letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:#fff;line-height:1.1}
.pd-search > span:not(.pd-k){color:#C9D5E3;font-size:15px}
.pd-scan{display:grid;grid-template-columns:repeat(20,1fr);gap:4px;margin-top:22px}
.pd-scan i{height:14px;border-radius:3px;background:#2C3B4D;transition:background .15s}
.pd-scan i.lit{background:#6D98E0}
.pd-ind ol{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.pd-ind li{display:flex;justify-content:space-between;gap:16px;padding:12px 14px;border-radius:12px;background:#1E2A37;color:#fff;font-size:16px;opacity:0;transform:translateX(-10px);transition:all .35s}
.pd-ind li.in{opacity:1;transform:none}
.pd-ind li:first-child{border:1px solid #3D65AA}
.pd-ind li b{color:#3D65AA;letter-spacing:2px;white-space:nowrap}.pd-ind li b i{font-style:normal;color:#3A4B60}
.pd-grid{display:grid;grid-template-columns:repeat(16,1fr);gap:5px}
.pd-grid i{aspect-ratio:1;border-radius:3px;background:#2C3B4D;transition:all .3s}
.pd-grid i.t{background:#3D5378}
.pd-grid i.best{background:#3D65AA;box-shadow:0 0 12px rgba(61,101,170,.7);transform:scale(1.15)}
.pd-fam{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}
.pd-fam span{font-size:12.5px;color:#C9D5E3;border:1px solid #3A4B60;border-radius:999px;padding:3px 10px}
.pd-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:10px}
.pd-tabs{display:flex;gap:6px}
.pd-tabs button{font:inherit;font-size:13.5px;font-weight:600;padding:6px 12px;border-radius:999px;border:1px solid #3A4B60;background:transparent;color:#C9D5E3;cursor:pointer}
.pd-tabs button[aria-selected="true"]{background:#fff;color:#1E2A37;border-color:#fff}
.pd-acc{text-align:right}.pd-acc strong{display:block;font-size:36px;color:#A9C6F0;letter-spacing:-.02em;line-height:1}.pd-acc span{font-size:12.5px;color:#A9B8CA}
.pd-chart{width:100%;height:auto;display:block}
.pdt{font-family:var(--font);font-size:12px;fill:#A9B8CA}
.pd-scn{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;font-size:14px;color:#C9D5E3}
.pd-scn button{font:inherit;font-size:13.5px;font-weight:600;padding:6px 12px;border-radius:999px;border:1px solid #3A4B60;background:transparent;color:#C9D5E3;cursor:pointer}
.pd-scn button[aria-pressed="true"]{background:#3D65AA;color:#fff;border-color:#3D65AA}
.pd-dr{display:grid;gap:12px;padding:8px 0}
.dr{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) 70px;gap:12px;align-items:center;color:#fff;font-size:15px}
.drt{height:12px;border-radius:6px;background:#2C3B4D;overflow:hidden}
.drt i{display:block;height:100%;border-radius:6px}.drt i.up{background:#6D98E0}.drt i.dn{background:#3D65AA}
.dr b{font-size:13px;color:#A9B8CA}
.pd-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin:14px 0 0;font-size:12.5px;color:#7F90A4}
.pd-foot a{color:#C8D6FF;font-weight:600;font-size:14px}
.nfpban{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;padding:26px 30px;border-radius:20px;background:var(--navy);color:#fff;margin-bottom:56px}
.nfpban span{color:#3D65AA;font-weight:800;font-size:22px}
.nfpban b{font-size:clamp(20px,2.2vw,28px);line-height:1.25;flex:1;min-width:260px}
.nfpban a{color:#C8D6FF;font-weight:700}
.tplgrid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:26px}
.tplc{display:flex;flex-direction:column;justify-content:space-between;gap:16px;min-height:130px;padding:18px;border-radius:16px;background:var(--bg);border:1px solid var(--line);text-decoration:none;color:var(--ink);transition:all .2s}
.tplc:hover{border-color:var(--link);transform:translateY(-3px)}
.tplc span{font-weight:600;font-size:15.5px}
.tplc strong{font-size:32px;letter-spacing:-.02em;color:#4A6FA8}
.nwband{background:var(--navy-deep);color:#fff}
.nwband h2{color:#fff}.nwband .lead2{color:#C9D5E3}.nwband .link-arrow{color:#3D65AA}
.nowc{background:#1A2533;border:1px solid #2C3B4D;border-radius:18px;padding:20px}
.nowc svg{width:100%;height:auto;display:block}
.nowc label{display:grid;gap:6px;margin-top:10px;color:#C9D5E3;font-size:14px;font-weight:600}
.nowc input{width:100%;accent-color:#3D65AA}
.nw-out{margin:10px 0 0;color:#C9D5E3;font-size:15px}.nw-out b{color:#3D65AA;font-size:18px}
.nowc .fine{color:#7F90A4}
@media (max-width:1100px){.tplgrid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:900px){.pdemo{grid-template-columns:1fr}.plh-grid{grid-template-columns:1fr;gap:14px}.pd-steps li span{display:none}.pd-stage{min-height:360px;padding:18px}}
@media (max-width:600px){.tplgrid{grid-template-columns:1fr 1fr}.dr{grid-template-columns:1fr 70px}.dr .drt{grid-column:1/-1;grid-row:2}.pd-head{flex-direction:column}.pd-acc{text-align:left}}
.plpage .pl-hero{padding-top:72px}
@media (max-width:900px){.pd-steps{display:none}.pd-replay{order:3}}
/* hero loop */
.gw-grid{grid-template-columns:minmax(0,.92fr) minmax(0,1.25fr);gap:44px;align-items:center}
.gateway h1{font-size:clamp(38px,4.1vw,58px)}
.gw-doors{grid-template-columns:1fr 1fr}
.hl{position:relative;background:#1A2533;border:1px solid #2C3B4D;border-radius:22px;padding:16px 18px 14px;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.hl svg{width:100%;height:auto;display:block}
.hl-steps{display:flex;flex-wrap:wrap;gap:6px}
.hl-steps button{position:relative;overflow:hidden;font:inherit;font-size:13px;font-weight:600;display:inline-flex;align-items:center;gap:7px;padding:6px 12px 6px 7px;border-radius:999px;border:1px solid #34445A;background:transparent;color:#A9B8CA;cursor:pointer}
.hl-steps button i{font-style:normal;width:20px;height:20px;border-radius:50%;background:#2C3B4D;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11.5px}
.hl-steps button::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:calc(var(--p,0)*100%);background:#3D65AA}
.hl-steps button.on{color:#fff;border-color:#3D65AA}
.hl-steps button.on i{background:#3D65AA;color:#fff}
.hl-cap{margin:4px 2px 0;min-height:3em;color:#DCE5F0;font-size:15.5px;line-height:1.5}
.hl-note{position:absolute;right:18px;bottom:12px;margin:0;font-size:11.5px;color:#5F7088}
.hlt{font-family:var(--font);font-size:13px}
.hlt.dim{font-size:12px}
.hlt.b{font-weight:700;font-size:14px}
.hlt.big{font-size:22px;font-weight:700}
.hlt.huge{font-size:40px;font-weight:700}
@media (max-width:960px){.gw-grid{grid-template-columns:1fr}.hl{order:2}.gw-doors{grid-template-columns:1fr}.hl-cap{font-size:14px}}
.gw-grid{grid-template-areas:"copy panel" "doors panel";grid-template-rows:auto 1fr;row-gap:24px}
.gw-copy{grid-area:copy;align-self:end}
.hl{grid-area:panel;align-self:center}
.gw-grid > .gw-doors{grid-area:doors;align-self:start;margin-top:0}
@media (max-width:960px){.gw-grid{grid-template-areas:"copy" "panel" "doors";grid-template-rows:auto}}
@media (max-width:600px){.hlt{font-size:20px}.hlt.dim{font-size:18px}.hlt.b{font-size:20px}.hlt.big{font-size:28px}.hlt.huge{font-size:46px}}

/* ===== Round 7: shared Indicio One sections (nx-) ===== */
.nx-p{font-size:19px;color:var(--muted);max-width:56ch;margin:0 0 16px}
.nx-p b{color:var(--ink)}
/* bullwhip */
.nx-bw-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:56px;align-items:center}
.nx-bw h2{max-width:20ch}
.nx-nikos{display:flex;gap:16px;align-items:flex-start;margin:28px 0 0}
.nx-av{flex:none;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--bg-2);border:1px solid var(--line);font-weight:700;color:var(--muted)}
.nx-pending{margin:0 0 8px;padding:12px 14px;border:1.5px dashed var(--line);border-radius:12px;color:var(--muted);font-size:15px;font-style:italic}
.nx-nikos figcaption{font-size:14px;color:var(--muted)}
.nx-nikos figcaption b{display:block;color:var(--ink);font-size:15px}
.nx-bw-fig{margin:0;background:var(--bg-2);border:1px solid var(--line);border-radius:20px;padding:20px 18px 14px}
.nx-bw-svg{width:100%;height:auto;display:block}
.nx-bw-h{font-size:12px;fill:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-weight:600}
.nx-bw-t{font-size:15px;font-weight:700;fill:var(--ink)}
.nx-bw-s{font-size:11.5px;fill:var(--muted)}
.nx-bw-base{stroke:var(--line);stroke-width:1}
.nx-bw-line{fill:none;stroke-width:2.6;stroke-linejoin:round}
.nx-bw-ind{fill:none;stroke:var(--c-tac);stroke-width:2;stroke-dasharray:5 4}
.nx-bw-arrow{stroke:var(--muted);stroke-width:1.4}
.nx-bw-you{fill:color-mix(in srgb,#C4574A 9%,transparent)}
.nx-bw-fig figcaption{display:flex;flex-wrap:wrap;gap:16px;font-size:13px;color:var(--muted);margin-top:6px}
.nx-bw-fig figcaption i{display:inline-block;width:18px;vertical-align:middle;margin-right:6px;border-top:2.5px solid #C4574A}
.nx-bw-fig figcaption .k-ind{border-top:2px dashed var(--c-tac)}
.nx-bw-fig .ill{margin-left:auto}
/* reconciliation */
.nx-rc-box{background:var(--bg);border:1px solid var(--line);border-radius:22px;padding:22px}
.nx-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.nx-tabs button{font:inherit;text-align:left;padding:12px 16px;border-radius:14px;border:1.5px solid var(--line);background:transparent;color:var(--ink);cursor:pointer;display:flex;flex-direction:column;gap:2px}
.nx-tabs button b{font-size:17px}.nx-tabs button span{font-size:13.5px;color:var(--muted)}
.nx-tabs button[aria-selected=true]{border-color:var(--ink);background:var(--bg-2)}
.nx-rc-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:24px;align-items:center}
.nx-tree{width:100%;height:auto;display:block;overflow:visible}
.nx-edge{fill:none;stroke:var(--line);stroke-width:2}
.nx-c{fill:var(--bg);stroke:var(--line);stroke-width:2;stroke-dasharray:4 4;transition:fill .4s}
.nx-node.src .nx-c{stroke:none}
.nx-v{font-size:16px;font-weight:700;fill:var(--muted)}
.nx-node.src .nx-v{fill:#16202B}
.nx-l{font-size:12.5px;fill:var(--muted)}
.nx-o{font-size:11px;fill:var(--muted);opacity:.8}
.nx-arr{stroke:var(--muted);stroke-width:2;fill:none}
.nx-promo rect{fill:color-mix(in srgb,var(--op) 22%,transparent)}.nx-promo text{font-size:11px;font-weight:700;fill:var(--c-op)}
.nx-slow rect{fill:color-mix(in srgb,var(--str) 22%,transparent)}.nx-slow text{font-size:11px;font-weight:700;fill:var(--c-mkt)}
.nx-promo,.nx-slow{transition:opacity .3s}
.nx-promo.lost,.nx-slow.lost{opacity:.35}
.nx-promo.lost text,.nx-slow.lost text{text-decoration:line-through}
.nx-rc-h{font-size:21px;margin:0 0 8px}
.nx-rc-p{color:var(--muted);font-size:16px;margin:0 0 16px}
.nx-checks{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.nx-checks li{display:flex;align-items:center;gap:10px;font-size:15.5px;color:var(--muted)}
.nx-checks i{width:22px;height:22px;border-radius:50%;flex:none;display:grid;place-items:center;background:color-mix(in srgb,#C4574A 18%,transparent)}
.nx-checks i::after{content:"✕";font-style:normal;font-size:12px;color:#B5483C;font-weight:700}
.nx-checks li.ok{color:var(--ink)}
.nx-checks li.ok i{background:color-mix(in srgb,var(--op) 25%,transparent)}
.nx-checks li.ok i::after{content:"✓";color:var(--c-op)}
.nx-how{list-style:none;margin:18px 0 0;padding:18px 0 0;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:20px;counter-reset:h}
.nx-how li{counter-increment:h;display:flex;flex-direction:column;gap:4px;font-size:15px;color:var(--muted)}
.nx-how b{color:var(--ink);font-size:16px}
.nx-how b::before{content:counter(h);display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--ink);color:var(--bg);font-size:13px;margin-right:8px}
.nx-rc-foot{font-size:14.5px;color:var(--muted);margin:16px 0 0}
.nx-rc-foot span{color:var(--ink)}
/* explainability */
.nx-ex-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:56px;align-items:center}
.nx-list{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:12px}
.nx-list li{padding-left:22px;position:relative;color:var(--muted);font-size:17px}
.nx-list li::before{content:"";position:absolute;left:0;top:10px;width:10px;height:10px;border-radius:50%;background:var(--tac)}
.nx-list b{color:var(--ink)}
.nx-ex-card{margin:0;background:var(--bg-2);border:1px solid var(--line);border-radius:20px;padding:22px}
.nx-ex-top{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;align-items:flex-start;margin-bottom:18px}
.nx-ex-k{display:block;font-size:13px;color:var(--muted)}
.nx-ex-t{font-size:19px}.nx-ex-t em{font-style:normal;color:var(--c-op)}
.nx-seg{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:3px}
.nx-seg button{font:inherit;font-size:14px;border:0;background:transparent;color:var(--muted);padding:6px 12px;border-radius:999px;cursor:pointer}
.nx-seg button[aria-pressed=true]{background:var(--ink);color:var(--bg)}
.nx-drv{display:flex;flex-direction:column;gap:10px}
.nx-dr{display:grid;grid-template-columns:150px 1fr 48px;align-items:center;gap:12px;font-size:15px}
.nx-dr .nm{color:var(--ink)}.nx-dr.own .nm{font-weight:700}
.nx-dr .tr{position:relative;height:18px;background:linear-gradient(var(--line),var(--line)) 50% 0/1.5px 100% no-repeat}
.nx-dr .tr i{position:absolute;top:0;height:100%;border-radius:4px;background:var(--tac);transition:width .6s cubic-bezier(.2,.7,.2,1),left .6s cubic-bezier(.2,.7,.2,1)}
.nx-dr.neg .tr i{background:var(--str)}
.nx-dr b{text-align:right;font-variant-numeric:tabular-nums}
.nx-ex-card figcaption{font-size:13px;color:var(--muted);margin-top:14px}
/* proof */
.nx-pf-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:20px;margin-top:8px}
.nx-toy{display:block;text-decoration:none;color:#fff;background:linear-gradient(160deg,#1E2A37,#16202B);border-radius:22px;padding:30px}
.nx-toy-k{display:block;font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#3D65AA;margin-bottom:14px}
.nx-res .nx-toy-k{color:var(--link)}
.nx-toy-n,.nx-res-n{display:flex;gap:18px;align-items:baseline;margin-bottom:16px}
.nx-toy-n strong{font-size:72px;line-height:1;color:#3D65AA;letter-spacing:-.03em}
.nx-toy-n span{color:#C9D5E3;font-size:17px;max-width:30ch}
.nx-toy blockquote{margin:0 0 14px;font-size:20px;line-height:1.4}
.nx-toy-who{font-size:14px;color:#A9B8CA;margin:0 0 18px}.nx-toy-who b{display:block;color:#fff;font-size:15px}
.nx-toy em{font-style:normal;font-weight:600;color:#fff;border-bottom:1.5px solid #3D65AA}
.nx-toy:hover em{border-color:#fff}
.nx-res{background:var(--bg);border:1px solid var(--line);border-radius:22px;padding:30px}
.nx-res-n strong{font-size:60px;line-height:1;color:var(--link);letter-spacing:-.03em}
.nx-res-n span{color:var(--muted);font-size:16px}
.nx-bars{display:grid;gap:8px;margin:6px 0 14px}
.nx-bars div{display:grid;grid-template-columns:82px 1fr 40px;gap:10px;align-items:center;font-size:14px;color:var(--muted)}
.nx-bars i{height:12px;border-radius:6px;background:linear-gradient(var(--tac),var(--tac)) 0 0/var(--w) 100% no-repeat,var(--line)}
.nx-bars b{color:var(--ink);text-align:right}
.nx-cite{font-size:13px;color:var(--muted);margin:0}
.nx-cases{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:20px}
.nx-cases a{display:flex;flex-direction:column;gap:6px;padding:18px;border-radius:16px;border:1px solid var(--line);background:var(--bg);text-decoration:none;color:var(--ink)}
.nx-cases a:hover{border-color:var(--ink)}
.nx-cases span{font-size:13px;color:var(--muted)}.nx-cases b{font-size:16px;line-height:1.3}
.nx-cases .nfpx span{color:var(--c-mkt);font-weight:700}
/* start */
.nx-st{background:linear-gradient(180deg,#1E2A37,#16202B);color:#fff}
.nx-st h2{max-width:22ch}
.nx-steps{list-style:none;margin:28px 0 8px;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.nx-steps li{display:flex;flex-direction:column;gap:4px;padding:18px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid #2F3E50}
.nx-steps span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#2F3E50;font-weight:700;font-size:14px;margin-bottom:6px}
.nx-steps b{font-size:17px}.nx-steps small{color:#A9B8CA;font-size:14px}
.nx-steps li.go{border-color:#3D65AA;background:rgba(61,101,170,.08)}.nx-steps li.go span{background:#3D65AA;color:#fff}
.nx-st-plat{margin:26px 0 0;color:#A9B8CA;font-size:16px}
.linkbtn{font:inherit;background:none;border:0;padding:0;color:#fff;font-weight:600;cursor:pointer;border-bottom:1.5px solid #6D98E0}
@media (max-width:960px){
  .nx-bw-grid,.nx-ex-grid,.nx-rc-grid,.nx-pf-grid{grid-template-columns:1fr;gap:28px}
  .nx-cases{grid-template-columns:1fr 1fr}.nx-steps{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
  .nx-tabs button{padding:10px}.nx-tabs button span{display:none}
  .nx-how{grid-template-columns:1fr}.nx-cases,.nx-steps{grid-template-columns:1fr}
  .nx-dr{grid-template-columns:118px 1fr 40px;font-size:13.5px}
  .nx-toy,.nx-res{padding:22px}.nx-toy-n strong{font-size:56px}.nx-toy-n{flex-direction:column;gap:8px}
  .nx-rc-box{padding:14px}
}
.gateway h1{max-width:17ch;font-size:clamp(36px,3.7vw,54px)}
@media (max-width:600px){
  .nx-v{font-size:19px}.nx-l{font-size:14px}.nx-o{font-size:12px}.nx-promo text,.nx-slow text{font-size:13px}
  .nx-bw-s{display:none}.nx-bw-t{font-size:22px}.nx-bw-h{font-size:17px}
}
.sysmap h1{font-size:clamp(34px,4.2vw,58px);line-height:1.04;letter-spacing:-.025em;margin:0 0 18px;max-width:20ch}
.sm-first{padding-top:64px}.sm-first .crumb{color:#A9B8CA;font-size:14px;margin:0 0 18px}.sm-first .crumb a{color:#C9D5E3}
@media (max-width:760px){.sm-first{padding-top:40px}}
.hl-title{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 14px;align-items:center;margin:0 0 12px;font-size:14px;color:#A9B8CA}
.hl-title b{color:#fff;font-size:15px}
.hl-title i{display:inline-block;width:9px;height:9px;border-radius:50%;margin:0 4px 0 8px;vertical-align:1px}
.hl[data-mode=plat] .hl-title{display:none}
/* ===== Round 8 ===== */
/* benefits */
.nx-bn-box{display:grid;grid-template-columns:1fr 1.05fr;gap:28px;align-items:start;margin-top:8px}
.nx-bn-seg{margin-bottom:16px}
.nx-house{position:relative;background:var(--bg-2);border:1px solid var(--line);border-radius:0 0 18px 18px;padding:22px 18px 16px;margin-top:46px}
.nx-roof{position:absolute;left:-1px;right:-1px;top:-46px;height:46px;background:var(--bg-2);border:1px solid var(--line);border-bottom:0;clip-path:polygon(0 100%,50% 0,100% 100%);}
.nx-depts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.nx-dept{position:relative;background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.nx-dept span{font-size:14.5px;color:var(--muted)}
.nx-dept b{font-size:20px;font-variant-numeric:tabular-nums;transition:color .4s}
.nx-dept i{position:absolute;right:-6px;top:-8px;width:26px;height:2.5px;background:#C4574A;border-radius:2px;transform-origin:left center;transition:transform .6s cubic-bezier(.2,.7,.2,1),background .4s}
.nx-house[data-mode=apart] .nx-dept i{transform:rotate(calc((var(--i) - 2.5) * 28deg))}
.nx-house[data-mode=apart] .nx-dept[data-v="800"] b{color:#B5483C}
.nx-house[data-mode=one] .nx-dept i{transform:rotate(-35deg);background:var(--op)}
.nx-house[data-mode=one] .nx-dept b{color:var(--c-op)}
.nx-house-cap{margin:12px 0 0;font-size:14.5px;color:var(--muted)}
.nx-outs{display:grid;gap:12px}
.nx-out{border:1.5px solid var(--line);border-radius:16px;padding:16px 18px;background:var(--bg);transition:border-color .4s,opacity .4s,background .4s}
.nx-out h3{font-size:18px;margin:4px 0 6px}.nx-out p{margin:0;font-size:15px;color:var(--muted)}
.nx-out-k{font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.nx-out.o1 .nx-out-k{color:#B5483C}.nx-out.o2 .nx-out-k{color:var(--c-mkt)}.nx-out.o3 .nx-out-k{color:var(--c-op)}
.nx-bn-box[data-mode=apart] .nx-out.o1{border-color:#C4574A;background:color-mix(in srgb,#C4574A 6%,var(--bg))}
.nx-bn-box[data-mode=apart] .nx-out.o2{border-color:var(--str);background:color-mix(in srgb,var(--str) 7%,var(--bg))}
.nx-bn-box[data-mode=apart] .nx-out.o3{opacity:.55}
.nx-bn-box[data-mode=one] .nx-out.o1,.nx-bn-box[data-mode=one] .nx-out.o2{opacity:.5}
.nx-bn-box[data-mode=one] .nx-out.o3{border-color:var(--op);background:color-mix(in srgb,var(--op) 8%,var(--bg))}
.nx-gains{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.nx-gains li{display:flex;flex-direction:column;gap:4px;padding:16px;border-top:3px solid var(--op);background:var(--bg-2);border-radius:0 0 12px 12px}
.nx-gains b{font-size:16.5px}.nx-gains span{font-size:14.5px;color:var(--muted)}
.nx-src{font-size:13.5px;color:var(--muted);margin:16px 0 0}
/* module stack */
.nx-mods{display:grid;gap:16px}
.nx-mod{display:grid;grid-template-columns:1.25fr 1fr;gap:28px;align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:20px;padding:26px 28px}
.nx-mod.m-op{--mc:var(--op);--mt:var(--c-op)}.nx-mod.m-tac{--mc:var(--tac);--mt:var(--c-tac)}.nx-mod.m-str{--mc:var(--str);--mt:var(--c-mkt)}.nx-mod-rec{--mc:var(--ink);--mt:var(--ink)}
.nx-mod-hz{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--mt)}
.nx-mod-hz i{width:12px;height:12px;border-radius:50%;background:var(--mc)}
.nx-mod h3{font-size:clamp(22px,2.2vw,28px);margin:6px 0 8px;letter-spacing:-.01em}
.nx-mod p{margin:0 0 10px;color:var(--muted);font-size:16.5px;max-width:52ch}
.nx-mod-dk{font-size:12.5px!important;font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin:4px 0 6px!important}
.nx-mod-dec{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.nx-mod-dec li{font-size:14px;padding:4px 10px;border-radius:999px;background:color-mix(in srgb,var(--mc) 14%,transparent);color:var(--ink)}
.nx-mod-tags{display:flex;gap:8px;flex-wrap:wrap;margin:0!important}
.nx-mod-tags span{font-size:13px;font-weight:600;padding:4px 10px;border-radius:999px;border:1px solid var(--line)}
.nx-mod-tags .first{border-color:var(--mc);color:var(--mt)}
.nx-mod-viz{width:100%;height:auto;display:block}
.nx-vt{font-size:12px;fill:var(--muted)}.nx-vt.b{font-weight:700;fill:var(--ink);font-size:13px}
.nx-mod.rv{opacity:0;transform:translateY(24px);transition:opacity .6s,transform .6s}
.nx-mod.rv.in{opacity:1;transform:none}
/* explainability plain words */
.nx-why{margin:16px 0 0;padding:12px 14px;border-radius:12px;background:var(--bg);border:1px solid var(--line);font-size:15px;line-height:1.5}
.nx-why span{display:block;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--c-op);margin-bottom:4px}
/* security */
.nx-sec-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:40px;align-items:center}
.nx-sec-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.nx-sec-list li{display:flex;flex-direction:column;gap:4px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:var(--bg-2)}
.nx-sec-list b{font-size:16.5px}.nx-sec-list span{font-size:14.5px;color:var(--muted)}
@media (max-width:960px){.nx-bn-box,.nx-mod,.nx-sec-grid{grid-template-columns:1fr}.nx-gains{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.nx-gains,.nx-sec-list,.nx-depts{grid-template-columns:1fr}.nx-mod{padding:20px}.nx-dept b{font-size:18px}}
@media (prefers-reduced-motion:reduce){.nx-mod.rv{opacity:1;transform:none}}
.nx-dept i{display:none}
@media (max-width:600px){.nx-depts{grid-template-columns:1fr 1fr}.nx-dept{flex-direction:column;gap:2px}}
/* ===== Round 9: homepage ===== */
.h9-hero{background:var(--navy-deep);color:#fff;padding:148px 0 56px}
.h9-kick{color:#A9C6F0;font-weight:600;margin:0 0 14px;font-size:16px}
.h9-hero h1{font-size:clamp(38px,4.6vw,64px);line-height:1.02;letter-spacing:-.025em;margin:0 0 20px;max-width:17ch}
.h9-lede{font-size:clamp(18px,1.5vw,21px);color:#C9D5E3;max-width:44ch;margin:0}
.h9-flow{list-style:none;margin:48px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.h9-flow li{position:relative}
.h9-flow li:not(:last-child)::after{content:"";position:absolute;right:-9px;top:50%;width:8px;height:8px;border-top:2px solid #6D98E0;border-right:2px solid #6D98E0;transform:translateY(-50%) rotate(45deg);z-index:2}
.h9-flow a{display:flex;align-items:center;gap:12px;padding:16px 18px;border:1px solid #2C3B4D;border-radius:14px;background:#1A2533;color:#fff;text-decoration:none;font-size:16.5px;transition:border-color .2s,background .2s}
.h9-flow a:hover{border-color:#6D98E0;background:#1F2C3C}
.h9-ic{display:inline-flex;color:#A9C6F0;flex:none}.h9-ic svg{width:24px;height:24px}
.h9-proof{list-style:none;margin:36px 0 0;padding:20px 0 0;border-top:1px solid #2C3B4D;display:flex;flex-wrap:wrap;gap:12px 32px;color:#A9B8CA;font-size:15.5px}
.h9-proof b{color:#fff}
.h9-ps{margin:12px 0 0;color:#8C9CB0;font-size:15px}
/* story */
.h9-story{background:var(--navy-deep);color:#fff;padding:0 0 40px}
.h9-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px}
.h9-step{min-height:92vh;display:flex;align-items:center}
.h9-card{max-width:440px}
.h9-num{display:flex;align-items:center;gap:10px;color:#A9C6F0;font-weight:600;font-size:15px;margin:0 0 12px}
.h9-card h2{font-size:clamp(26px,2.6vw,38px);line-height:1.1;letter-spacing:-.015em;margin:0 0 14px;color:#fff}
.h9-card p{color:#C9D5E3;font-size:17.5px;margin:0 0 16px}
.h9-more{color:#A9C6F0;font-weight:600;text-decoration:none;font-size:16px}.h9-more:hover{color:#fff}
.h9-stick{position:sticky;top:0;height:100vh;height:100svh;display:flex;align-items:center}
.h9-vis{position:relative;width:100%;height:min(560px,78vh);background:#1A2533;border:1px solid #2C3B4D;border-radius:20px;overflow:hidden}
.h9-note{position:absolute;right:16px;bottom:10px;margin:0;font-size:12px;color:#7F90A4}
.sc{position:absolute;opacity:0;visibility:hidden;transition:opacity .45s,transform .45s,visibility 0s .45s;transform:translateY(8px)}
.h9-vis[data-step="1"] .sc-chips,.h9-vis[data-step="1"] .sc-chart,.h9-vis[data-step="2"] .sc-models,.h9-vis[data-step="2"] .sc-chart,
.h9-vis[data-step="3"] .sc-recon,.h9-vis[data-step="4"] .sc-tool{opacity:1;visibility:visible;transform:none;transition:opacity .45s,transform .45s,visibility 0s}
.sc-head{margin:0 0 10px;font-size:14px;color:#A9B8CA}.sc-head b{color:#fff;font-size:20px;font-variant-numeric:tabular-nums}
.sc-chips,.sc-models{top:22px;left:22px;right:22px}
.sc-chips ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.sc-chips li{font-size:14px;padding:6px 12px;border-radius:999px;border:1px solid #2C3B4D;color:#A9B8CA;transition:background .4s,color .4s,border-color .4s}
.h9-vis[data-step="1"] .sc-chips li[data-pick="1"]{background:#3D65AA;border-color:#3D65AA;color:#fff;transition-delay:1s}
.sc-chart{left:22px;right:22px;bottom:46px;height:54%}
.sc-chart svg{width:100%;height:100%;display:block;overflow:visible}
.ch-now{stroke:#3A4B60;stroke-dasharray:4 4}
.ch-ind,.ch-dem,.ch-fc{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.6s ease}
.ch-ind{stroke:#6D98E0;stroke-width:3}.ch-dem{stroke:#E6ECF3;stroke-width:2.5}.ch-fc{stroke:#A9C6F0;stroke-width:3}
.ch-band{fill:rgba(169,198,240,.16);opacity:0;transition:opacity .6s .6s}
.h9-vis[data-step="1"] .ch-ind,.h9-vis[data-step="1"] .ch-dem,.h9-vis[data-step="2"] .ch-ind,.h9-vis[data-step="2"] .ch-dem{stroke-dashoffset:0}
.h9-vis[data-step="2"] .ch-fc{stroke-dashoffset:0;transition-delay:.4s}.h9-vis[data-step="2"] .ch-band{opacity:1}
.h9-vis[data-step="2"] .ch-ind{opacity:.35;transition:opacity .5s}
.ch-ann{position:absolute;inset:0;pointer-events:none}
.ch-lead{position:absolute;height:0;border-top:2px solid #A9C6F0;transform:translateY(-14px)}
.ch-lead::before,.ch-lead::after{content:"";position:absolute;top:-6px;width:2px;height:10px;background:#A9C6F0}.ch-lead::after{right:0}.ch-lead::before{left:0}
.ch-lead b{position:absolute;left:50%;bottom:6px;transform:translateX(-50%);white-space:nowrap;font-size:15px;color:#fff;background:#1A2533;padding:0 6px}
.h9-vis[data-step="2"] .ch-lead{opacity:0}
.ch-now-l{position:absolute;bottom:-22px;transform:translateX(-50%);font-size:12px;color:#7F90A4}
.ch-leg{position:absolute;left:0;bottom:-30px;list-style:none;margin:0;padding:0;display:flex;gap:16px;font-size:12.5px;color:#A9B8CA}
.ch-leg i{display:inline-block;width:14px;height:3px;border-radius:2px;margin-right:6px;vertical-align:middle}
.ch-leg .li i{background:#6D98E0}.ch-leg .dm i{background:#E6ECF3}.ch-leg .fc i{background:#A9C6F0}
.h9-vis:not([data-step="2"]) .ch-leg .fc{display:none}
.ch-leg{bottom:auto;top:-26px}.ch-now-l{bottom:-20px}
.sc-models{display:grid;grid-template-columns:1.2fr 1fr;gap:18px}
.md-tiles{display:grid;grid-template-columns:repeat(8,1fr);gap:5px}
.md-tiles i{height:24px;border-radius:5px;background:#24344A;font-style:normal;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;color:#16202B;opacity:.5;transition:background .4s,opacity .4s}
.md-tiles i[data-win="1"]{grid-column:span 2}
.h9-vis[data-step="2"] .md-tiles i{animation:md-flick .9s var(--d) both}
.h9-vis[data-step="2"] .md-tiles i[data-win="1"]{background:#A9C6F0;opacity:1;transition-delay:1.1s}
@keyframes md-flick{0%{opacity:.2}40%{opacity:.9;background:#3A4B60}100%{opacity:.5}}
.md-why ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.md-why li{display:grid;grid-template-columns:1fr 60px 34px;align-items:center;gap:8px;font-size:13px;color:#C9D5E3}
.md-why li i{display:block;height:8px;border-radius:4px;background:#6D98E0;width:var(--w)}
.md-why li.neg i{background:#E08A7E}.md-why li b{text-align:right;font-variant-numeric:tabular-nums}
.sc-recon{inset:20px 22px 36px}
.rc9-kpis{display:flex;gap:10px}
.rc9-kpis div{background:#16202B;border:1px solid #2C3B4D;border-radius:10px;padding:7px 12px;min-width:120px}
.rc9-kpis span{display:block;font-size:12px;color:#A9B8CA}.rc9-kpis b{font-size:20px;font-variant-numeric:tabular-nums}
#rc9-gb{color:#E08A7E}#rc9-ga{color:#A9C6F0}
.rc9-row{display:grid;grid-template-columns:118px 1fr;gap:10px;align-items:center;margin-top:10px}
.rc9-lab{margin:0;font-size:12px;color:#8C9CB0;line-height:1.3}.rc9-lab b{display:block;color:#fff;font-size:14px}
.rc9-cells{display:grid;gap:8px}.r0 .rc9-cells{grid-template-columns:1fr}.r1 .rc9-cells{grid-template-columns:1fr 1fr}.r2 .rc9-cells{grid-template-columns:repeat(4,1fr)}
.rc9-n{--hc:#6D98E0;border:1px solid #2C3B4D;border-radius:10px;padding:7px 10px;background:color-mix(in srgb,var(--hc) calc(var(--t,0) * 45%),#1F2C3C);transition:background .3s}
.rc9-n[data-dir="dn"]{--hc:#E08A7E}
.rc9-n .nm{display:block;font-size:12px;color:#A9B8CA}.rc9-n .v{display:block;font-size:21px;font-variant-numeric:tabular-nums;color:#fff}
.rc9-n .own,.rc9-n .sum{display:block;font-size:11.5px;color:#A9B8CA;line-height:1.35}
.rc9-n .sum[data-ok="0"]{color:#E08A7E}.rc9-n .sum[data-ok="1"]{color:#A9C6F0}.rc9-n .sum[data-ok="1"]::before{content:"✓ "}
.rc9-ctl{display:block;margin-top:14px;font-size:14px;color:#C9D5E3}
.rc9-ctl input{display:block;width:100%;margin-top:6px;accent-color:#6D98E0}
.sc-tool{inset:22px 22px 36px;display:flex;flex-direction:column;gap:14px}
.tl-win{background:#F3F6FA;color:#1E2A37;border-radius:12px;overflow:hidden}
.tl-bar{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#DCE5F0;font-size:12.5px;font-weight:600}
.tl-bar i{width:9px;height:9px;border-radius:50%;background:#A9B8CA}.tl-bar span{margin-left:8px}
.tl-win table{width:100%;border-collapse:collapse;font-size:13px}
.tl-win th,.tl-win td{padding:6px 8px;text-align:right;border-bottom:1px solid #D9E1EA}
.tl-win thead th{color:#4F5E6E;font-weight:600}.tl-win tbody th{text-align:left;font-weight:600}
.tl-win td{font-variant-numeric:tabular-nums;color:transparent;transition:background .3s,color .3s}
.h9-vis[data-step="4"] .tl-win td{background:#E4ECF8;color:#1E2A37;transition-delay:var(--d)}
.tl-src{margin:0;padding:8px 12px;font-size:12.5px;color:#4F5E6E}.tl-src span{background:#3D65AA;color:#fff;border-radius:999px;padding:2px 8px;font-weight:600;margin-right:4px}
.tl-flow{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;counter-reset:f}
.tl-flow li{counter-increment:f;font-size:13px;color:#C9D5E3;border:1px solid #2C3B4D;border-radius:10px;padding:7px 9px}
.tl-flow li::before{content:counter(f) " ";color:#A9C6F0;font-weight:700}
.tl-teams{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:0;font-size:13px}
.tl-teams span{border:1px solid #3D65AA;border-radius:999px;padding:3px 10px;color:#E6ECF3}.tl-teams b{color:#A9C6F0;margin-left:4px}
/* benefits */
.h9-ben h2{max-width:22ch}
.h9-intro{color:var(--muted);font-size:19px;max-width:60ch;margin:0 0 26px}
.h9-outs{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.h9-out{display:flex;flex-direction:column;border:1.5px solid var(--line);border-radius:16px;padding:20px 22px;background:var(--bg)}
.h9-out h3{font-size:19px;margin:0 0 8px}.h9-out p{color:var(--muted);font-size:16px;margin:0 0 16px;flex:1}
.h9-out b{display:block;text-align:center;border-radius:10px;padding:10px;color:#fff;font-size:16px}
.h9-out.o1 b{background:var(--gap)}.h9-out.o2 b{background:#7F90A4}.h9-out.o3 b{background:var(--blue)}
.h9-out.o3{border-color:var(--blue)}
.h9-evid{display:grid;grid-template-columns:1.1fr 1fr;gap:14px;margin-top:14px}
.h9-big{background:var(--blue);color:#fff;border-radius:16px;padding:26px 28px;display:flex;flex-direction:column;gap:8px}
.h9-big b{font-size:clamp(52px,6vw,76px);line-height:1;letter-spacing:-.02em}.h9-big span{font-size:17.5px}.h9-big small{opacity:.8;font-size:13.5px}
.h9-q{margin:0;background:var(--bg-2);border-radius:16px;padding:26px 28px;display:flex;flex-direction:column;justify-content:center}
.h9-q blockquote{margin:0 0 14px;font-size:20px;line-height:1.4}
.h9-q figcaption{font-size:15px;color:var(--muted)}.h9-q figcaption b{display:block;color:var(--ink)}
/* modules row */
.h9-modlist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.h9-modlist li{background:var(--bg);border:1px solid var(--line);border-radius:16px;padding:20px 22px}
.h9-modlist i{display:block;width:30px;height:6px;border-radius:3px;margin-bottom:12px}
.h9-modlist .m-op i{background:var(--op)}.h9-modlist .m-tac i{background:var(--tac)}.h9-modlist .m-str i{background:var(--str)}
.h9-hz{margin:0;font-size:14px;font-weight:600;color:var(--c-tac)}
.h9-modlist h3{font-size:20px;margin:4px 0 8px}.h9-modlist p{color:var(--muted);font-size:16px;margin:0 0 12px}
.h9-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0!important}
.h9-tags span{font-size:13px;font-weight:600;padding:3px 10px;border-radius:999px;border:1px solid var(--line);color:var(--ink)}
.h9-tags .first{border-color:var(--blue);color:var(--c-tac)}
.h9-modfoot{margin:18px 0 0;color:var(--muted)}
/* trust row */
.h9-trust{padding-top:56px;padding-bottom:56px}
.h9-trustlist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.h9-trustlist a{display:flex;flex-direction:column;gap:6px;padding-top:14px;border-top:3px solid var(--blue);color:var(--ink);text-decoration:none}
.h9-trustlist b{font-size:17px}.h9-trustlist span{font-size:15px;color:var(--muted)}
.h9-trustlist a:hover b{color:var(--link)}
@media (max-width:960px){
  .h9-flow{grid-template-columns:1fr 1fr}.h9-flow li:nth-child(2)::after{display:none}
  .h9-grid{grid-template-columns:1fr;gap:0}
  .h9-stick{order:-1;height:auto;top:0;z-index:3;padding:10px 0;background:var(--navy-deep)}
  .h9-vis{height:clamp(330px,52vh,460px)}
  .h9-step{min-height:78vh;align-items:flex-end;padding-bottom:6vh}
  .h9-card{background:rgba(22,32,43,.94);padding:4px 0}
  .h9-outs,.h9-evid,.h9-modlist{grid-template-columns:1fr}
  .h9-trustlist{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
  .h9-hero{padding-top:118px}
  .h9-flow a{padding:12px;font-size:15px;gap:8px}
  .sc-chips,.sc-models{top:14px;left:14px;right:14px}.sc-chart{left:14px;right:14px;bottom:40px;height:46%}
  .sc-chips li{font-size:12.5px;padding:4px 9px}
  .sc-models{grid-template-columns:1fr}.md-grid{display:none}
  .sc-recon,.sc-tool{inset:12px 12px 30px}
  .rc9-row{grid-template-columns:1fr;gap:4px;margin-top:6px}.rc9-lab{display:flex;gap:6px;align-items:baseline}.rc9-lab b{display:inline;font-size:13px}
  .rc9-n{padding:5px 7px}.rc9-n .v{font-size:17px}.r2 .rc9-n .own{display:none}.rc9-kpis b{font-size:17px}.rc9-kpis div{min-width:0;flex:1}
  .rc9-ctl{margin-top:8px;font-size:13px}
  .tl-win th:nth-child(n+6),.tl-win td:nth-child(n+6){display:none}
  .tl-flow{grid-template-columns:1fr 1fr}.tl-teams{font-size:12px}
  .h9-trustlist{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.sc,.ch-ind,.ch-dem,.ch-fc,.md-tiles i{transition:none!important;animation:none!important}.ch-ind,.ch-dem,.ch-fc{stroke-dashoffset:0}}
/* round 9 fixes */
.h9-hero .wrap{display:grid;grid-template-columns:1.25fr .75fr;gap:24px 56px;align-items:center}
.h9-hero .h9-proof,.h9-hero .h9-ps{grid-column:1/-1}
.h9-side-h{margin:0 0 12px;font-size:14px;font-weight:600;color:#A9B8CA}
.h9-hero .h9-flow{margin:0;grid-template-columns:1fr;gap:12px}
.h9-hero .h9-flow li:not(:last-child)::after{right:auto;left:30px;top:auto;bottom:-10px;transform:rotate(135deg)}
.h9-flow a{counter-increment:none}
.ch-leg{top:auto;bottom:-30px}.ch-now-l{bottom:auto;top:-20px}
.sc-chart{bottom:50px}
.sc-recon,.sc-tool{display:flex;flex-direction:column;justify-content:center}
.sc-tool{gap:14px}
.h9-q blockquote{color:var(--ink);font-style:normal}
@media (max-width:960px){.h9-hero .wrap{grid-template-columns:1fr}.h9-hero .h9-flow{grid-template-columns:1fr 1fr}.h9-hero .h9-flow li::after{display:none}}
@media (max-width:600px){
  .sc-chips li:nth-child(n+7){display:none}
  .sc-chart{height:40%;bottom:44px}
  .rc9-kpis div{padding:4px 10px}.rc9-kpis span{display:inline;margin-right:6px}
  .sc-recon{inset:10px 12px 26px}.h9-note{font-size:11px;bottom:6px;right:12px}
  .rc9-ctl input{margin-top:2px}
}
@media (max-width:600px){.lg-x{display:none}.ch-leg{gap:12px;font-size:12px}}
/* round 9: indicio one page */
.o9-run{list-style:none;margin:28px 0 8px;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:10px;counter-reset:r}
.o9-run li{counter-increment:r;border:1px solid var(--line);border-radius:14px;padding:14px 16px;background:var(--bg);font-size:15px;color:var(--muted)}
.o9-run li::before{content:counter(r);display:inline-flex;width:26px;height:26px;border-radius:50%;background:var(--blue);color:#fff;font-weight:700;font-size:14px;align-items:center;justify-content:center;margin-bottom:8px}
.o9-run b{display:block;color:var(--ink);font-size:16.5px}
.o9-inc-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center}
.o9-mkt{margin:0;display:grid;gap:10px}
.o9-b{border-radius:14px;padding:16px 18px;display:flex;flex-direction:column;gap:4px}
.o9-b span{font-weight:700;font-size:17px}.o9-b b{font-weight:400;font-size:14.5px;opacity:.85}
.o9-b.o9-top{background:var(--blue);color:#fff}
.o9-row{display:grid;grid-template-columns:1.1fr 1fr;gap:10px}
.o9-b.you{background:var(--bg-2);border:1px solid var(--line)}
.o9-b.gap{border:2px dashed var(--line);color:var(--muted)}
.o9-mkt figcaption{font-size:14px;color:var(--muted)}
@media (max-width:960px){.o9-inc-grid{grid-template-columns:1fr}.o9-run{grid-template-columns:1fr 1fr}}
/* brand blue text on dark backgrounds -> light blue */
.phero .ebr,.product,.core-tag,.ka-first,.vc-total em,.nfp span,.nfpban span,.pfx .kicker,.sysmap .kicker,.platband .kicker,.pl-hero .kicker,.vh-aside .link-arrow,.fin-card .link-arrow,.nwband .link-arrow,.nw-out b,.pd-ind li b,.tcap b,.mk-node.first .mk-k,.ws.last .ws-when,.hl-td,.pfx-flow li.one .h,.pfx .more-row a{color:#8DB4F2}
/* ===== Round 10: interactive hero ===== */
.hx-hero{padding:128px 0 64px}
.hx-hero .wrap{display:grid;grid-template-columns:.92fr 1.08fr;gap:48px;align-items:center}
.hx-hero h1{font-size:clamp(34px,3.7vw,54px);max-width:15ch}
.hx-hero .h9-proof{flex-direction:column;gap:8px;border-top:1px solid #2C3B4D;margin-top:32px}
.hx{position:relative;display:grid;gap:0;background:#1A2533;border:1px solid #2C3B4D;border-radius:20px;padding:18px 18px 14px;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.hx>*:not(.hx-wires){position:relative;z-index:1}
.hx-wires{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;overflow:visible}
.hx-w{fill:none;stroke:#2C3B4D;stroke-width:1.5;transition:stroke .3s}
.hx-w[data-on="1"]{stroke:#3D65AA}
.hx-wd{stroke:#3D65AA;stroke-dasharray:4 4}
.hx-pd{fill:#8DB4F2}.hx-pd2{fill:#D6E3F7}
.hx-h{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:13.5px;font-weight:600;color:#C9D5E3}
.hx-h span,.hx-note span{display:inline-flex;width:20px;height:20px;border-radius:50%;background:#3D65AA;color:#fff;font-size:12px;font-weight:700;align-items:center;justify-content:center}
.hx-h em{font-style:normal;font-weight:400;color:#7F90A4;margin-left:auto;font-size:12.5px}
.hx-chips{display:flex;flex-wrap:wrap;gap:8px}
.hx-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid #2C3B4D;background:#16202B;color:#A9B8CA;border-radius:999px;padding:6px 12px 6px 9px;font:inherit;font-size:13.5px;cursor:pointer;transition:background .25s,border-color .25s,color .25s}
.hx-chip:hover{border-color:#6D98E0;color:#fff}
.hx-chip[aria-pressed="true"]{background:#3D65AA;border-color:#3D65AA;color:#fff}
.hx-spark{width:40px;height:14px;flex:none}.hx-spark path{stroke:#4F5E6E}
.hx-chip[aria-pressed="true"] .hx-spark path{stroke:#D6E3F7}
.hx-eng{justify-self:center;margin-top:46px;background:#16202B;border:1.5px solid #3D65AA;border-radius:14px;padding:10px 18px 11px;text-align:center;min-width:300px;transition:box-shadow .3s}
.hx-eng .hx-h{justify-content:center;margin-bottom:4px}
.hx-eng[data-busy="1"]{box-shadow:0 0 0 4px rgba(61,101,170,.25),0 0 30px rgba(109,152,224,.35)}
.hx-eng-s{margin:0}.hx-eng-s b{display:block;font-size:15.5px;color:#fff;font-variant-numeric:tabular-nums}
.hx-eng-s i{display:block;font-style:normal;font-size:12px;color:#A9B8CA}
.hx-tool{margin-top:34px;background:#F3F6FA;color:#1E2A37;border-radius:12px;overflow:hidden}
.hx-bar{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#DCE5F0;font-size:12.5px}
.hx-bar i{width:9px;height:9px;border-radius:50%;background:#A9B8CA}.hx-bar b{margin-left:6px}
.hx-sync{margin-left:auto;font-size:12px;font-weight:600;border-radius:999px;padding:2px 9px;background:#fff;color:#2F5596;white-space:nowrap}
.hx-sync[data-s="ok"]::before{content:"✓ "}
.hx-sync[data-s="wait"]{color:#7F90A4}
.hx-sync[data-s="write"]{background:#3D65AA;color:#fff;animation:hx-pulse .6s ease-in-out infinite alternate}
@keyframes hx-pulse{from{opacity:.75}to{opacity:1}}
.hx-tabs{display:flex;align-items:center;gap:4px;padding:8px 12px 0}
.hx-tabs button{font:inherit;font-size:12.5px;border:1px solid #D9E1EA;background:#fff;color:#4F5E6E;border-radius:999px;padding:3px 11px;cursor:pointer}
.hx-tabs button[aria-selected="true"]{background:#1E2A37;border-color:#1E2A37;color:#fff}
.hx-add{margin-left:auto;font-size:11.5px;color:#4A6FA8;font-weight:600}
.hx-chart{display:block;width:100%;height:auto;aspect-ratio:52/18;padding:4px 6px 0}
.hx-today{stroke:#A9B8CA;stroke-dasharray:3 3}
.hx-band{fill:rgba(61,101,170,.14)}
.hx-hist{fill:none;stroke:#1E2A37;stroke-width:2;stroke-linejoin:round}
.hx-plan{fill:none;stroke:#8C9CB0;stroke-width:2;stroke-dasharray:5 4}
.hx-fc{fill:none;stroke:#3D65AA;stroke-width:3;stroke-linejoin:round;stroke-linecap:round}
.hx-dot{fill:#3D65AA}
.hx-tx{font-size:11px;fill:#4F5E6E}.hx-tv{font-size:12px;font-weight:700;fill:#1E2A37}
.hx-bar-hist{fill:#A9B8CA}.hx-bar-plan{fill:#C8D2DE}.hx-bar-fc{fill:#3D65AA}
.hx-foot{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;padding:4px 12px 10px;font-size:12px;color:#4F5E6E}
.hx-l::before{content:"";display:inline-block;width:14px;height:0;border-top:2px solid;vertical-align:middle;margin-right:5px}
.hx-l.hist::before{border-color:#1E2A37}.hx-l.plan::before{border-color:#8C9CB0;border-top-style:dashed}.hx-l.fc::before{border-color:#3D65AA;border-top-width:3px}
.hx-err{margin-left:auto}.hx-e1{color:#2F5596}.hx-e0{color:#B5483C}
.hx-note{display:flex;align-items:center;gap:8px;margin:10px 0 0;font-size:12.5px;color:#A9B8CA}
@media (max-width:1100px){.hx-hero .wrap{grid-template-columns:1fr}.hx-hero h1{max-width:18ch}}
@media (max-width:600px){
  .hx-hero{padding-top:110px}
  .hx{padding:14px 12px 12px}
  .hx-h em{display:none}
  .hx-chip{font-size:12.5px;padding:5px 10px 5px 8px}.hx-spark{display:none}
  .hx-eng{min-width:0;width:100%;margin-top:36px}
  .hx-add{display:none}.hx-err{margin-left:0}
}
@media (max-width:600px){
  .hx-bar i{display:none}.hx-bar b{margin-left:0;white-space:nowrap}
  .hx-sync{font-size:11px;max-width:62%;overflow:hidden;text-overflow:ellipsis}
  .hx-tx{font-size:18px}.hx-tv{font-size:19px}
  .hx-foot{font-size:11.5px}
}
/* ===== Round 11: one product view you scroll through ===== */
.hf{background:var(--navy-deep);color:#fff;padding-bottom:40px}
.hf-grid{display:grid;grid-template-columns:.88fr 1.12fr;grid-template-rows:auto auto;column-gap:56px}
.hf-intro{grid-column:1;grid-row:1;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:110px 0 40px}
.hf-intro h1{font-size:clamp(34px,3.7vw,54px);line-height:1.03;letter-spacing:-.025em;margin:0 0 18px;max-width:15ch}
.hf-intro .h9-proof{flex-direction:column;gap:8px;margin-top:30px}
.hf-steps{grid-column:1;grid-row:2}
.hf-steps .hf-step{min-height:88vh;display:flex;align-items:center}
.hf-stick{grid-column:2;grid-row:1/span 2}
.hf-pin{position:sticky;top:0;height:100vh;height:100svh;display:flex;align-items:center;padding-top:56px}
.hf .hx{width:100%;transition:none}
.hx-part{transition:opacity .4s,border-color .4s,box-shadow .4s}
.hx:not([data-step="0"]) .hx-part{opacity:.42}
.hx[data-step="1"] .hx-src,.hx[data-step="2"] .hx-eng,.hx[data-step="3"] .hx-eng,.hx[data-step="4"] .hx-tool{opacity:1}
.hx-src{border-radius:14px;padding:2px;margin:-2px}
.hx[data-step="1"] .hx-src{box-shadow:0 0 0 1.5px #3D65AA;padding:10px;margin:-10px}
.hx-det{display:none}
.hx[data-step="1"] .det-ind,.hx[data-step="2"] .det-mod,.hx[data-step="3"] .det-rec,.hx[data-step="0"] .det-tool,.hx[data-step="4"] .det-tool{display:block;animation:hx-in .45s ease both}
@keyframes hx-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.hf .hx-eng{margin-top:40px}
.hf .hx-tool{margin-top:30px}
.hx[data-step="2"] .hx-eng,.hx[data-step="3"] .hx-eng{justify-self:stretch;text-align:left;box-shadow:0 0 0 4px rgba(61,101,170,.18)}
.hx[data-step="2"] .hx-eng .hx-h,.hx[data-step="3"] .hx-eng .hx-h{justify-content:flex-start}
.hx[data-step="2"] .hx-eng-s,.hx[data-step="3"] .hx-eng-s{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;margin-bottom:10px}
.hx[data-step="4"] .hx-tool{box-shadow:0 0 0 3px #3D65AA}
.hx-n{display:inline-flex;width:20px;height:20px;border-radius:50%;background:#3D65AA;color:#fff;font-size:12px;font-weight:700;align-items:center;justify-content:center;margin-right:4px}
.hx-sub{margin:10px 0 8px;font-size:13px;color:#A9B8CA}.hx-sub b{color:#fff;font-size:16px}
.hx-cw{position:relative;height:130px}
.hx-cw svg{width:100%;height:100%;display:block;overflow:visible}
.hx[data-step="1"] .hx-cw .ch-ind,.hx[data-step="1"] .hx-cw .ch-dem{stroke-dashoffset:0}
.ch-leg2{list-style:none;margin:6px 0 0;padding:0;display:flex;gap:16px;font-size:12.5px;color:#A9B8CA}
.ch-leg2 i{display:inline-block;width:14px;height:3px;border-radius:2px;margin-right:6px;vertical-align:middle}
.ch-leg2 .li i{background:#6D98E0}.ch-leg2 .dm i{background:#E6ECF3}
.det-mod{display:none}
.hx[data-step="2"] .det-mod{display:grid;grid-template-columns:1.1fr 1fr;gap:16px}
.hx[data-step="2"] .md-tiles i{animation:md-flick .9s var(--d) both}
.hx[data-step="2"] .md-tiles i[data-win="1"]{background:#A9C6F0;opacity:1;transition-delay:1.1s}
.md-list{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.md-list li{display:grid;grid-template-columns:1fr 56px 34px;align-items:center;gap:8px;font-size:13px;color:#C9D5E3}
.md-list li i{display:block;height:8px;border-radius:4px;background:#6D98E0;width:var(--w);transition:width .4s}
.md-list li.neg i{background:#E08A7E}.md-list li b{text-align:right;font-variant-numeric:tabular-nums}
.md-list .md-none{display:block;color:#7F90A4}
.det-rec .rc9-row{grid-template-columns:110px 1fr}
.hx-teams{display:none;flex-wrap:wrap;gap:6px;align-items:center;margin:12px 0 0;font-size:13px}
.hx[data-step="4"] .hx-teams{display:flex;animation:hx-in .45s .2s ease both}
.hx-teams span{border:1px solid #3D65AA;border-radius:999px;padding:3px 10px;color:#E6ECF3}.hx-teams b{color:#A9C6F0;margin-left:4px}
.hx-note{justify-content:flex-end}
@media (max-width:960px){
  .hf-grid{grid-template-columns:1fr;grid-template-rows:none}
  .hf-intro{grid-column:auto;grid-row:auto;min-height:0;padding:112px 0 28px}
  .hf-stick{grid-column:auto;grid-row:auto;position:sticky;top:0;z-index:3;align-self:start;background:var(--navy-deep);padding:8px 0}
  .hf-pin{position:static;height:auto;padding:0;display:block}
  .hf-steps{grid-column:auto;grid-row:auto}
  .hf-steps .hf-step{min-height:96vh;align-items:flex-end;padding-bottom:4vh}
  .hx-note{display:none}
}
@media (max-width:600px){
  .hf .hx{padding:12px 12px 10px}
  .hf .hx-eng{margin-top:30px;min-width:0;width:100%}.hf .hx-tool{margin-top:22px}
  .hx[data-step="2"] .hx-chips,.hx[data-step="3"] .hx-chips{display:none}
  .hx:not([data-step="0"]):not([data-step="2"]):not([data-step="3"]) .hx-eng-s i{display:none}
  .hx[data-step="2"] .det-mod{grid-template-columns:1fr}.hx[data-step="2"] .md-grid{display:none}
  .hx-cw{height:100px}
  .det-rec .rc9-row{grid-template-columns:1fr}
  .hx-teams{font-size:12px}
}
.hx-cw{margin-top:28px}
.hx[data-step="3"] .hx-chips{display:none}
.hx[data-step="2"] .hx-eng-s i,.hx[data-step="3"] .hx-eng-s i{display:none}
.det-rec .rc9-n{padding:6px 10px}.det-rec .rc9-row{margin-top:8px}
@media (max-width:960px){.hf-intro{order:1}.hf-stick{order:2}.hf-steps{order:3}.hf-intro .h9-proof{margin-top:20px}}
@media (max-width:600px){
  .hx[data-step="2"] .hx-src,.hx[data-step="3"] .hx-src{display:none}
  .hx[data-step="2"] .hx-eng,.hx[data-step="3"] .hx-eng{margin-top:0}
  .det-rec .rc9-n .own{display:none}
  .det-rec .rc9-kpis div{padding:3px 8px}.det-rec .rc9-kpis span{font-size:11px}
  .det-rec .rc9-n .v{font-size:16px}.det-rec .rc9-n .nm{font-size:11px}
  .det-rec .rc9-lab{font-size:11px}
  .hx-cw{height:80px;margin-top:24px}
  .hf-steps .hf-step{min-height:110vh}
}
@media (max-width:600px){.det-rec .rc9-kpis span,.det-rec .rc9-n .nm{white-space:nowrap}.det-rec .r2 .rc9-n{padding:5px 6px}}
/* ===== Round 12: one living canvas ===== */
.ep{position:relative;background:var(--navy-deep);color:#fff}
.ep-stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden}
.ep-stage canvas{display:block;width:100%;height:100%}
.ep-stage::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(22,32,43,.92) 0,rgba(22,32,43,.6) 30%,rgba(22,32,43,0) 46%);pointer-events:none;z-index:1}
.ep-note{position:absolute;right:20px;bottom:14px;margin:0;font-size:12px;color:#7F90A4;z-index:2}
.ep-steps{position:relative;margin-top:-100vh;margin-top:-100svh;z-index:5;pointer-events:none}
.ep-step{min-height:100vh;min-height:100svh;display:flex;align-items:center}
.ep-step .wrap{width:100%}
.ep-card{max-width:430px;pointer-events:auto}
.ep-hero .ep-card{max-width:520px;padding-top:60px}
.ep-hero h1{font-size:clamp(36px,3.9vw,58px);line-height:1.03;letter-spacing:-.025em;margin:0 0 18px}
.ep-card h2{font-size:clamp(26px,2.6vw,38px);line-height:1.1;letter-spacing:-.015em;margin:0 0 14px;color:#fff}
.ep-card p{color:#C9D5E3;font-size:17.5px;margin:0 0 16px}
.ep-hero .h9-proof{flex-direction:column;gap:8px;margin-top:28px}
@media (max-width:960px){
  .ep-stage::before{background:linear-gradient(0deg,rgba(22,32,43,.95) 0,rgba(22,32,43,.7) 38%,rgba(22,32,43,0) 52%)}
  .ep-step{align-items:flex-end;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px))}
  .ep-hero .ep-card{padding-top:0}
  .ep-card{max-width:none}
  .ep-step:not(.ep-hero) .ep-card{background:rgba(22,32,43,.9);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:18px}
  .ep-hero h1{font-size:34px}.ep-hero .h9-proof,.ep-hero .h9-ps{display:none}
  .ep-card p{font-size:16px}.ep-card h2{font-size:24px}
  .ep-note{top:10px;bottom:auto;right:14px}
}
.ep-card .h9-ps{font-size:15px;color:#8C9CB0;margin:12px 0 0}
.ep-hero .h9-proof li{font-size:15.5px}
/* ===== Round 13: canvas with changing text on top ===== */
.ep2{position:relative;background:var(--navy-deep);color:#fff}
.ep2-stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden}
.ep2-stage canvas{position:absolute;inset:0;display:block;width:100%;height:100%}
.ep2-scroll{height:400vh;height:400svh}
.ep2-head{position:relative;z-index:2;padding-top:104px}
.ep2-t{position:absolute;left:28px;right:28px;top:104px;opacity:0;transform:translateY(10px);transition:opacity .45s,transform .45s;pointer-events:none}
.ep2-t.on{opacity:1;transform:none;pointer-events:auto}
.ep2-t h1{font-size:clamp(34px,3.8vw,56px);line-height:1.03;letter-spacing:-.025em;margin:0 0 14px;max-width:21ch}
.ep2-t h2{font-size:clamp(26px,2.7vw,40px);line-height:1.08;letter-spacing:-.015em;margin:0 0 10px;max-width:26ch;color:#fff}
.ep2-t p{color:#C9D5E3;font-size:17.5px;margin:0 0 10px;max-width:62ch}
.ep2-t .h9-lede{font-size:clamp(17px,1.4vw,20px);max-width:48ch}
.ep2-t .ctas{margin-top:18px}
.ep2-proof{font-size:14.5px!important;color:#A9B8CA!important;margin-top:16px!important}.ep2-proof b{color:#fff}
.ep2-dots{position:absolute;right:28px;top:50%;transform:translateY(-50%);list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;z-index:3}
.ep2-dots li{display:flex;align-items:center;justify-content:flex-end;gap:8px;cursor:pointer;font-size:12px;color:#7F90A4}
.ep2-dots li::after{content:"";width:8px;height:8px;border-radius:50%;background:#3A4B60;transition:background .3s,transform .3s}
.ep2-dots li span{opacity:0;transition:opacity .3s}
.ep2-dots li:hover span,.ep2-dots li.on span{opacity:1}
.ep2-dots li.on{color:#E6ECF3}.ep2-dots li.on::after{background:#8DB4F2;transform:scale(1.4)}
.ep2-ps{color:#8C9CB0;font-size:15px;margin:0 auto;padding-top:18px;padding-bottom:18px;background:transparent}
@media (max-width:1100px){.ep2-dots li span{display:none}}
@media (max-width:760px){
  .ep2-t{top:80px;left:20px;right:20px}
  .ep2-t h1{font-size:30px}.ep2-t h2{font-size:23px}.ep2-t p{font-size:15.5px}
  .ep2-t .h9-num{margin-bottom:6px}
  .ep2-proof{display:none}
  .ep2-dots{right:8px}
  .ep2-t .h9-more{font-size:14.5px}
}
.ep2-strip{background:var(--navy-deep);border-top:1px solid #2C3B4D;color:#A9B8CA}
.ep2-strip .wrap{display:flex;flex-wrap:wrap;gap:8px 32px;padding-top:18px;padding-bottom:20px;font-size:15px}
.ep2-strip p{margin:0}.ep2-strip b{color:#fff}.ep2-strip .ps{flex-basis:100%;color:#8C9CB0}
/* round 14: text on the left, picture on the right; text sinks into the background as you scroll */
@media (min-width:761px){
  .ep2-head{position:absolute;inset:0;padding:0;max-width:none;margin:0}
  .ep2-t{left:max(28px,4vw);right:auto;width:min(31vw,430px);top:52%;transform:translateY(-50%) translateY(18px);transition:opacity .5s,transform .6s,filter .6s}
  .ep2-t.on{transform:translateY(-50%)}
  .ep2-t.past{opacity:0;transform:translateY(-50%) translateY(-28px) scale(.96);filter:blur(3px)}
  .ep2-t h1{font-size:clamp(30px,3.1vw,46px);max-width:none}
  .ep2-t h2{font-size:clamp(24px,2.2vw,34px);max-width:none}
  .ep2-t p{font-size:16.5px;max-width:none}
  .ep2-t .h9-lede{font-size:clamp(16px,1.25vw,19px)}
  .ep2-stage::after{content:"";position:absolute;inset:0 auto 0 0;width:38vw;background:linear-gradient(90deg,rgba(22,32,43,.55),rgba(22,32,43,0));pointer-events:none;z-index:1}
}

/* round 15: text on top, centred, changing smoothly; the picture uses the full width below */
@media (min-width:761px){
  .ep2-t{left:50%;right:auto;width:min(880px,86vw);top:clamp(84px,11vh,112px);text-align:center;transform:translateX(-50%) translateY(22px);filter:blur(6px);transition:opacity .55s ease,transform .7s cubic-bezier(.2,.7,.2,1),filter .7s ease}
  .ep2-t.on{transform:translateX(-50%);filter:none}
  .ep2-t.past{opacity:0;transform:translateX(-50%) translateY(-26px) scale(.97);filter:blur(6px)}
  .ep2-t .h9-num,.ep2-t .ctas{justify-content:center}
  .ep2-t h1{font-size:clamp(32px,3vw,46px);max-width:none;margin-left:auto;margin-right:auto}
  .ep2-t[data-s="0"]{width:min(1040px,90vw)}
  .ep2-t .ctas{margin-top:14px}
  .ep2-t h2{font-size:clamp(26px,2.4vw,38px);max-width:28ch;margin-left:auto;margin-right:auto}
  .ep2-t p{max-width:66ch;margin-left:auto;margin-right:auto}
  .ep2-t .h9-lede{max-width:56ch}
  .ep2-stage::after{display:none}
}
.ep2-ex{display:block;margin-top:8px;font-size:14.5px;color:#8DB4F2;font-weight:600}
@media (max-width:760px){.ep2-ex{font-size:13.5px;margin-top:6px}}
/* round 16: model links, file placeholders */
.mrow .chips a.mlink{display:inline-block;padding:6px 12px;border-radius:999px;background:#E9F0FA;color:#2F5596;font-weight:600;font-size:14px;text-decoration:none;border:1px solid #CFDDF1}
.mrow .chips a.mlink:hover{background:#3D65AA;color:#fff;border-color:#3D65AA}
.pdf-ph{border-style:dashed!important;opacity:.75;cursor:default}

/* round 17: customers in a horizontal flow on the homepage */
.h9-vhead{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:26px}
.h9-vhead h2{margin:4px 0 0}
.h9-vnav{display:flex;align-items:center;gap:10px}.h9-vnav a{font-weight:600;color:var(--link);text-decoration:none;margin-right:8px}
.h9-vnav button{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:var(--bg);font-size:18px;cursor:pointer;color:var(--ink)}
.h9-vnav button:hover{border-color:var(--blue);color:var(--blue)}
.h9-vtrack{list-style:none;margin:0;padding:4px 0 18px;display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;position:relative}
.h9-vcard{flex:0 0 min(470px,84vw);scroll-snap-align:start;background:var(--bg);border:1px solid var(--line);border-radius:18px;padding:28px 30px;display:flex;flex-direction:column;position:relative}
.h9-vcard::after{content:"";position:absolute;top:44px;right:-21px;width:22px;height:2px;background:var(--blue);opacity:.35}
.h9-vcard:last-child::after{display:none}
.h9-vstep{font-size:13px;font-weight:700;color:var(--blue);letter-spacing:.06em}
.h9-vk{margin:10px 0 2px;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}
.h9-vcard h3{margin:0 0 14px;font-size:24px}
.h9-vcard blockquote{margin:0 0 16px;font-size:19px;line-height:1.42;flex:1}
.h9-vwho{margin:0;font-size:14.5px;color:var(--muted)}.h9-vwho b{display:block;color:var(--ink)}
.h9-vstat{display:flex;gap:12px;align-items:baseline;margin:18px 0 0;padding-top:16px;border-top:1px solid var(--line)}
.h9-vstat b{font-size:30px;color:var(--blue)}.h9-vstat span{font-size:14.5px;color:var(--muted)}
.h9-vlink{margin-top:14px;font-weight:600;color:var(--link);text-decoration:none}
.h9-vbadge{margin:14px 0 0;font-size:13px;color:var(--muted);background:var(--bg-2);border-radius:10px;padding:10px 12px}
.h9-vbadge a{color:var(--link);font-weight:600}
@media (max-width:760px){.h9-vnav button{display:none}.h9-vcard{padding:24px}.h9-vcard blockquote{font-size:17px}}
.h9-vcard blockquote{color:var(--ink);font-style:normal;border:0;padding:0;background:none;opacity:1}
@media (min-width:1100px){.h9-vcard{flex:0 0 calc((100% - 40px) / 3)}.h9-vnav button{display:none}.h9-vtrack{overflow:visible}}
.h9-vbadge{margin-top:6px!important;display:inline-block}
.h9-vcard blockquote{flex:0 0 auto}.h9-vwho{margin-top:auto}

/* round 18: trusted-by ticker in the first view, and a bridge from the scroll story into "Why it matters" */
.ep2-trust{display:flex;align-items:center;gap:16px;margin-top:22px;max-width:100%}
.ep2-trust>p{margin:0;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:#7F90A4;font-weight:600;white-space:nowrap}
.ep2-marq{overflow:hidden;flex:1;min-width:0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.ep2-mtrack{display:flex;gap:34px;width:max-content;animation:ep2marq 38s linear infinite}
.ep2-marq:hover .ep2-mtrack{animation-play-state:paused}
.ep2-mtrack a,.ep2-mtrack span{display:flex;align-items:baseline;gap:8px;white-space:nowrap;color:#E6ECF3;text-decoration:none}
.ep2-mtrack b{font-size:16px;font-weight:700}.ep2-mtrack i{font-style:normal;font-size:13px;color:#7F90A4}
.ep2-mtrack a:hover b{color:#8DB4F2}
@keyframes ep2marq{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@media (prefers-reduced-motion:reduce){.ep2-mtrack{animation:none}}
@media (min-width:761px){.ep2-trust{width:min(760px,80vw);margin-left:auto;margin-right:auto}}
.ep2-bridge{background:linear-gradient(180deg,var(--navy-deep) 0%,var(--navy-deep) 62%,var(--bg) 100%);color:#A9B8CA;text-align:center}
.ep2-bridge .wrap{padding-top:34px;padding-bottom:150px}
.ep2-proof{list-style:none;margin:0 auto;padding:0 0 18px;display:flex;justify-content:center;flex-wrap:wrap;gap:10px 40px;font-size:15.5px;border-bottom:1px solid #2C3B4D;max-width:960px}
.ep2-proof b{color:#fff;font-size:20px;margin-right:6px}
.ep2-bridge .ps{margin:14px 0 0;color:#8C9CB0;font-size:15px}
.ep2-b1{margin:54px 0 6px;font-size:clamp(22px,2.2vw,30px);color:#fff;font-weight:600}
.ep2-b2{display:inline-block;font-size:17px;color:#8DB4F2;font-weight:600;text-decoration:none}
.ep2-b2 span{display:inline-block;animation:ep2bob 1.8s ease-in-out infinite}
@keyframes ep2bob{50%{transform:translateY(4px)}}
.h9-ben{padding-top:40px}
.ep2-bridge{background:var(--navy-deep)}.ep2-bridge .wrap{padding-top:30px;padding-bottom:34px}
.h9-ben{padding-top:88px}.h9-benhead{text-align:center;max-width:880px;margin:0 auto 40px}.h9-benhead h2{margin-left:auto;margin-right:auto}.h9-benhead .h9-intro{margin-left:auto;margin-right:auto}
.h9-lead{margin:0 0 26px;font-size:17px;color:var(--muted)}.h9-lead b{color:var(--link)}

/* round 19: imported articles and model texts */
.post-body h2{font-size:clamp(24px,2.2vw,30px);line-height:1.2;margin:38px 0 12px}
.post-body h3{font-size:21px;margin:28px 0 8px}.post-body h4{font-size:18px;margin:22px 0 6px}
.post-body p,.post-body li{font-size:17px;line-height:1.65}
.post-body img{max-width:100%;height:auto;border-radius:10px}.post-body figure{margin:22px 0}
.post-body figcaption{font-size:14px;color:var(--muted);margin-top:6px}
.post-body iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:10px}
.post-body table{width:100%;border-collapse:collapse;font-size:15px;margin:18px 0}.post-body td,.post-body th{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
.post-hero{margin:0 0 30px}.post-hero img{width:100%;border-radius:14px;display:block}
.post-tour{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;background:var(--bg-2);border-radius:14px;padding:20px 22px;margin:26px 0}
.post-tour b{font-size:18px}.post-tour span{color:var(--muted);flex:1;min-width:200px}

.library{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.libcard{display:flex;flex-direction:column;gap:8px;background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:20px 22px;text-decoration:none;color:var(--ink);transition:border-color .2s,transform .2s}
.libcard:hover{border-color:var(--blue);transform:translateY(-2px)}
.libcard span{font-size:12.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--link);font-weight:700}
.libcard b{font-size:17px;line-height:1.35;flex:1}.libcard em{font-style:normal;font-weight:600;color:var(--link);font-size:14.5px}

@media (max-width:900px){.library{grid-template-columns:1fr 1fr}}@media (max-width:600px){.library{grid-template-columns:1fr}}
.cquotes{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.csteps{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))!important}

/* round 20: one big Toyota proof in the first view, instead of the ticker */
.ep2-tmh{display:flex;align-items:center;gap:20px;text-decoration:none;color:#E6ECF3;background:rgba(26,37,51,.78);border:1px solid #2C3B4D;border-radius:16px;padding:12px 22px 12px 12px;transition:border-color .25s,background .25s;backdrop-filter:blur(6px)}
.ep2-tmh:hover{border-color:#8DB4F2;background:rgba(30,44,62,.92)}
.tmh-photo{width:150px;height:84px;object-fit:cover;border-radius:10px;flex:none}
.tmh-body{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1;text-align:left}
.tmh-top{display:flex;align-items:center;gap:12px}
.tmh-word{display:flex;flex-direction:column;line-height:1;letter-spacing:.04em}.tmh-word b{font-size:17px;letter-spacing:.18em}.tmh-word{font-size:9.5px;color:#A9B8CA;font-weight:600}
.tmh-logo{height:26px;width:auto}
.tmh-k{font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:#8DB4F2;font-weight:700;border-left:1px solid #3A4B60;padding-left:12px}
.tmh-q{font-size:15px;line-height:1.4;color:#fff}
.tmh-who{font-size:12.5px;color:#7F90A4}
.tmh-go{font-size:22px;color:#8DB4F2;flex:none;transition:transform .25s}.ep2-tmh:hover .tmh-go{transform:translateX(4px)}
.ep2-tmh-d{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);width:min(880px,86vw);z-index:3;transition:opacity .4s}
.ep2-tmh-m{display:none}
@media (max-width:760px){.ep2-tmh-d{display:none}.ep2-tmh-m{display:flex;margin-top:16px;padding:10px 14px 10px 10px;gap:12px}.tmh-photo{width:84px;height:62px}.tmh-q{font-size:13px}.tmh-who{display:none}.tmh-k{display:none}}
@media (min-width:761px) and (max-height:820px){.ep2-tmh-d{bottom:12px;padding:8px 16px 8px 8px;gap:14px}.tmh-photo{width:96px;height:54px}.tmh-who{display:none}.tmh-q{font-size:13.5px}.tmh-word b{font-size:14px}}

/* round 21: latest blog post banner above the menu */
.topbar{display:flex;justify-content:center;align-items:center;gap:10px;height:34px;padding:0 16px;background:#fff;color:#16202B;text-decoration:none;font-size:13.5px;font-weight:500;border-bottom:1px solid #E3E8EF}
.topbar:hover .tb-title{text-decoration:underline}
.tb-new{background:#3D65AA;color:#fff;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:2px 8px}
.tb-date{color:#5A6878;white-space:nowrap}
.tb-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;font-weight:600}
.tb-go{color:#3D65AA;font-weight:700}
@media (min-width:761px){.ep2-t{top:calc(clamp(84px,11vh,112px) + 30px)}}
@media (max-width:760px){.ep2-t{top:112px}.tb-date{display:none}.topbar{justify-content:flex-start;font-size:13px}}
.top .topbar,.top .topbar span{text-decoration:none!important}.top .topbar:hover .tb-title{text-decoration:underline!important}

/* HubSpot form, styled like the site */
.hsform .hs-form-field{margin:0 0 14px}
.hsform label{display:block;font-size:14px;font-weight:600;color:var(--ink);margin:0 0 6px}
.hsform .hs-form-required{color:#C4574A;margin-left:2px}
.hsform input[type=text],.hsform input[type=email],.hsform input[type=tel],.hsform select,.hsform textarea{width:100%;box-sizing:border-box;font:inherit;font-size:16px;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink)}
.hsform textarea{min-height:96px;resize:vertical}
.hsform input:focus,.hsform textarea:focus{outline:2px solid #8DB4F2;outline-offset:1px;border-color:#3D65AA}
.hsform .hs-button{font:inherit;font-weight:700;font-size:16px;background:#16202B;color:#fff;border:0;border-radius:999px;padding:12px 26px;cursor:pointer;margin-top:4px}
.hsform .hs-button:hover{background:#3D65AA}
.hsform .hs-error-msgs{list-style:none;margin:6px 0 0;padding:0;font-size:13px;color:#C4574A}
.hsform .legal-consent-container,.hsform .hs-richtext{font-size:13px;color:var(--muted)}
.hsform .submitted-message{font-size:16px}
.hsform fieldset{max-width:none!important}
.hsform .hs-input{max-width:100%}

/* round 22: Why it matters, five plans for one quarter */
.h9-gap{margin:8px auto 34px;max-width:1080px;background:var(--bg);border:1px solid var(--line);border-radius:18px;padding:20px 24px 18px}
.h9-gaphead{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px}
.h9-gaphead span{font-weight:700;font-size:15px;color:var(--ink)}
.h9-gapbtn{font:inherit;font-weight:700;font-size:14px;background:#16202B;color:#fff;border:0;border-radius:999px;padding:9px 18px;cursor:pointer}
.h9-gap.one .h9-gapbtn{background:#3D65AA}
.h9-gap svg{width:100%;height:auto;display:block;overflow:visible}
.h9-gap .g{stroke:var(--line);stroke-width:1}.h9-gap .ax{font-size:13px;fill:var(--muted)}
.h9-gap .today{stroke:#A3B0BF;stroke-dasharray:4 5}
.h9-gap .hist{fill:none;stroke:#16202B;stroke-width:3;stroke-linejoin:round}
.h9-gap .plan{fill:none;stroke-width:3;transition:opacity .3s}
.h9-gap .lab{font-size:14px;font-weight:700}
.h9-gap .onelab{font-size:15px;font-weight:700;fill:#3D65AA}
.h9-gap .gaparea{fill:#C4574A;opacity:.12}
.h9-gap .gaparea{fill-opacity:.14}
.h9-gap .gaplab{font-size:13.5px;font-weight:700;fill:#C4574A}
.h9-gapout{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:10px}
.h9-gapout span{font-size:14px;color:var(--muted);border-top:3px solid;padding-top:10px;transition:opacity .4s}
.h9-gapout b{display:block;color:var(--ink);font-size:15px;margin-bottom:2px}.h9-gapout em{font-style:normal;font-weight:700}
.h9-gapout .o1{border-color:#C4574A}.h9-gapout .o1 em{color:#C4574A}
.h9-gapout .o2{border-color:#8592A6}.h9-gapout .o2 em{color:#5A6878}
.h9-gapout .o3{border-color:#3D65AA;opacity:.45}.h9-gapout .o3 em{color:#3D65AA}
.h9-gap.one .o1,.h9-gap.one .o2{opacity:.4}.h9-gap.one .o3{opacity:1}
@media (max-width:760px){.h9-gap{padding:16px 14px}.h9-gapout{grid-template-columns:1fr}.h9-gap .lab,.h9-gap .onelab{font-size:25px}.h9-gap .ax{font-size:23px}.h9-gap .gaplab{font-size:22px}.h9-gap .hist,.h9-gap .plan{stroke-width:5}.h9-gaphead span{font-size:14px}.h9-gapbtn{font-size:13px;padding:8px 14px}}
.h9-mods .m-op{border-style:dashed!important;background:transparent!important}
.h9-gap.one .lab{opacity:0}
.sl-wrap{position:relative;width:100%;padding-bottom:calc(56.25% + 25px);height:0;border-radius:14px;overflow:hidden;border:1px solid rgba(63,95,172,.35);box-shadow:0 18px 40px rgba(22,32,43,.18);background:#16202B}
.sl-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* cookie banner */
.ckbar{position:fixed;left:16px;right:16px;bottom:16px;z-index:200;max-width:920px;margin:0 auto;display:flex;align-items:center;gap:18px;background:#16202B;color:#E6ECF3;border:1px solid #2C3B4D;border-radius:16px;padding:16px 18px;box-shadow:0 18px 50px rgba(0,0,0,.35)}
.ckbar[hidden]{display:none}
.ckbar p{margin:0;font-size:14.5px;line-height:1.5;flex:1}.ckbar a{color:#8DB4F2}
.ckbtns{display:flex;gap:8px;flex:none}.ckbtns .btn{white-space:nowrap}
.ck-link{background:none;border:0;padding:0;font:inherit;color:inherit;text-decoration:underline;cursor:pointer}
.sl-gate{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:24px;color:#E6ECF3}
.sl-gate b{font-size:18px}.sl-gate span{color:#A9B8CA}
@media (max-width:760px){.ckbar{flex-direction:column;align-items:stretch;bottom:76px}.ckbtns .btn{flex:1;justify-content:center}}
.ckbar .btn-ghost{background:transparent!important;color:#fff!important;border:1px solid #5A6878!important}.ckbar .btn-ghost:hover{border-color:#fff!important}
.h9-gapbtn{animation:gapPulse 2.4s ease-in-out infinite}.h9-gap.one .h9-gapbtn{animation:none}@keyframes gapPulse{0%,100%{box-shadow:0 0 0 0 rgba(61,101,170,.45)}50%{box-shadow:0 0 0 8px rgba(61,101,170,0)}}
/* team */
.team{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px}
.tm{display:flex;gap:16px;align-items:flex-start;padding:22px;border:1px solid var(--line,#E3E8EF);border-radius:16px;background:#fff}
.tm-av{flex:none;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#0B1B33;color:#fff;font-weight:600;font-size:16px;letter-spacing:.02em}
.tm b{display:block;font-size:17px}
.tm span{display:block;font-size:14px;color:#5A6B80;margin:2px 0 8px}
.tm p{margin:0;font-size:15px;line-height:1.5}
@media (max-width:900px){.team{grid-template-columns:1fr}}
