/* Solutions and customer stories: shared, mobile-first paper kit. */
.sx-page{--sx-paper:#f5f4f0;--sx-card:#fff;--sx-ink:#0b0d12;--sx-t2:rgba(11,13,18,.80);--sx-t3:rgba(11,13,18,.62);--sx-line:rgba(11,13,18,.10);--sx-line-2:rgba(11,13,18,.16);--sx-shot:0 1px 2px rgba(11,13,18,.06),0 18px 40px -24px rgba(11,13,18,.28);--sx-r:14px;--sx-r-shot:10px;--pf-gut:16px}
.sx-page::before,.sx-page::after{display:none}
.sx-page :where(a,button,summary,[tabindex]):focus-visible{outline:2px solid #ffd100;outline-offset:4px}
.sx-page ::selection{background:#d9d6cf;color:var(--sx-ink)}
:where(.sx-page main) img{max-width:100%;height:auto}
.sx-hero-grid{display:grid;gap:36px;margin-top:32px;align-items:start}
.sx-composite{position:relative;padding-bottom:50px;max-width:500px;width:100%;margin:auto}
.sx-composite-photo{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--sx-r)}
.sx-composite .sx-shot,.sx-composite .sx-flow{position:relative;width:90%;margin:-30% auto 0 0;z-index:1}
.sx-composite .sx-shot figcaption{padding:10px 12px;margin:0;color:var(--sx-t2)}
.sx-paper{display:flow-root;background:var(--sx-paper);color:var(--sx-ink)}
.sx-paper :where(.pf-h2,.pf-h3){color:var(--sx-ink)}
.sx-section{padding:32px 0}
.sx-section--plain+.sx-section--plain{border-top:1px solid var(--sx-line)}
.sx-section>.pf-h2{margin-bottom:24px}
.sx-paper p{color:var(--sx-t2);font-size:17px;line-height:1.6;text-wrap:pretty;max-width:72ch}
.sx-paper a.sx-link,.sx-links a{text-decoration:underline;text-decoration-color:var(--sx-line-2);text-underline-offset:4px}
.sx-paper a.sx-link:hover,.sx-links a:hover{text-decoration-color:var(--sx-ink)}
.sx-paper p.sx-intro{font-size:19px;line-height:1.55;color:var(--sx-ink);max-width:820px;margin-bottom:24px}
.sx-scenes{display:grid;border-top:1px solid var(--sx-line)}
.sx-scenes li{padding:22px 0;border-bottom:1px solid var(--sx-line);color:var(--sx-t2);font-size:17px;line-height:1.6}
.sx-paper p.sx-scene-close{font-size:19px;line-height:1.55;max-width:820px;margin-top:24px;color:var(--sx-ink)}
.sx-built{background:var(--sx-card);border:1px solid var(--sx-line);border-radius:var(--sx-r);overflow:hidden}
.sx-built-row{display:grid;gap:10px;padding:20px}
.sx-built-row+.sx-built-row{border-top:1px solid var(--sx-line)}
.sx-meta,.sx-built dt,.sx-facts dt{font-family:var(--pf-mono);font-size:12px;line-height:1.5;text-transform:uppercase;color:var(--sx-t3)}
.sx-built dd{color:var(--sx-t2);font-size:16px;line-height:1.55}
.sx-items{display:flex;flex-wrap:wrap;gap:8px 0}
.sx-items li{padding-right:12px;margin-right:12px;border-right:1px solid var(--sx-line-2)}
.sx-items li:last-child{border:0;margin:0;padding:0}
.sx-run-row,.sx-text-pair{display:grid;gap:28px;padding:32px 0;border-top:1px solid var(--sx-line)}
.sx-run-row:first-child,.sx-text-pair:first-child{border:0;padding-top:0}
.sx-run-copy p{margin-top:12px;max-width:66ch}
.sx-run-copy .pf-h3:not(:first-child){margin-top:28px}
.sx-shot{background:var(--sx-card);border:1px solid var(--sx-line);border-radius:var(--sx-r-shot);box-shadow:var(--sx-shot);overflow:hidden;color:var(--sx-ink)}
.sx-shot img{width:100%;display:block}
.sx-run-row .sx-shot img{aspect-ratio:16/10;object-fit:cover;object-position:top left}
.sx-shot figcaption{font-size:14px;line-height:1.5;color:var(--sx-t3);padding:12px 16px;border-top:1px solid var(--sx-line)}
.sx-made,.sx-bento{display:grid;border-top:1px solid var(--sx-line);border-left:1px solid var(--sx-line)}
.sx-made-cell,.sx-bento-cell{padding:24px;border-right:1px solid var(--sx-line);border-bottom:1px solid var(--sx-line)}
.sx-made-cell{padding:22px}
.sx-made-cell p{margin-top:8px;font-size:15px;line-height:1.6}
.sx-paper p.sx-caption{font-size:14px;color:var(--sx-t3);margin-top:16px}
.sx-connects{display:grid;gap:20px}
.sx-connects li{padding:22px;background:var(--sx-card);border:1px solid var(--sx-line);border-radius:var(--sx-r)}
.sx-connects .sx-connects-platform{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:baseline;gap:12px 24px;padding:0;background:none;border:0;border-radius:0}
.sx-connects+p.sx-meta{margin:24px 0 12px}
.sx-connects p{margin:8px 0 12px;max-width:66ch}
.sx-links{display:flex;flex-wrap:wrap;gap:12px 24px;line-height:1.6}
.sx-stages{display:grid;gap:24px;margin:28px 0}
.sx-stage{border-top:1px solid var(--sx-line-2);padding-top:16px}
.sx-stage-number{font-family:var(--pf-mono);font-size:12px;display:flex;align-items:center;gap:8px;margin-bottom:16px;color:var(--sx-t3)}
.sx-stage-number::before{content:'';width:4px;height:4px;background:#ffd100}
.sx-stage p{margin-top:10px}
.sx-proof{display:grid;border:1px solid var(--sx-line);border-radius:var(--sx-r);overflow:hidden}
.sx-photo-cell{position:relative;aspect-ratio:4/3;min-height:0}
.sx-photo-cell>img{width:100%;height:100%;object-fit:cover}
.sx-photo-label{position:absolute;bottom:16px;left:16px;right:16px;width:fit-content;max-width:calc(100% - 32px);display:flex;align-items:center;gap:20px;padding:12px 14px;background:rgba(255,255,255,.9);backdrop-filter:blur(8px);border-radius:10px;font-family:var(--pf-mono);font-size:12px;text-transform:uppercase;color:var(--sx-ink)}
.sx-proof-cell{padding:28px;background:var(--sx-card);border-top:1px solid var(--sx-line)}
.sx-proof-cell h3{margin:12px 0}
.sx-proof-cell .sx-link{display:inline-block;margin-top:18px}
.sx-faq{background:var(--sx-card);border:1px solid var(--sx-line);border-radius:var(--sx-r);padding:0 20px}
.sx-faq-column+.sx-faq-column{border-top:1px solid var(--sx-line)}
.sx-faq-column details+details{border-top:1px solid var(--sx-line)}
.sx-faq summary{display:flex;justify-content:space-between;gap:24px;padding:20px 0;cursor:pointer;font-weight:600;list-style:none}
.sx-faq summary::-webkit-details-marker{display:none}
.sx-faq summary::after{content:'+';flex:none;font-family:var(--pf-mono);font-weight:400}
.sx-faq details[open] summary::after{content:'−'}
.sx-faq p{font-size:16px;line-height:1.55;padding:0 28px 22px 0;max-width:72ch}
.sx-close{padding:56px 0 64px;border-top:1px solid var(--pf-line)}
.sx-close .pf-p{margin-top:16px;max-width:min(900px,72ch)}
.sx-story-header{padding-bottom:calc(min(var(--pf-w),calc(100vw - 2*var(--pf-gut)))*4/21 + 40px)!important}
.sx-story-header .pf-h1{max-width:950px}
.sx-story-header .pf-answer{max-width:66ch}
.sx-story-photo{position:relative;margin-top:calc(min(var(--pf-w),calc(100vw - 2*var(--pf-gut)))*-4/21);padding-bottom:40px}
.sx-story-photo img{width:100%;aspect-ratio:21/8;object-fit:cover;border-radius:var(--sx-r)}
.sx-story-layout{display:grid;gap:32px;padding-bottom:0;align-items:start;justify-content:center}
.sx-facts{padding:24px;background:var(--sx-card);border:1px solid var(--sx-line);border-radius:var(--sx-r)}
.sx-facts>h2{font-size:18px;margin-bottom:20px}
.sx-facts dt:not(:first-child){margin-top:22px}
.sx-facts dd{margin-top:8px;color:var(--sx-t2);font-size:16px;line-height:1.55}
.sx-facts li{font-size:16px;line-height:1.55}
.sx-facts li+li{margin-top:8px}
.sx-story-body{width:100%;max-width:740px;min-width:0}
.sx-story-body .sx-section{padding:32px 0}
.sx-story-body .sx-section:first-child{padding-top:0}
.sx-story-body p+p{margin-top:18px}
.sx-story-body .sx-section>p:first-of-type{font-size:19px;line-height:1.55;color:var(--sx-ink)}
.sx-prev-next{display:grid;gap:16px;margin:24px 0 48px}
.sx-prev-next a{display:block;background:var(--sx-card);border:1px solid var(--sx-line);border-radius:var(--sx-r);padding:24px;line-height:1.6}
.sx-prev-next a:hover{border-color:var(--sx-line-2)}
.sx-flow{padding:18px;background:var(--sx-card);border-radius:12px;box-shadow:var(--sx-shot);color:var(--sx-ink)}
.sx-flow .sx-meta{color:var(--sx-t2);margin-bottom:14px}
.sx-flow ol{display:flex;flex-direction:column;gap:10px}
.sx-flow li{position:relative;border:1px solid var(--sx-line-2);border-radius:6px;padding:8px 14px;font-size:14px}
.sx-flow li+li::before{content:'';position:absolute;bottom:100%;left:50%;height:11px;border-left:1px solid var(--sx-line-2)}
.sx-flow li[aria-current=step]{border-color:var(--sx-ink)}
.sx-story-more{display:flex;flex-direction:column;justify-content:center;gap:14px;padding:32px;border:1px solid var(--sx-line-2);border-radius:var(--sx-r);color:var(--sx-ink)}
.sx-story-more p{color:var(--sx-t2);max-width:46ch}
@media(min-width:1024px){.sx-story-more{grid-column:span 2}}
/* Index layouts: offset photo stack, nine-cell catalogue, patterns, featured story and cards. */
.sx-photo-stack{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding-bottom:32px;max-width:500px}
.sx-photo-stack img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--sx-r)}
.sx-photo-stack img+img{transform:translateY(32px)}
.sx-bento-cell{position:relative;display:flex;flex-direction:column;gap:12px;min-height:230px;padding-bottom:48px}
a.sx-bento-cell:hover{background:var(--sx-card)}
.sx-bento-cell .sx-arrow{position:absolute;right:24px;bottom:20px}
.sx-bento .sx-photo-cell{border-right:1px solid var(--sx-line);border-bottom:1px solid var(--sx-line)}
.sx-pattern-groups{display:grid;gap:32px}
.sx-pattern-group{border-top:1px solid var(--sx-line);padding-top:20px}
.sx-pattern-group li{margin-top:18px}
.sx-pattern-group h4{font-size:16px;line-height:1.25;font-weight:600}
.sx-pattern-group p{margin-top:6px;font-size:15px;line-height:1.4}
.sx-pattern-group p.sx-pattern-use{font-size:13px;line-height:1.4;color:var(--sx-t3)}
.sx-pattern-stack{display:grid;align-content:start;gap:24px}
.sx-featured{display:grid;background:var(--sx-card);border:1px solid var(--sx-line);border-radius:var(--sx-r);overflow:hidden}
.sx-featured img{width:100%;height:100%;object-fit:cover;aspect-ratio:16/10}
.sx-featured-copy{padding:28px;display:flex;flex-direction:column;gap:16px}
.sx-filter{display:flex;flex-wrap:wrap;gap:12px 20px;padding:28px 0}
.sx-story-cards{display:grid;gap:24px}
.sx-story-card{background:var(--sx-card);border:1px solid var(--sx-line);border-radius:var(--sx-r);overflow:hidden}
.sx-story-card:hover{border-color:var(--sx-line-2)}
.sx-story-card img{width:100%;aspect-ratio:16/10;object-fit:cover}
.sx-story-card-copy{padding:22px;display:grid;gap:14px}
/* Captions and mono labels share the stronger secondary ink token. */
.sx-meta,.sx-built dt,.sx-facts dt,.sx-stage-number,.sx-shot figcaption,.sx-paper p.sx-caption{color:var(--sx-t3)}
.sx-paper p.sx-meta{font-size:12px;line-height:1.5;color:var(--sx-t3)}
.sx-story-body .sx-flow{margin-top:24px}
.sx-story-body .sx-flow ol{flex-direction:column}
.sx-story-body .sx-flow li{flex:auto}
.sx-story-body .sx-flow li+li::before{bottom:100%;left:50%;width:0;height:11px;border-top:0;border-left:1px solid var(--sx-line-2)}
@media(min-width:768px){
.sx-page{--pf-gut:24px}
.sx-section{padding:48px 0}
.sx-connects{grid-template-columns:repeat(2,minmax(0,1fr))}
.sx-scenes,.sx-made,.sx-text-pair,.sx-prev-next,.sx-story-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.sx-scenes li:nth-child(odd){padding-right:28px}
.sx-scenes li:nth-child(even){padding-left:28px;border-left:1px solid var(--sx-line)}
.sx-built-row{grid-template-columns:145px minmax(0,1fr);gap:24px;padding:22px 24px}
.sx-stages{grid-template-columns:repeat(2,minmax(0,1fr))}
.sx-proof{grid-template-columns:repeat(2,minmax(0,1fr))}
.sx-proof-cell{border-top:0;border-left:1px solid var(--sx-line)}
.sx-proof>:nth-child(n+3){border-top:1px solid var(--sx-line)}
.sx-proof>:nth-child(odd):not(.sx-photo-cell){border-left:0}
.sx-proof .sx-photo-cell{min-height:0;align-self:start}
.sx-pattern-groups,.sx-bento{grid-template-columns:repeat(2,minmax(0,1fr))}
.sx-featured{grid-template-columns:minmax(0,55fr) minmax(0,45fr)}
.sx-featured-copy{padding:22px}
.sx-flow--horizontal ol{flex-direction:row;flex-wrap:wrap;gap:20px}
.sx-flow--horizontal li{flex:1 1 100px}
.sx-flow--horizontal li+li::before{bottom:50%;left:-21px;width:20px;height:0;border-left:0;border-top:1px solid var(--sx-line-2)}
}
@media(min-width:1024px){
.sx-hero-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:64px}
.sx-composite{max-width:400px;padding-bottom:0;margin-right:0;padding-left:70px}
.sx-hero-grid>div:first-child{padding-top:4px}
.sx-composite .sx-flow{padding:14px}
.sx-composite .sx-flow ol{gap:6px}
.sx-composite .sx-flow li{padding:6px 14px}
.sx-composite .sx-flow li+li::before{height:7px}
.sx-composite .sx-shot,.sx-composite .sx-flow{width:115%;margin:-48% auto 0 -70px}
.sx-run-row{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:32px;align-items:center;padding:32px 0}
.sx-run-row:nth-child(even){grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
.sx-run-row:nth-child(even) .sx-run-copy{order:2}
.sx-made,.sx-bento,.sx-story-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
.sx-stages{grid-template-columns:repeat(4,minmax(0,1fr))}
.sx-story-layout{grid-template-columns:300px minmax(0,740px);gap:64px}
.sx-story-body .sx-built-row{grid-template-columns:135px minmax(0,1fr);gap:16px}
.sx-pattern-groups{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.sx-section{padding:48px 0}
.sx-faq-column+.sx-faq-column{border-top:0}
.sx-faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:32px}
}

/* Paper type overrides the compact platform scale without changing dark bands. */
body.pf-compact.sx-page .sx-paper .pf-h2{font-size:30px;line-height:1.08;letter-spacing:-.03em;margin-bottom:24px}
body.pf-compact.sx-page .sx-paper .pf-h3{font-size:21px;line-height:1.25}
body.pf-compact.sx-page .sx-made-cell .pf-h3{font-size:17px;font-weight:600}
.sx-paper :where(li,dd){font-size:17px;line-height:1.6;color:var(--sx-t2)}
.sx-paper :where(.sx-built dd,.sx-items li,.sx-faq summary,.sx-connects li){font-size:16px;line-height:1.55}
.sx-paper :where(.sx-proof-cell,.sx-story-card-copy,.sx-featured-copy,.sx-bento-cell,.sx-connects) p:not(.sx-meta):not(.sx-caption){font-size:16px;line-height:1.55}
.sx-paper .sx-section>.sx-stages+p{max-width:820px}
.sx-paper .sx-flow li{font-size:16px;line-height:1.55;color:var(--sx-ink)}
.sx-proof--single{grid-template-columns:minmax(0,1fr)}
.sx-proof--single .sx-proof-cell{border-left:0}
.sx-story-list{list-style:disc;padding-left:1.25em;color:var(--sx-t2);line-height:1.6;margin:18px 0}
.sx-story-list li+li{margin-top:12px}
.sx-story-body .sx-shot{margin-top:24px}
.sx-browse{display:grid;gap:32px}
.sx-browse li+li{margin-top:14px}
.sx-browse ul{margin-top:20px}
@media(min-width:768px){
body.pf-compact.sx-page .sx-paper .pf-h2{font-size:40px}
.sx-story-body .sx-section{padding:48px 0}
.sx-story-body .sx-section:first-child{padding-top:0}
.sx-browse{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
body.pf-compact.sx-page .pf-h1{font-size:34px}
.sx-page{--pf-gut:16px}
}

/* Architect pass 13 Oct: "How it runs" as a two-column card grid on desktop; odd counts lead with one full-width feature row. Proof photo shorter. */
@media(min-width:1024px){
#how{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px;row-gap:40px;align-items:start}
#how>h2,#how>.sx-text-pair{grid-column:1/-1}
#how>.sx-text-pair{padding:0 0 8px}
#how>.sx-run-row{display:flex;flex-direction:column;gap:20px;padding:0;border:0}
#how>.sx-run-row>.sx-shot{order:-1}
#how>.sx-run-row .sx-run-copy{order:0}
#how>.sx-run-row .sx-run-copy p{max-width:none}
#how>article.sx-run-row:first-of-type:nth-last-of-type(odd){grid-column:1/-1;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:40px;align-items:center}
#how>article.sx-run-row:first-of-type:nth-last-of-type(odd)>.sx-shot{order:2}
.sx-proof .sx-photo-cell{aspect-ratio:16/10}
}
.sx-flow li::first-letter{text-transform:uppercase}

/* SOL-7 narrative kit. Only opt-in components alter the exemplar layouts. */
.sx-moments,.sx-chapters{display:grid;gap:24px}
.sx-moment,.sx-chapter{background:var(--sx-card);border:1px solid var(--sx-line);border-radius:14px;padding:24px;min-width:0}
.sx-moment .pf-h3{margin:12px 0}
.sx-chapter .pf-h3{font-weight:600;margin-bottom:12px}
.sx-paper p.sx-turn{font-size:26px;line-height:1.3;color:var(--sx-ink);max-width:760px;margin:28px 0}
.sx-journey-steps{list-style:none;padding:0;margin:0}
.sx-journey-step{position:relative;display:grid;gap:24px;padding:0 0 36px 44px;min-width:0}
.sx-journey-step:not(:last-child)::before{content:'';position:absolute;left:14px;top:28px;bottom:0;border-left:1px solid var(--sx-line-2)}
.sx-journey-number{position:absolute;left:0;top:0;width:29px;height:29px;display:grid;place-items:center;border:1px solid var(--sx-line-2);border-radius:50%;background:var(--sx-paper);color:var(--sx-ink);font:12px var(--pf-mono)}
.sx-journey-copy .pf-h3{margin:12px 0}
.sx-journey-copy p:not(.sx-meta){font-size:17px}
.sx-journey .sx-shot img{aspect-ratio:16/10;object-fit:contain}
.sx-dashboard{max-width:760px;margin:0 auto}
.sx-compare{border-collapse:separate;border-spacing:0;width:100%;background:var(--sx-card);border:1px solid var(--sx-line);border-radius:14px;overflow:hidden;text-align:left;table-layout:fixed}
.sx-compare th{font:12px/1.5 var(--pf-mono);color:var(--sx-t3);font-weight:400}
.sx-compare :where(th,td){padding:18px 24px;vertical-align:top}
.sx-compare td{font-size:17px;line-height:1.6;color:var(--sx-t2);border-top:1px solid var(--sx-line)}
.sx-compare td+td{color:var(--sx-ink);font-weight:500}
.sx-glance{display:grid;background:var(--sx-card);border:1px solid var(--sx-line);border-radius:14px;overflow:hidden}
.sx-glance>div{padding:18px 24px;min-width:0}
.sx-glance>div+div{border-top:1px solid var(--sx-line)}
.sx-glance dt{font:12px/1.5 var(--pf-mono);color:var(--sx-t3);margin-bottom:8px}
.sx-paper .sx-glance dd{font-size:16px;line-height:1.55}
.sx-paper p.sx-parts-lead{font-size:19px;line-height:1.55;max-width:760px;color:var(--sx-ink)}
.sx-integration{margin-top:18px}
.sx-paper p.sx-pattern-line{color:var(--sx-t2);margin:24px 0}
.sx-paper p.sx-pull{font-size:30px;line-height:1.25;color:var(--sx-ink);max-width:720px;margin:24px 0}
.sx-story-start{min-width:0}
.sx-story-start .sx-section{padding-top:0}
.sx-story-start p+p{margin-top:18px}
.sx-chapter-shot{max-width:640px;margin:28px auto 0}
.sx-chapter-shot img{max-width:260px;margin:0 auto}
.sx-day{list-style:none;margin:0;padding:0 0 0 24px}
.sx-day li{position:relative;padding:0 0 28px 20px;border-left:1px solid var(--sx-line-2)}
.sx-day li::before{content:'';position:absolute;width:7px;height:7px;border-radius:50%;background:var(--sx-ink);left:-4px;top:6px}
.sx-day li:last-child{padding-bottom:0}
.sx-day .sx-meta{display:block;margin-bottom:12px}
.sx-day p{font-size:16px;line-height:1.55}
.sx-statements{display:grid;gap:24px}
.sx-paper .sx-statements p{font-size:26px;line-height:1.3;color:var(--sx-ink);border-top:1px solid var(--sx-line);padding:20px 0;max-width:none}
.sx-journey-tabs[hidden],.sx-journey-step[hidden]{display:none}
@media(min-width:768px){
  .sx-chapters,.sx-statements{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sx-glance{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,auto);grid-auto-flow:column}
  .sx-glance>div:nth-child(4){border-top:0}
  .sx-glance>div:nth-child(n+4){border-left:1px solid var(--sx-line)}
}
@media(min-width:1024px){
  .sx-moments{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sx-journey-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:32px}
  .sx-journey-tabs button{position:relative;display:flex;align-items:baseline;gap:8px;text-align:left;font:12px/1.5 var(--pf-mono);color:var(--sx-t3);background:transparent;border:0;border-bottom:1px solid var(--sx-line-2);padding:16px 10px;cursor:pointer;min-width:0}
  .sx-journey-tabs button[aria-selected=true]{color:var(--sx-ink);border-bottom:2px solid var(--sx-ink)}
  .sx-journey-tab-number{flex:none}
  .sx-journey-auto .sx-journey-tabs button[aria-selected=true]::after{content:'';position:absolute;left:0;bottom:3px;width:100%;height:1px;background:var(--sx-ink);transform-origin:left;animation:sx-progress 6s linear forwards}
  .sx-journey-enhanced .sx-journey-step{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:32px;align-items:center;padding:0;animation:sx-panel-in 250ms ease-out}
  .sx-journey-enhanced .sx-journey-step::before,.sx-journey-enhanced .sx-journey-number{display:none}
  body.pf-compact.sx-page .sx-journey-enhanced .pf-h3{font-size:26px;line-height:1.3}
  .sx-day{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));padding:0;gap:0}
  .sx-day li{border-left:0;border-top:1px solid var(--sx-line-2);padding:24px 20px 0 0;min-width:0}
  .sx-day li::before{top:-4px;left:0}
}
@media(max-width:767px){
  .sx-compare thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .sx-compare tbody,.sx-compare tr,.sx-compare td{display:block;width:100%}
  .sx-compare tr+tr{border-top:1px solid var(--sx-line)}
  .sx-compare td{border:0}
  .sx-compare td+td{padding-top:0}
  .sx-compare td::before{content:attr(data-label);display:block;font:12px/1.5 var(--pf-mono);color:var(--sx-t3);margin-bottom:8px}
}
@keyframes sx-panel-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes sx-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(prefers-reduced-motion:reduce){.sx-journey-enhanced .sx-journey-step,.sx-journey-auto .sx-journey-tabs button[aria-selected=true]::after{animation:none}}

/* ===== Type system v2 (architect, 13 Oct) =====
   Six steps only: mono 13 · small 16 · body 18 · title 20 · statement 28 · display 40 (H1 keeps the platform 44).
   One width rule: prose fills the column it sits in; no arbitrary measures. */
.sx-page .sx-paper :is(.sx-section,.sx-story-layout,.sx-story-body,.sx-story-start) :is(p,.sx-intro,.sx-turn,.sx-pull,.sx-parts-lead,.sx-integration,.sx-scene-close,.sx-pattern-line){max-width:none}
/* body 18 */
.sx-page .sx-paper :is(.sx-section,.sx-story-layout,.sx-story-body,.sx-story-start) :is(p,li,td){font-size:18px;line-height:1.6}
.sx-page .sx-paper :is(.sx-section,.sx-story-layout,.sx-story-body,.sx-story-start) .sx-intro{font-size:18px;line-height:1.6;color:var(--sx-ink)}
/* statement 28: turn lines, pull lines, big statements, journey moment lines */
.sx-page .sx-paper :is(.sx-section,.sx-story-layout,.sx-story-body,.sx-story-start) :is(.sx-turn,.sx-pull),
.sx-page .sx-paper .sx-section .sx-statements p,
.sx-page .sx-paper .sx-section .sx-journey h3{font-size:28px;line-height:1.25;letter-spacing:-.02em;font-weight:500;color:var(--sx-ink)}
/* title 20 */
.sx-page .sx-paper :is(.sx-section,.sx-story-layout,.sx-story-body,.sx-story-start) :is(h3,summary),
.sx-page .sx-paper .sx-facts h2{font-size:20px;line-height:1.3;letter-spacing:-.01em;font-weight:600}
.sx-page .sx-paper .sx-section .sx-journey h3{font-size:28px;line-height:1.25;letter-spacing:-.02em;font-weight:500}
/* small 16 */
.sx-page .sx-paper :is(.sx-section,.sx-story-layout,.sx-story-body,.sx-story-start) :is(figcaption,.sx-link,dd,.sx-pattern-use,.sx-caption,.sx-pattern-line,.sx-day p,.sx-story-card-copy p,.sx-proof-cell p,.sx-bento-cell p,.sx-made-cell p){font-size:16px;line-height:1.5}
/* mono 13 */
.sx-page .sx-paper :is(.sx-section,.sx-story-layout,.sx-story-body,.sx-story-start) :is(.sx-meta,dt,th,.sx-journey-tabs [role=tab],.sx-journey-number){font-size:13px;letter-spacing:.02em}
.sx-page .sx-paper .sx-section .sx-compare td{font-size:18px}
@media(max-width:767px){
.sx-page .sx-paper :is(.sx-section,.sx-story-layout,.sx-story-body,.sx-story-start) :is(.sx-turn,.sx-pull),
.sx-page .sx-paper .sx-section .sx-statements p,.sx-page .sx-paper .sx-section .sx-journey h3{font-size:24px}
}
/* type v2: stragglers */
.sx-page .sx-paper .pf-h3:not(#sx){font-size:20px;line-height:1.3;letter-spacing:-.01em}
.sx-page .sx-paper .sx-journey .pf-h3:not(#sx){font-size:28px;line-height:1.25;letter-spacing:-.02em;font-weight:500}
@media(max-width:767px){.sx-page .sx-paper .sx-journey .pf-h3:not(#sx){font-size:24px}}
.sx-page .sx-paper .sx-prev-next :is(a,p):not(#sx){font-size:18px}
.sx-page .sx-paper :is(.sx-prev-next,.sx-story-cards,.sx-featured,.sx-bento) .sx-meta:not(#sx){font-size:13px;letter-spacing:.02em}
/* story: facts card + start column aligned to the page edge, body fills the rest */
@media(min-width:1024px){.sx-page .sx-paper .sx-story-layout:not(#sx){max-width:none;width:100%;margin-left:0;margin-right:0;grid-template-columns:300px minmax(0,1fr);column-gap:64px}}

/* depth layer (architect, 13 Oct): under-the-hood lines and three-way comparison */
.sx-page .sx-paper .sx-hood:not(#sx){margin-top:14px;padding-top:14px;border-top:1px solid var(--sx-line);font-size:16px;line-height:1.5;color:var(--sx-t2)}
.sx-page .sx-paper .sx-hood .sx-meta:not(#sx){display:block;margin-bottom:4px;color:var(--sx-t2)}
.sx-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.sx-compare--3 th[scope=row]{font:600 16px/1.5 var(--pf-font);color:var(--sx-ink);border-top:1px solid var(--sx-line)}
.sx-compare--3 td+td{color:var(--sx-t2);font-weight:400}
.sx-compare--3 td:last-child{color:var(--sx-ink);font-weight:500;background:rgba(11,13,18,.025)}
.sx-compare--3 thead th:last-child{color:var(--sx-ink)}
@media(min-width:768px){.sx-compare--3 col,.sx-compare--3 th[scope=row]{width:22%}}
@media(max-width:767px){.sx-compare--3 th[scope=row]{display:block;width:100%;padding-bottom:0}}

/* comparison row labels are row headings, not mono labels */
.sx-page .sx-paper .sx-compare--3 th[scope=row]:not(#sx){font:600 18px/1.5 var(--pf-font);letter-spacing:-.01em;color:var(--sx-ink)}

/* Retool-comparison pass (architect, 13 Oct): hero proof line, changes + report, glance screens, part tiles */
.sx-proofline{margin-top:22px;max-width:620px;font-size:15px;line-height:1.55;color:var(--pf-t3)}
.sx-page .sx-paper .sx-changes{display:grid;gap:24px;align-items:start}
.sx-page .sx-paper .sx-glance-shots{display:grid;gap:24px;margin-top:24px}
.sx-page .sx-paper .sx-parts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--sx-line);border-radius:14px;overflow:hidden;background:var(--sx-card);margin:24px 0}
.sx-page .sx-paper .sx-part{padding:20px 22px;border-top:1px solid var(--sx-line);border-left:1px solid var(--sx-line);margin-top:-1px;margin-left:-1px}
.sx-page .sx-paper .sx-part .sx-part-name:not(#sx){font:600 18px/1.35 var(--pf-font);letter-spacing:-.01em;color:var(--sx-ink)}
.sx-page .sx-paper .sx-part .sx-part-use:not(#sx){margin-top:6px;font-size:16px;line-height:1.5;color:var(--sx-t2)}
@media(min-width:768px){.sx-page .sx-paper .sx-glance-shots{grid-template-columns:repeat(2,minmax(0,1fr))}.sx-page .sx-paper .sx-parts{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1024px){.sx-page .sx-paper .sx-changes{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}}

.sx-page .sx-paper .sx-compare-more:not(#sx){margin-top:20px;font-size:16px;display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center}
