/* Inner pages, new service template (pilot: services-ai-data.html). Uses the site tokens from the page head. */
.sx-glance{padding-block:clamp(40px,6vw,88px) 0}
.sx-facts{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.sx-facts li{display:flex;flex-direction:column;gap:8px;padding:22px;border:1px solid var(--ink-rule);border-radius:12px;background:rgba(12,16,28,.66);backdrop-filter:blur(6px)}
.sx-facts .mono,.sx-get .mono,.sx-out .mono,.sx-cards>li>.mono,.sx-pairs .mono,.sx-k,.sx-case>.mono,.sx-reads .mono{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mist)}
.sx-facts b{font:500 clamp(20px,1.7vw,26px)/1.15 var(--f-display);letter-spacing:-.02em}
.sx-facts p{color:var(--mist);font-size:14.5px;line-height:1.5}

/* Problems → what we do */
.sx-pairs{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink-rule)}
.sx-pairs li{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--gap);padding:clamp(22px,2.6vw,36px) 0;border-bottom:1px solid var(--ink-rule)}
.sx-q,.sx-a{display:flex;flex-direction:column;gap:10px}
.sx-q h3{font-size:clamp(22px,2.2vw,34px);line-height:1.1;letter-spacing:-.025em}
.sx-a p{color:var(--plaster-2);font-size:16.5px;line-height:1.55;max-width:52ch}
.sx-a .mono{color:var(--fuchsine)}
.sx-k{margin:clamp(36px,4vw,56px) 0 14px}
.sx-who{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.sx-who li{display:flex;flex-direction:column;gap:6px;padding:18px 20px;border-radius:12px;border:1px solid var(--ink-rule);background:rgba(12,16,28,.5)}
.sx-who b{font-weight:600}
.sx-who span{color:var(--mist);font-size:14.5px;line-height:1.45}

/* Architecture figure */
.sx-fig{margin:0;padding:clamp(16px,2.4vw,32px);border:1px solid var(--ink-rule);border-radius:16px;background:rgba(10,13,24,.78)}
.sx-svg{display:block;width:100%;height:auto}
.sx-svg rect{fill:#0F1424;stroke:#2B3350;stroke-width:1.2}
.sx-svg rect.hl{stroke:#8B6CFF;stroke-width:1.6;fill:#141936}
.sx-svg .t{fill:#ECEFF4;font-size:17px;font-weight:500}
.sx-svg .s{fill:#8D96A8;font-size:14px}
.sx-fig figcaption{margin-top:16px;color:var(--mist);font-size:12px}
.sx-flow-sm{display:none}

/* Capability "you get" lines */
.sx-caps .cap{min-height:0}
.sx-get,.sx-out{display:flex;flex-direction:column;gap:6px;margin-top:6px;padding-top:14px;border-top:1px dashed var(--ink-rule);color:var(--plaster);font-size:15px;line-height:1.5}
.sx-caps .sx-get{margin-top:auto}
.process .sx-out{border-top-color:color-mix(in srgb,var(--carbon) 18%,transparent);color:var(--carbon)}
.process .sx-out .mono{color:var(--stone)}

/* Ways to work with us */
.sx-cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.sx-cards>li{display:flex;flex-direction:column;gap:12px;padding:24px 22px;border:1px solid var(--ink-rule);border-radius:12px;background:rgba(12,16,28,.66);backdrop-filter:blur(6px)}
.sx-cards>li:nth-child(2){border-color:color-mix(in srgb,var(--fuchsine) 55%,var(--ink-rule))}
.sx-cards h3{font-size:clamp(22px,1.8vw,28px);letter-spacing:-.02em}
.sx-when{font:500 14px var(--f-mono);color:var(--fuchsine)}
.sx-cards>li>p:not(.sx-when):not(.sx-get){color:var(--mist);line-height:1.55}
.sx-cards .sx-get{margin-top:auto}
.sx-link{display:inline-flex;gap:8px;align-items:center;color:var(--plaster);text-decoration:none;font-weight:500;margin-top:6px}
a.sx-link:hover,.sx-case:hover .sx-link,.sx-reads a:hover .sx-link{color:var(--fuchsine)}

/* Technology */
.sx-tech{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.sx-tech>div{padding:22px;border:1px solid var(--ink-rule);border-radius:12px;background:rgba(12,16,28,.6)}
.sx-tech dt{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mist);margin-bottom:14px}
.sx-tech dd{margin:0;display:flex;flex-wrap:wrap;gap:8px}
.sx-tech dd span{padding:7px 12px;border-radius:999px;border:1px solid #2B3350;font-size:14px;color:var(--plaster-2);background:rgba(20,25,46,.7)}

/* Proof */
.sx-proof-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:14px}
.sx-case{display:flex;flex-direction:column;gap:14px;padding:clamp(24px,3vw,40px);border-radius:14px;border:1px solid color-mix(in srgb,var(--fuchsine) 45%,var(--ink-rule));background:linear-gradient(140deg,rgba(91,140,255,.16),rgba(139,108,255,.10) 55%,rgba(12,16,28,.7));color:inherit;text-decoration:none;min-height:280px}
.sx-case h3{font-size:clamp(24px,2.4vw,36px);line-height:1.08;letter-spacing:-.025em}
.sx-case p{color:var(--plaster-2);line-height:1.55;max-width:48ch}
.sx-case .sx-link{margin-top:auto}
.sx-reads{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.sx-reads a{position:relative;display:flex;flex-direction:column;gap:8px;padding:20px 48px 20px 22px;border-radius:12px;border:1px solid var(--ink-rule);background:rgba(12,16,28,.66);color:inherit;text-decoration:none;height:100%}
.sx-reads b{font-weight:500;font-size:17px;line-height:1.35}
.sx-reads .sx-link{position:absolute;right:20px;top:50%;transform:translateY(-50%);margin:0}

@media (max-width:1100px){
  .sx-facts,.sx-who,.sx-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:899px){
  .sx-pairs li{grid-template-columns:1fr;gap:14px}
  .sx-proof-grid,.sx-tech{grid-template-columns:1fr}
  .sx-fig{display:none}
  .sx-flow-sm{display:flex;flex-direction:column;list-style:none;margin:0;padding:0;gap:0}
  .sx-flow-sm li{position:relative;padding:14px 18px;border:1px solid var(--ink-rule);border-radius:12px;background:rgba(12,16,28,.7);font:500 15px var(--f-mono)}
  .sx-flow-sm li+li{margin-top:26px}
  .sx-flow-sm li+li::before{content:"↓";position:absolute;top:-23px;left:22px;color:var(--fuchsine)}
}
@media (max-width:560px){
  .sx-facts,.sx-who,.sx-cards{grid-template-columns:1fr}
}

/* Capability pages */
.sx-subnav{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding-block:22px;border-bottom:1px solid var(--ink-rule)}
.sx-subnav .mono{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mist)}
.sx-subnav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.sx-subnav a{display:inline-block;padding:8px 14px;border-radius:999px;border:1px solid var(--ink-rule);color:var(--plaster-2);text-decoration:none;font-size:14px}
.sx-subnav a:hover{border-color:var(--fuchsine);color:var(--plaster)}
.sx-subnav a[aria-current=page]{background:var(--plaster);color:var(--carbon);border-color:var(--plaster)}
.sx-signs b{font-size:17px}
.sx-get-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:var(--gap);align-items:start}
.sx-get-grid .sec-head{display:block;margin:0}
.sx-get-grid .sec-head h2{font-size:clamp(40px,5.4vw,96px)}
.sx-check{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border-top:1px solid var(--ink-rule)}
.sx-check li{position:relative;padding:20px 0 20px 44px;border-bottom:1px solid var(--ink-rule);font-size:clamp(17px,1.3vw,20px);line-height:1.45}
.sx-check li::before{content:"";position:absolute;left:4px;top:24px;width:16px;height:9px;border-left:2px solid var(--fuchsine);border-bottom:2px solid var(--fuchsine);transform:rotate(-45deg)}
.sx-steps>li>p:not(.sx-when){color:var(--mist);line-height:1.55}
.sx-reads-row{flex-direction:row;flex-wrap:wrap}
.sx-reads-row li{flex:1 1 320px}
.sx-flow-sm small{display:block;margin-top:4px;font:400 13px var(--f-text);color:var(--mist)}
/* Clickable capability boxes on the service page */
.sx-caps .cap{position:relative;transition:border-color .25s,transform .25s}
.sx-caps .cap .sx-more{color:var(--plaster);text-decoration:none;font-weight:500;display:inline-flex;gap:8px;margin-top:4px}
.sx-caps .cap .sx-more::after{content:"";position:absolute;inset:0;border-radius:12px}
.sx-caps .cap:hover,.sx-caps .cap:focus-within{border-color:color-mix(in srgb,var(--fuchsine) 60%,var(--ink-rule));transform:translateY(-2px)}
.sx-caps .cap:hover .sx-more,.sx-caps .cap:focus-within .sx-more{color:var(--fuchsine)}
@media (max-width:899px){.sx-get-grid{grid-template-columns:1fr}}
/* Section spacing (same rhythm as the existing chapters) */
.sx-prob,.sx-arch,.sx-gets,.sx-ways,.sx-stack,.sx-proof{padding-block:clamp(80px,10vw,150px)}
.sx-glance + .sx-prob{padding-top:clamp(64px,8vw,120px)}
