/* ===== Solutions overview (solutions/solutions/page.css). Every class carries the sox- prefix; kit classes are bmk-, page types pt-.
   T2 hub: breadcrumb, title left and intro right, then the directory of the five pages (the chain itself), the proof strip,
   the machine (with the question left open mid-page), questions and the close. Mostly white with hairlines; ink text and
   small tags, one amber spark per visual. Breakpoints follow the site: 1080, 820, 560 (and 640 for the single-column objects).
   Brief 3 (11 Nov 2026): the bill, the six-step run and "what you get" were cut, with their CSS. */
.sox-k{font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--taupe)}
.sox-cap{margin-top:14px;font-family:var(--mono);font-size:12px;line-height:1.5;color:var(--taupe);text-align:center}
.sox-lede-r{max-width:34ch}

/* ---------- 1 · hub top (pt-hub does the layout) ---------- */
.sox-hub-h span{display:block}
.sox-mc-band .sox-cap{margin-top:30px}

/* ---------- 2 · the directory: one meeting, traced back through the five links ---------- */
.sox-dir-cell{padding-top:clamp(44px,5.6vw,80px)}
.sox-dir-head{margin-bottom:clamp(28px,3.6vw,48px)}
.sox-dir-h{font-size:clamp(30px,3.4vw,46px)}
.sox-dir{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(0,1.1fr);grid-template-rows:auto 14px auto 60px auto;column-gap:10px}
/* the sand track the chain grows on, from the first link to the meeting */
.sox-dir::before{content:"";grid-column:1/6;grid-row:2;margin-right:24px;border-radius:7px;background:var(--sand1);transform-origin:100% 50%;transform:scaleX(0);transition:transform .9s var(--bmk-move) .5s}
.sox-dir-links{grid-column:1/5;grid-row:1/4;display:grid;grid-template-columns:subgrid;grid-template-rows:subgrid;margin:0;padding:0;list-style:none}
.sox-lk{grid-row:1/4;display:grid;grid-template-rows:subgrid;position:relative;min-width:0}
.sox-lk-a{grid-row:1;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"n go" "name name" "q q";align-content:start;row-gap:6px;padding:0 6px 18px 2px;color:inherit}
.sox-lk-a:hover{text-decoration:none}
/* the whole column is the link (the evidence card included) */
.sox-lk-a::after{content:"";position:absolute;inset:-12px -5px -12px -5px;border-radius:22px;z-index:2}
.sox-lk-a:focus-visible{outline:0}
.sox-lk-a:focus-visible::after{outline:2px solid var(--sapphire);outline-offset:2px}
.sox-lk-n{grid-area:n;font-family:var(--mono);font-size:12.5px;color:var(--fg3)}
.sox-lk-name{grid-area:name;font-size:clamp(19px,1.7vw,24px);line-height:1.15;font-weight:700;letter-spacing:-.03em;color:var(--fg)}
.sox-lk-q{grid-area:q;font-size:15px;line-height:1.4;font-weight:400;color:var(--fg3)}
.sox-lk-go{grid-area:go;font-size:20px;line-height:1;color:var(--fg3);transition:transform .2s ease,color .2s ease}
.sox-lk-seg{grid-row:2;display:block;border-radius:7px;background:var(--ink);transform-origin:100% 50%;transform:scaleX(0);transition:transform .7s var(--bmk-move);transition-delay:calc(.95s + var(--o) * .28s)}
.sox-lk-ev{grid-row:3;align-self:start;display:flex;flex-direction:column;gap:4px;margin-top:16px;padding:18px 20px;border-radius:18px;background:var(--object);box-shadow:inset 0 0 0 1.5px var(--hair)}
.sox-lk-ev .sox-k{font-size:11px;margin-bottom:6px}
.sox-lk-ev>b{font-size:clamp(20px,1.8vw,26px);line-height:1.1;font-weight:700;letter-spacing:-.03em}
.sox-lk-ev>span:not(.sox-k):not(.sox-lk-ok){font-size:14.5px;line-height:1.4;color:var(--fg3)}
.sox-lk-ok{display:flex;align-items:center;gap:9px;margin-top:12px;padding-top:12px;border-top:1px solid var(--hair);font-size:14.5px;line-height:1.3;color:var(--fg2)}
.sox-lk-ok i,.sox-dir-q i{position:relative;flex:none;width:20px;height:20px;border-radius:50%;background:var(--ink)}
.sox-lk-ok i::after,.sox-dir-q i::after{content:"";position:absolute;left:7px;top:4px;width:5px;height:9px;border:solid #FFFFFF;border-width:0 2px 2px 0;transform:rotate(45deg)}
.sox-lk:hover .sox-lk-ev{box-shadow:inset 0 0 0 1.5px var(--ink)}
.sox-lk:hover .sox-lk-go{transform:translateX(4px);color:var(--fg)}
.sox-lk:hover .sox-lk-name{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1.5px}
/* the meeting the chain made, at the end of the bar */
.sox-dir-meet{grid-column:5;grid-row:1/4;align-self:center;position:relative;z-index:1;display:flex;flex-direction:column;gap:4px;padding:22px 22px 22px 36px;border-radius:22px;background:var(--object);box-shadow:var(--bmk-lift)}
.sox-dir-spark{position:absolute;left:16px;top:22px;bottom:22px;width:5px;border-radius:3px;background:var(--amber)}
.sox-dir-meet .sox-k{font-size:11px;margin-bottom:6px}
.sox-dir-when{font-family:var(--mono);font-size:clamp(26px,2.4vw,34px);line-height:1;font-weight:500;letter-spacing:-.05em}
.sox-dir-co{margin-top:6px;font-size:clamp(20px,1.8vw,24px);line-height:1.15;font-weight:700;letter-spacing:-.03em}
.sox-dir-who{font-size:14.5px;line-height:1.4;color:var(--fg3)}
.sox-dir-q{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:6px 14px 6px 7px;border-radius:999px;box-shadow:inset 0 0 0 1.5px var(--ink);font-size:14.5px;font-weight:600}
/* Market Intelligence under every link: four feeds up into the links, one line down from the meeting */
.sox-dir-feeds{grid-column:1/6;grid-row:4;display:grid;grid-template-columns:subgrid}
.sox-dir-feeds i{position:relative;justify-self:center;width:2px;height:100%;background:var(--taupe);transform-origin:50% 100%;transform:scaleY(0);transition:transform .55s var(--bmk-move)}
.sox-dir-feeds i::before{content:"";position:absolute;left:-5px;top:-1px;width:12px;height:9px;background:var(--taupe);clip-path:polygon(50% 0,100% 100%,0 100%)}
.sox-dir-feeds i:nth-child(1){transition-delay:2.45s}.sox-dir-feeds i:nth-child(2){transition-delay:2.37s}.sox-dir-feeds i:nth-child(3){transition-delay:2.29s}.sox-dir-feeds i:nth-child(4){transition-delay:2.21s}
.sox-dir-feeds u{grid-column:5;justify-self:center;width:2px;height:100%;background:var(--sand3);transform-origin:50% 0;transform:scaleY(0);transition:transform .45s var(--bmk-move) 1.95s}
.sox-lk-mi{grid-column:1/6;grid-row:5;position:relative;display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;grid-template-areas:"n name q go" "n name s go";align-items:center;gap:2px 22px;padding:20px 26px;border-radius:20px;background:var(--sand0);box-shadow:inset 0 0 0 1px var(--hair);color:inherit}
.sox-lk-mi:hover{text-decoration:none;box-shadow:inset 0 0 0 1.5px var(--ink)}
.sox-lk-mi:hover .sox-lk-go{transform:translateX(4px);color:var(--fg)}
.sox-lk-mi .sox-lk-n{grid-area:n}
.sox-lk-mi .sox-lk-name em{display:block;margin-top:4px;font-style:normal;font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--taupe)}
.sox-lk-mi .sox-lk-q{grid-area:q;font-size:clamp(19px,1.8vw,24px);line-height:1.2;font-weight:700;letter-spacing:-.025em;color:var(--fg)}
.sox-lk-mi-s{grid-area:s;font-size:15px;line-height:1.4;color:var(--fg3)}
.sox-lk-mi .sox-lk-go{grid-area:go}
/* build once: the meeting lands, the chain grows back from it, Market Intelligence closes underneath */
.sox-dir-meet,.sox-lk-a,.sox-lk-ev,.sox-lk-mi{opacity:0;transform:translateY(10px);transition-property:opacity,transform,box-shadow;transition-duration:.45s,.6s,.2s;transition-timing-function:ease,var(--bmk-enter),ease;transition-delay:0s,0s,0s}
.sox-lk-a{transition-delay:calc(1s + var(--o) * .28s),calc(1s + var(--o) * .28s),0s}
.sox-lk-ev{transition-delay:calc(1.1s + var(--o) * .28s),calc(1.1s + var(--o) * .28s),0s}
.sox-lk-mi{transition-delay:2.05s,2.05s,0s}
.sox-dir-q{opacity:0;transform:scale(.6);transition:opacity .25s ease .5s,transform .45s cubic-bezier(.34,1.56,.64,1) .5s}
.sox-dir.bmk-seen::before,.sox-dir.bmk-seen .sox-lk-seg{transform:scaleX(1)}
.sox-dir.bmk-seen .sox-dir-meet,.sox-dir.bmk-seen .sox-lk-a,.sox-dir.bmk-seen .sox-lk-ev,.sox-dir.bmk-seen .sox-lk-mi,.sox-dir.bmk-seen .sox-dir-q{opacity:1;transform:none}
.sox-dir.bmk-seen .sox-dir-feeds i,.sox-dir.bmk-seen .sox-dir-feeds u{transform:scaleY(1)}
@media (max-width:1240px){.sox-lk-ev{padding:16px}.sox-dir-meet{padding:20px 18px 20px 30px}.sox-dir-spark{left:14px}}
/* below 1081 px the chain stands up: links top to bottom on a rail, the meeting at the end, Market Intelligence under it */
@media (max-width:1080px){
  .sox-dir{display:flex;flex-direction:column;padding-left:30px}
  .sox-dir::before{display:none}
  .sox-dir-links{position:relative;display:flex;flex-direction:column}
  .sox-dir-links::before{content:"";position:absolute;left:-30px;top:4px;bottom:0;width:12px;border-radius:6px 6px 0 0;background:var(--sand1)}
  .sox-dir-meet::after{content:"";position:absolute;left:-30px;top:-2px;height:50%;width:12px;border-radius:0 0 6px 6px;background:var(--sand1)}
  .sox-lk{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:none;column-gap:20px;align-items:start;padding:4px 0 24px}
  .sox-lk-a{grid-row:auto;padding:2px 0 0}
  .sox-lk-a::after{inset:-6px -6px 10px -38px}
  .sox-lk-seg{position:absolute;grid-area:auto;left:-30px;top:4px;bottom:6px;width:12px;transform-origin:50% 0;transform:scaleY(0)}
  .sox-dir.bmk-seen .sox-lk-seg{transform:scaleY(1)}
  .sox-lk-ev{grid-row:auto;margin-top:0}
  .sox-lk-a,.sox-lk-ev,.sox-lk-seg{transition-delay:calc(.15s + (3 - var(--o)) * .16s),calc(.15s + (3 - var(--o)) * .16s),0s}
  .sox-dir-meet{align-self:stretch;margin-top:2px;transition-delay:.85s,.85s,0s}
  .sox-dir-q{transition-delay:1.2s}
  .sox-dir-feeds{display:none}
  .sox-lk-mi{margin:22px 0 0 -30px;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"n name go" "q q go" "s s go";gap:6px 18px;transition-delay:1.05s,1.05s,0s}
}
@media (max-width:560px){
  .sox-dir{padding-left:26px}
  .sox-dir-links::before,.sox-dir-meet::after{left:-26px;width:10px}
  .sox-lk{grid-template-columns:minmax(0,1fr);row-gap:12px;padding-bottom:22px}
  .sox-lk-seg{left:-26px;width:10px}
  .sox-lk-a::after{left:-32px}
  .sox-lk-ev{padding:14px 16px}
  .sox-lk-ev>b{font-size:20px}
  .sox-dir-meet{padding:18px 18px 18px 30px}
  .sox-lk-mi{margin-left:-26px;padding:18px 20px}
}
@media (prefers-reduced-motion:reduce){
  .sox-dir::before,.sox-lk-seg,.sox-dir-meet,.sox-lk-a,.sox-lk-ev,.sox-lk-mi,.sox-dir-q,.sox-dir-feeds i,.sox-dir-feeds u{transition:none}
}

/* ---------- 3 · proof strip: one measured figure per stage ---------- */
.sox-proof-cell{padding-block:clamp(30px,3.6vw,48px)!important}
.sox-proof-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.sox-pf{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"k k" "b viz" "l l";column-gap:clamp(14px,1.8vw,28px);row-gap:10px;align-items:center;padding:4px clamp(16px,2.4vw,36px);border-left:1px solid var(--rule);min-width:0}
.sox-pf:first-child{padding-left:0;border-left:0}
.sox-pf-k{grid-area:k;font-family:var(--mono);font-size:11.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--taupe)}
.sox-pf>b{grid-area:b;font-family:var(--mono);font-weight:500;font-size:clamp(36px,3.8vw,54px);letter-spacing:-.05em;line-height:1;white-space:nowrap}
.sox-pf-l{grid-area:l;font-size:15px;line-height:1.45;color:var(--fg2);max-width:32ch}
.sox-pf-viz{grid-area:viz;justify-self:end;min-width:0}
.sox-pf-viz em{font-style:normal;font-family:var(--mono);font-size:11.5px;line-height:1.35;color:var(--taupe)}
.sox-pf-bars{display:grid;grid-template-columns:minmax(40px,110px) auto;column-gap:10px;row-gap:7px;align-items:center;width:100%;max-width:240px}
.sox-pf-bars i{display:block;height:8px;border-radius:4px;background:var(--sand3);width:calc(var(--w) * 100%);transform-origin:0 50%;transform:scaleX(0);transition:transform .95s var(--bmk-move)}
.sox-pf-bars i:first-of-type{background:var(--ink)}
.sox-pf-bars i:nth-of-type(2){transition-delay:.12s}
.sox-pf-bars em{white-space:nowrap}
/* the meetings: a share of a full track; the one amber spark of the strip */
.sox-pf-meet i{width:100%;background:linear-gradient(90deg,var(--sand3) calc(var(--w) * 100%),var(--sand1) 0)}
.sox-pf-meet i:first-of-type{background:linear-gradient(90deg,var(--amber) calc(var(--w) * 100%),var(--sand1) 0)}
.sox-pf-ring{display:flex;align-items:center;gap:12px}
.sox-pf-ring svg{display:block;flex:none;width:64px;height:64px;transform:rotate(-90deg)}
.sox-pf-ring circle{fill:none;stroke-width:7}
.sox-pf-ring em{max-width:13ch}
.sox-ring-t{stroke:var(--sand1)}
.sox-ring-a,.sox-ring-b{stroke-linecap:round;stroke-dasharray:var(--c);stroke-dashoffset:var(--c);transition:stroke-dashoffset 1.1s var(--bmk-move)}
.sox-ring-a{stroke:var(--ink)}
.sox-ring-b{stroke:var(--sand3);transition-delay:.15s}
.bmk-seen .sox-pf-bars i{transform:scaleX(1)}
.bmk-seen .sox-ring-a,.bmk-seen .sox-ring-b{stroke-dashoffset:calc(var(--c) * (1 - var(--v)))}
.sox-proof-src{margin-top:20px;font-family:var(--mono);font-size:12px;line-height:1.5;color:var(--fg3)}
@media (max-width:1080px){
  .sox-pf{grid-template-columns:minmax(0,1fr);grid-template-areas:"k" "b" "viz" "l"}
  .sox-pf-viz{justify-self:start}
}
@media (max-width:820px){
  .sox-proof-row{grid-template-columns:minmax(0,1fr)}
  .sox-pf{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"k k" "b viz" "l l";padding:20px 0;border-left:0;border-top:1px solid var(--rule)}
  .sox-pf:first-child{padding-top:0;border-top:0}
  .sox-pf-viz{justify-self:end}
}
@media (max-width:400px){.sox-pf-ring em{display:none}}

/* ---------- 4 · the machine: one caller, four parts dock around them (on white); then the question left open ---------- */
.sox-mc{--gap:clamp(28px,4.4vw,72px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,340px) minmax(0,1fr);grid-template-areas:"a p b" "c p d";gap:18px var(--gap);max-width:1140px;margin:0 auto}
.sox-mc-a{grid-area:a}.sox-mc-b{grid-area:b}.sox-mc-c{grid-area:c}.sox-mc-d{grid-area:d}
.sox-mc-slot{position:relative;display:grid;min-width:0}
.sox-mc-slot>div{grid-area:1/1;min-width:0}
.sox-mc-alone{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:22px 24px;border-radius:18px;box-shadow:inset 0 0 0 1.5px rgba(92,83,69,.22);background-image:repeating-linear-gradient(135deg,transparent 0 9px,rgba(92,83,69,.045) 9px 18px)}
.sox-mc-alone b{font-size:clamp(18px,1.7vw,22px);line-height:1.2;font-weight:600;letter-spacing:-.02em;color:#8B8172}
.sox-mc-mod{position:relative;z-index:1;display:flex;flex-direction:column;gap:8px;padding:22px 24px 24px;border-radius:18px;background:var(--object);box-shadow:var(--bmk-lift)}
.sox-mc-mod b{font-size:clamp(22px,2.2vw,30px);line-height:1.1;font-weight:700;letter-spacing:-.032em}
.sox-mc-mod p{font-size:15.5px;line-height:1.45;color:var(--fg2);max-width:34ch}
.sox-mc-ln{position:absolute;top:50%;z-index:0;width:var(--gap);height:2px;margin-top:-1px;background:var(--ink)}
.sox-mc-a .sox-mc-ln,.sox-mc-c .sox-mc-ln{right:calc(var(--gap) * -1);transform-origin:0 50%}
.sox-mc-b .sox-mc-ln,.sox-mc-d .sox-mc-ln{left:calc(var(--gap) * -1);transform-origin:100% 50%}
.sox-mc-pilot{grid-area:p;position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;gap:14px;padding:clamp(24px,2.6vw,36px);border-radius:24px;background:var(--object);box-shadow:var(--bmk-lift);overflow:hidden;min-width:0}
.sox-mc-spark{position:absolute;left:0;top:0;right:0;height:5px;background:var(--amber);transform-origin:0 50%}
.sox-mc-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.sox-mc-rank{font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;padding:5px 9px;border-radius:7px;background:var(--ink);color:#FFFFFF}
.sox-mc-who{font-size:clamp(32px,3.2vw,46px);line-height:1;font-weight:700;letter-spacing:-.045em}
.sox-mc-meta{font-size:15.5px;line-height:1.45;color:var(--fg3)}
.sox-mc-st{display:grid;margin-top:8px;padding-top:18px;border-top:1px solid var(--hair)}
.sox-mc-st>span{grid-area:1/1;display:flex;align-items:center;gap:14px;min-width:0}
.sox-mc-st-a{font-family:var(--mono);font-size:12.5px;letter-spacing:.05em;text-transform:uppercase;color:#8B8172}
.sox-mc-st-a::before{content:"";flex:none;width:22px;height:22px;border-radius:50%;box-shadow:inset 0 0 0 1.5px rgba(92,83,69,.4);background-image:repeating-linear-gradient(135deg,transparent 0 3px,rgba(92,83,69,.18) 3px 5px)}
.sox-mc-st-b>b{font-size:clamp(22px,2vw,26px);font-weight:700;letter-spacing:-.03em;white-space:nowrap}
.sox-mc-wave{display:flex;align-items:center;gap:3px;height:30px}
.sox-mc-wave i{display:block;width:4px;height:100%;border-radius:2px;background:var(--ink);transform:scaleY(.3)}
@media (max-width:1080px){
  .sox-mc{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"p p" "a b" "c d";gap:16px}
  .sox-mc-ln{display:none}
}
@media (max-width:640px){
  .sox-mc{grid-template-columns:minmax(0,1fr);grid-template-areas:"p" "a" "b" "c" "d";gap:10px}
  .sox-mc-alone,.sox-mc-mod{padding:18px 20px}
  .sox-mc-pilot{padding:22px 20px;border-radius:18px}
}
/* the question left open, with the one mid-page button */
.sox-ask{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px 32px;margin-top:clamp(40px,5vw,72px);padding-top:clamp(26px,3vw,40px);border-top:1px solid var(--rule)}
.sox-ask-q{font-size:clamp(21px,2.1vw,30px);line-height:1.2;font-weight:700;letter-spacing:-.03em;color:var(--fg);max-width:30ch}
.sox-ask-q span{display:block;color:var(--fg3)}
@media (max-width:560px){.sox-ask{flex-direction:column;align-items:flex-start}}

/* ---------- 5 · questions ---------- */
.sox-faq-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(24px,5vw,88px);align-items:start}
.sox-faq-head{position:sticky;top:96px;display:flex;flex-direction:column;gap:18px}
@media (max-width:820px){.sox-faq-grid{grid-template-columns:minmax(0,1fr)}.sox-faq-head{position:static}}

/* ---------- 6 · close ---------- */
.sox-end-cell{padding-block:clamp(84px,10vw,150px)!important}
.sox-end{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:end}
.sox-end-head{display:flex;flex-direction:column;gap:22px}
.sox-end-h{font-size:clamp(42px,6.2vw,96px);max-width:12ch}
.sox-end-side{display:flex;flex-direction:column;gap:24px;padding-bottom:10px}
.sox-next{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:baseline;gap:8px 18px;margin-top:clamp(40px,5vw,72px);padding:22px 4px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);color:inherit}
.sox-next:hover{text-decoration:none;background:var(--subtle)}
.sox-next b{font-size:clamp(20px,1.9vw,26px);letter-spacing:-.025em}
.sox-next span:not(.sox-k){font-size:15px;color:var(--fg3)}
.sox-next i{font-style:normal;font-size:22px;transition:transform .2s ease}
.sox-next:hover i{transform:translateX(4px)}
@media (max-width:820px){.sox-end{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){.sox-next{grid-template-columns:auto minmax(0,1fr) auto}.sox-next span:not(.sox-k){grid-column:1/-1;grid-row:2}}
