/* Persistent expansion using the current website's tokens and content primitives. */
.sg-jump { display:flex; flex-wrap:wrap; gap:12px 24px; margin-top:32px; font-size:var(--fs-small); }
.sg-jump a { color:var(--c-navy); text-underline-offset:4px; padding-block:6px; }
.sg-cluster:nth-of-type(even) { background:var(--c-tint); }
.sg-cluster .ct-intro { max-width:760px; margin-bottom:32px; }
.sg-home { background:var(--c-tint); }
.sg-home__head { display:flex; align-items:baseline; justify-content:space-between; gap:20px 40px; margin-bottom:var(--head); }
.sg-home__head h2 { margin:0; }
.sg-home__head > a { flex-shrink:0; color:var(--c-navy); text-underline-offset:4px; font-size:var(--fs-small); }
.sg-home .ct-cards { grid-template-columns:repeat(3,minmax(0,1fr)); }
.zx-svc__it b a { color:inherit; text-decoration:underline; text-decoration-color:var(--c-line); text-underline-offset:4px; }
.zx-svc__it b a:hover { text-decoration-color:currentColor; }
.sg-service-detail .ct-prose { max-width:var(--ct-read,720px); }
.sg-service-detail .ct-prose > section:first-child { margin-top:0; }
.ct-prose img { max-width:100%; height:auto; }
.ct-prose section, .sg-cluster, .sg-home { scroll-margin-top:calc(var(--header-h) + 24px); }
.ct-table:focus-visible { outline:2px solid var(--c-blue); outline-offset:3px; }
.sg-download { display:flex; flex-wrap:wrap; gap:12px 24px; }
.ct-prose a[download] { display:inline-block; padding-block:10px; }
@media(max-width:1023px) {
  /* A tall expanded sticky header can scroll out of view; anchor the open menu to the viewport. */
  html.is-menu .zx-head { position:fixed; inset:0 0 auto; }
}
@media(max-width:899px) {
  .sg-home .ct-cards { grid-template-columns:1fr; }
  .sg-home__head { align-items:flex-start; flex-direction:column; gap:12px; }
}
@media(prefers-reduced-motion:reduce) { .sg-jump a { scroll-behavior:auto; } }
