/* ScopeX — sub-service pages v3.
   Styles the EXISTING body markup only. No content is added, removed or reordered.
   Scope: .sxsub (the original sx-sw-document-section, tagged by the router) */

.sxsub{
  --blue:#2059e9; --deep:#1a47c4; --mid:#6f9bf5; --soft:#c8d9f7; --tint:#eef3fc;
  --navy:#0d1d36; --ink:#101d35; --body:#51617c; --line:#e4ebf6; --good:#1d9e75;
  --disp:'Bricolage Grotesque',ui-sans-serif,system-ui,sans-serif;
  --sans:'Geist',ui-sans-serif,system-ui,-apple-system,sans-serif;
  --mono:'Geist Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  background:#fff;
  padding:78px 0 88px;
}

/* stale chrome */
.sxsub .sx-sw-section-nav{display:none!important;}

.sxsub .sx-sw-document-layout{max-width:1120px;margin:0 auto;padding:0 24px;
  display:grid;grid-template-columns:150px minmax(0,1fr);gap:44px;align-items:start;}

/* the little "01 / clear priorities" margin note becomes a sticky rail */
.sxsub .sx-sw-margin-note{position:sticky;top:120px;font-family:var(--mono);}
.sxsub .sx-sw-margin-note span{display:inline-flex;align-items:center;justify-content:center;
  width:38px;height:38px;border-radius:11px;background:var(--tint);color:var(--blue);
  font-size:12px;font-weight:600;letter-spacing:.06em;}
.sxsub .sx-sw-margin-note p{margin:12px 0 0;font-family:var(--sans);font-size:12.5px;
  line-height:1.6;color:#8494ab;}

/* ---------------- rich text ---------------- */
.sxsub .sx-sw-richtext{font-family:var(--sans);color:var(--body);font-size:15.5px;line-height:1.75;}
.sxsub .sx-sw-richtext > div{display:contents;}

.sxsub .sx-sw-richtext h2,
.sxsub .sx-sw-richtext h3,
.sxsub .sx-sw-richtext h4{font-family:var(--disp);letter-spacing:-.022em;line-height:1.16;
  color:var(--ink)!important;border:0!important;text-transform:none;text-shadow:none;}

.sxsub .sx-sw-richtext h2{font-size:clamp(25px,2.9vw,34px);font-weight:800;
  margin:56px 0 4px!important;padding-top:26px;border-top:1px solid var(--line)!important;position:relative;}
.sxsub .sx-sw-richtext h2:first-of-type{margin-top:0!important;padding-top:0;border-top:0!important;}
.sxsub .sx-sw-richtext h2::after{content:"";position:absolute;left:0;top:-1px;width:54px;height:2px;
  background:var(--blue);}
.sxsub .sx-sw-richtext h2:first-of-type::after{display:none;}

.sxsub .sx-sw-richtext h3{font-size:18px;font-weight:700;margin:30px 0 6px!important;}
.sxsub .sx-sw-richtext h4{font-size:15.5px;font-weight:700;margin:22px 0 4px!important;}

.sxsub .sx-sw-richtext p{margin:12px 0!important;font-family:var(--sans);}
.sxsub .sx-sw-richtext strong{color:var(--ink);font-weight:600;}
.sxsub .sx-sw-richtext a{color:var(--blue);font-weight:600;text-decoration:none;
  border-bottom:1px solid var(--soft);transition:border-color .2s;}
.sxsub .sx-sw-richtext a:hover{border-bottom-color:var(--blue);}

/* lists become check-lists in cards */
.sxsub .sx-sw-richtext ul{list-style:none!important;margin:18px 0!important;padding:0!important;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;}
.sxsub .sx-sw-richtext ul li{position:relative;background:#fff;border:1px solid var(--line);
  border-radius:13px;padding:13px 16px 13px 42px;font-size:13.8px;line-height:1.55;color:var(--body);
  box-shadow:0 10px 26px rgba(13,29,54,.05);transition:transform .2s,border-color .2s,box-shadow .2s;
  list-style:none!important;margin:0!important;}
.sxsub .sx-sw-richtext ul li:hover{transform:translateY(-2px);border-color:var(--soft);
  box-shadow:0 16px 34px rgba(13,29,54,.09);}
.sxsub .sx-sw-richtext ul li::before{content:"";position:absolute;left:16px;top:17px;
  width:14px;height:14px;border-radius:50%;background:var(--tint);}
.sxsub .sx-sw-richtext ul li::after{content:"";position:absolute;left:20px;top:21px;
  width:6px;height:3px;border-left:1.8px solid var(--blue);border-bottom:1.8px solid var(--blue);
  transform:rotate(-45deg);}

/* the trailing CTA link block the pages end with */
.sxsub .sx-sw-richtext > div:last-child > div:last-child a,
.sxsub .sx-sw-richtext div > div > a{display:inline-flex;align-items:center;gap:8px;
  background:var(--blue);color:#fff!important;border:0;border-radius:99px;
  padding:14px 26px;font-weight:600;font-size:15px;text-decoration:none;
  box-shadow:0 14px 30px rgba(32,89,233,.28);transition:transform .2s,background .2s;}
.sxsub .sx-sw-richtext div > div > a:hover{background:var(--deep);transform:translateY(-2px);
  border-bottom-color:transparent;}

/* ---------------- responsive ---------------- */
@media (max-width:900px){
  .sxsub{padding:56px 0 64px;}
  .sxsub .sx-sw-document-layout{grid-template-columns:1fr;gap:22px;padding:0 20px;}
  .sxsub .sx-sw-margin-note{position:static;display:flex;align-items:center;gap:14px;}
  .sxsub .sx-sw-margin-note p{margin:0;}
}
@media (max-width:620px){
  .sxsub .sx-sw-richtext ul{grid-template-columns:1fr;}
}
