/* ==========================================================================
   SELECTSYS - MASTER PAGE COMPOSITIONS
   --------------------------------------------------------------------------
   Nine master pages, one per family, composed on a 1200px structural canvas.
   These are the templates the remaining menu pages will be built from once
   approved. Nothing here is applied unless the page sets $data['sx_master'].

   Grid vocabulary (all inside .sxm-wrap, 1200px + gutters):
     .sxm-hero          split hero, copy left / structured visual right
     .sxm-split         editorial split: heading column + content column
     .sxm-grid-2/3/4/5  card grids across the canvas
     .sxm-tile          a capability tile (name, category, line)
     .sxm-panel         a bordered panel (lists, tables, diagrams)
     .sxm-band          a thin full-width strip (audiences, cross-cutting notes)
   Text alignment is left by default. Centre is opted into with .sxm-center
   for short section intros and CTA bands only.
   ========================================================================== */

.sx-master .sxm-wrap{width:100%;max-width:1248px;margin-inline:auto;padding-inline:24px}
.sx-master .sxm{padding-block:88px !important;padding-inline:0 !important}
.sx-master .sxm.tight{padding-block:56px !important}
.sx-master .sxm.ground-tint{background:var(--sx-tint);border-block:1px solid var(--sx-line)}
.sx-master .sxm.ground-white{background:var(--sx-white)}
.sx-master .sxm.ground-blue{background:var(--sx-blue);color:#D6E0F5}
.sx-master .sxm.ground-blue :is(h2,h3){color:#fff !important}
.sx-master .sxm.ground-blue p{color:#D6E0F5 !important}
.sx-master .sxm + .sxm.ground-tint{border-top:0}

/* type inside masters: left, on the canvas, no legacy caps */
.sx-master .sxm :is(h1,h2,h3,h4){text-align:left;max-width:none;margin-inline:0 !important}
.sx-master .sxm h1{font-size:clamp(32px,3.1vw,44px) !important;line-height:1.08 !important;letter-spacing:-.02em !important;margin:0 0 20px !important}
.sx-master .sxm h2{font-size:clamp(26px,2.5vw,34px) !important;line-height:1.15 !important;margin:0 0 14px !important}
.sx-master .sxm h3{font-size:18px !important;line-height:1.3 !important;margin:0 0 8px !important;font-weight:700 !important}
.sx-master .sxm p{text-align:left;margin-inline:0 !important;max-width:66ch}
.sx-master .sxm .sxm-lead{font-size:17.5px !important;line-height:1.6 !important;color:var(--sx-body) !important;max-width:60ch}
.sx-master .sxm .sxm-eyebrow{display:block;font-size:12.5px;letter-spacing:.09em;text-transform:uppercase;font-weight:700;color:var(--sx-blue);margin-bottom:14px}
.sx-master .sxm .sxm-center{text-align:center}
.sx-master .sxm .sxm-center :is(h2,p){text-align:center;margin-inline:auto !important}
.sx-master .sxm .sxm-center p{max-width:64ch}
.sx-master .sxm .sxm-head{margin-bottom:36px}
.sx-master .sxm .sxm-head p{max-width:70ch}
.sx-master .sxm .sxm-head.sxm-center p{max-width:64ch}
.sx-master .sxm .sxm-small{font-size:14px !important;color:var(--sx-muted) !important}
.sx-master .sxm .sxm-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.sx-master .sxm .sxm-btns .btn{margin:0 !important}

/* hero: 6/6 or 7/5 split */
.sx-master .sxm-hero{padding-block:72px 64px !important;padding-inline:0 !important;background:var(--sx-white)}
.sx-master .sxm-hero .sxm-wrap{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:64px;align-items:center}
.sx-master .sxm-hero.even .sxm-wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.sx-master .sxm-hero .sxm-logo{display:block;height:34px;width:auto;margin-bottom:22px}
.sx-master .sxm-hero .sxm-lead{margin-top:0 !important}
.sx-master .sxm-hero-aside{min-width:0}
.sx-master .sxm-aside-cap{font-size:12px !important;line-height:1.4 !important;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--sx-muted);margin:0 0 12px !important}

/* editorial split */
.sx-master .sxm-split{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:56px;align-items:start}
.sx-master .sxm-split.s5-7{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
.sx-master .sxm-split.s7-5{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
.sx-master .sxm-split.s6-6{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.sx-master .sxm-split.middle{align-items:center}
.sx-master .sxm-split > * {min-width:0}
.sx-master .sxm-split .sxm-sticky{position:sticky;top:110px}

/* grids and tiles */
.sx-master .sxm-grid{display:grid;gap:20px}
.sx-master .sxm-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.sx-master .sxm-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.sx-master .sxm-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.sx-master .sxm-grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.sx-master .sxm-grid-6{grid-template-columns:repeat(6,minmax(0,1fr))}
.sx-master .sxm-tile{
  background:var(--sx-white);border:1px solid var(--sx-line);border-radius:12px;padding:22px 24px;
  display:flex;flex-direction:column;gap:6px;min-width:0;color:inherit;text-decoration:none !important;
  transition:border-color .15s ease;
}
.sx-master .sxm-tile:hover{border-color:var(--sx-blue-soft)}
.sx-master .sxm-tile.tint{background:var(--sx-tint)}
.sx-master .sxm-tile.blue{background:var(--sx-tint-blue);border-color:var(--sx-blue-pale)}
.sx-master .sxm-tile h3{margin:0 !important}
.sx-master .sxm-tile p{font-size:14.5px !important;line-height:1.55 !important;margin:0 !important;max-width:none;color:var(--sx-body) !important}
.sx-master .sxm-tile .sxm-cat{font-size:11.5px;letter-spacing:.07em;text-transform:uppercase;font-weight:600;color:var(--sx-blue)}
.sx-master .sxm-tile .sxm-num{font-size:12px;font-weight:700;color:var(--sx-muted);letter-spacing:.06em}
.sx-master .sxm-tile .sxm-more{margin-top:auto;padding-top:10px;font-size:14px;font-weight:600;color:var(--sx-blue)}
.sx-master .sxm-tile ul{margin:6px 0 0 !important;padding-left:1.1em !important;max-width:none}
.sx-master .sxm-tile li{font-size:14.5px !important;line-height:1.5 !important;margin:0 0 4px !important;max-width:none}

/* panel */
.sx-master .sxm-panel{background:var(--sx-white);border:1px solid var(--sx-line);border-radius:12px;padding:28px 30px;min-width:0}
.sx-master .sxm-panel.tint{background:var(--sx-tint)}
.sx-master .sxm-panel h3{margin:0 0 12px !important}
.sx-master .sxm-panel ul{margin:0 !important;padding-left:0 !important;list-style:none;max-width:none}
.sx-master .sxm-panel li{padding:9px 0;border-bottom:1px solid var(--sx-line);font-size:15px !important;line-height:1.45 !important;margin:0 !important;max-width:none}
.sx-master .sxm-panel li:last-child{border-bottom:0}
.sx-master .sxm-panel.cols-2 ul{columns:2;column-gap:40px}
.sx-master .sxm-panel.cols-2 li{break-inside:avoid}
.sx-master .sxm-panel .table{margin:0 !important}

/* band */
.sx-master .sxm-band{
  display:flex;flex-wrap:wrap;gap:8px 28px;align-items:baseline;
  padding:14px 22px;border:1px dashed var(--sx-line);border-radius:12px;background:var(--sx-tint-blue);margin-top:24px;
}
.sx-master .sxm-band .lab{font-size:12px;letter-spacing:.07em;text-transform:uppercase;font-weight:700;color:var(--sx-blue)}
.sx-master .sxm-band .item{font-size:14.5px;color:var(--sx-body)}
.sx-master .sxm-band .item b{color:var(--sx-ink)}

/* step chain (flow) */
.sx-master .sxm-chain{display:grid;grid-template-columns:repeat(var(--n,6),minmax(0,1fr));gap:12px;counter-reset:step}
.sx-master .sxm-chain .sxm-step{
  position:relative;background:var(--sx-white);border:1px solid var(--sx-line);border-radius:12px;padding:18px 18px 16px;min-width:0;
}
.sx-master .sxm-chain .sxm-step::before{counter-increment:step;content:counter(step,decimal-leading-zero);display:block;font-size:12px;font-weight:700;letter-spacing:.06em;color:var(--sx-blue);margin-bottom:8px}
.sx-master .sxm-chain .sxm-step h3{font-size:15.5px !important;margin:0 !important}
.sx-master .sxm-chain .sxm-step.end{background:var(--sx-tint-blue);border-color:var(--sx-blue-pale)}

/* comparison table inside masters */
.sx-master .sxm-panel table th{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--sx-muted);font-weight:700;border-bottom:1px solid var(--sx-line);padding:10px 12px}
.sx-master .sxm-panel table td{padding:12px;font-size:15px;border-bottom:1px solid var(--sx-line);vertical-align:top}
.sx-master .sxm-panel table tr:last-child td{border-bottom:0}
.sx-master .sxm-panel table td.hl{background:var(--sx-tint-blue);font-weight:600;color:var(--sx-ink)}

/* CTA band */
.sx-master .sxm-cta{background:var(--sx-blue);padding-block:64px !important;padding-inline:0 !important}
.sx-master .sxm-cta .sxm-wrap{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:40px;align-items:center}
.sx-master .sxm-cta h2{color:#fff !important;margin:0 0 10px !important}
.sx-master .sxm-cta p{color:#D6E0F5 !important;margin:0 !important}
.sx-master .sxm-cta .sxm-btns{justify-content:flex-end;margin-top:0}

/* responsive */
@media (max-width:1199px){
  .sx-master .sxm-grid-5,.sx-master .sxm-grid-6{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sx-master .sxm-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sx-master .sxm-chain{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:991px){
  .sx-master .sxm{padding-block:64px !important}
  .sx-master .sxm-hero .sxm-wrap,.sx-master .sxm-hero.even .sxm-wrap{grid-template-columns:1fr;gap:36px}
  .sx-master .sxm-split,.sx-master .sxm-split.s5-7,.sx-master .sxm-split.s7-5,.sx-master .sxm-split.s6-6{grid-template-columns:1fr;gap:28px}
  .sx-master .sxm-split .sxm-sticky{position:static}
  .sx-master .sxm-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sx-master .sxm-cta .sxm-wrap{grid-template-columns:1fr}
  .sx-master .sxm-cta .sxm-btns{justify-content:flex-start;margin-top:20px}
}
@media (max-width:640px){
  .sx-master .sxm{padding-block:52px !important}
  .sx-master .sxm-hero{padding-block:44px 40px !important}
  .sx-master .sxm-grid-2,.sx-master .sxm-grid-3,.sx-master .sxm-grid-4,.sx-master .sxm-grid-5,.sx-master .sxm-grid-6{grid-template-columns:1fr}
  .sx-master .sxm-chain{grid-template-columns:1fr 1fr}
  .sx-master .sxm-panel.cols-2 ul{columns:1}
  .sx-master .sxm-panel{padding:20px}
  .sx-master .sxm h1{font-size:32px !important}
}

/* buttons on the blue CTA band */
.sx-master .sxm-cta .btn-light{background:#fff !important;color:var(--sx-blue) !important;border-color:#fff !important}
.sx-master .sxm-cta .btn-outline-light{background:transparent !important;color:#fff !important;border:1px solid rgba(255,255,255,.7) !important}
.sx-master .sxm-cta .btn-outline-light:hover{background:rgba(255,255,255,.12) !important}

/* rating master: panel headings that are H2s for SEO but subordinate visually */
.sx-master .sxm-panel .sxm-panel-h2{font-size:19px !important;line-height:1.3 !important;margin:0 0 12px !important}
.sx-master .sxm-hero-aside h2.sxm-aside-cap{font-size:12px !important;line-height:1.3 !important;margin:0 0 12px !important}
/* lines-of-business logo walls: labels left, logo cards content-height */
.sx-master .sxm-lob h3{font-size:13px !important;letter-spacing:.08em;text-transform:uppercase;color:var(--sx-muted) !important;margin:8px 0 18px !important;text-align:left !important}
.sx-master .sxm-lob p{margin:0 0 8px !important;font-size:15px !important}
.sx-master .sxm-lob .card{padding:10px 12px !important;margin-bottom:22px !important;height:auto !important}
.sx-master .sxm-lob .integrations-container ul{justify-content:flex-start !important;gap:8px}
.sx-master .sxm-lob .integrations-container ul li{min-width:120px;max-width:120px !important;margin:0 !important}

.sx-master .sxm h1.xl{font-size:clamp(36px,3.8vw,54px) !important}
.sx-master .sxm-lob .row{justify-content:flex-start !important}

/* about master */
.sx-master .sxm-cta.solo{padding-block:44px !important}
.sx-master .sxm-cta.solo .sxm-wrap{grid-template-columns:1fr}
.sx-master .sxm-cta.solo .sxm-btns{justify-content:center}
.sx-master .sxm-gridhead{padding:6px 28px 0 0;align-self:start}
.sx-master .sxm-gridhead h2{font-size:clamp(24px,2.1vw,30px) !important}
.sx-master .sxm-tile .sxm-cat a{color:inherit;text-decoration:underline}
.sx-master .sxm-tile h3 + p{margin-bottom:12px !important}
.sx-master .sxm-tile h3 + p:last-child{margin-bottom:0 !important}
.sx-master .sxm-tile.about-quote{padding:26px 28px;gap:10px}
.sx-master .sxm-tile.about-quote .stars{color:#E4A11B;font-size:13px;letter-spacing:2px;margin:0 !important}
.sx-master .sxm-tile.about-quote .quote{font-size:17px !important;line-height:1.5 !important;color:var(--sx-ink) !important;font-weight:500}
.sx-master .sxm-tile.about-quote .attribution{margin-top:auto;font-size:13.5px;color:var(--sx-muted)}
.sx-master .sxm-tile > .bi{font-size:20px;color:var(--sx-blue);margin-bottom:4px}
.sx-master .team-section .team-card .bg-light{background:var(--sx-white) !important;border:1px solid var(--sx-line);box-shadow:none !important}
.sx-master .team-section .team-card h3{font-size:16.5px !important}
.sx-master .team-section .team-card p{max-width:none}
.sx-master .sx-about-story.sxm-panel h2.sxm-panel-h2{text-transform:uppercase;font-size:13px !important;letter-spacing:.09em;color:var(--sx-muted) !important}
.sx-master .sx-about-story.sxm-panel p{font-size:15.5px !important;line-height:1.6 !important;max-width:none}
.sx-master .sx-about-what .sx-arch{max-width:none}

/* premium accounting master */
.sx-master .sxm-chain .sxm-step > .bi{display:block;font-size:20px;color:var(--sx-blue);margin-bottom:6px}
.sx-master .sxm-chain .sxm-step p{font-size:14px !important;line-height:1.5 !important;margin:8px 0 0 !important;max-width:none;color:var(--sx-body) !important}
.sx-master .sxm-panel .sxm-aside-cap{margin-bottom:10px !important}
.sx-master .sxm-panel p{max-width:none}
.sx-master .sxm-panel .list-items li .bi{color:var(--sx-blue);margin-right:6px}
.sx-master .sxm .faq .featured-workflow,.sx-master .faq .featured-workflow{margin-bottom:10px}
.sx-master .sxm-more-link a{font-weight:600}
.sx-master .sx-arch--compact{margin-top:8px}

/* bpo master */
.sx-master .sxm-band .sxm-band-h2{font-size:12px !important;line-height:1.4 !important;margin:0 !important;flex-basis:100%}
.sx-master .sxm-band .item + .item::before{content:"";display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--sx-blue-soft);margin-right:12px;vertical-align:middle}
.sx-master .sxm-band .item b + *{margin-left:0}
.sx-master .sxm-tile h3:only-child{font-size:16px !important;font-weight:600 !important}
.sx-master .sxm-panel.cols-3 ul{columns:3;column-gap:40px}
.sx-master .sxm-lead strong{font-weight:600}

/* aais master */
.sx-master .sxm-hero-aside .sxm-chain{gap:10px}
.sx-master .sxm-hero-aside .sxm-chain .sxm-step{padding:16px 14px 14px}
.sx-master .sxm-hero-aside .sxm-chain .sxm-step h3{font-size:14.5px !important}
.sx-master .sxm-hero-aside .sxm-chain .sxm-step > .bi{font-size:18px}
.sx-master .sxm-tile .fs-14 li{font-size:14.5px !important;list-style:none;padding-left:0}
.sx-master .sxm-tile .fs-14 li .bi{color:var(--sx-blue)}
.sx-master .sxm-note{padding-block:28px !important;font-size:14px;color:var(--sx-muted);border-top:1px solid var(--sx-line)}
.sx-master .sxm-note a{font-weight:600}
@media (max-width:640px){.sx-master .sxm-hero-aside .sxm-chain{grid-template-columns:repeat(2,1fr)}}
.sx-master .sxm-chain.vertical{grid-template-columns:1fr !important;gap:8px}
.sx-master .sxm-chain.vertical .sxm-step{display:flex;align-items:center;gap:14px;padding:14px 18px !important}
.sx-master .sxm-chain.vertical .sxm-step::before{margin:0;min-width:24px}
.sx-master .sxm-chain.vertical .sxm-step > .bi{margin:0;order:3;margin-left:auto}
.sx-master .sxm-chain.vertical .sxm-step h3{font-size:17px !important}
.sx-master .sxm-chain-wrap{padding:16px !important}
.sx-master .sxm-tile .learn-more,.sx-master .sxm-tile .sxm-more{position:static !important;display:inline-block;margin-top:auto;padding-top:10px;font-size:14px;font-weight:600;color:var(--sx-blue);text-decoration:none}

/* compare master */
.sx-master .sxm-grid-1{grid-template-columns:1fr}
.sx-master .sxm-compare{padding:8px 12px}
.sx-master .sxm-compare .table-responsive{overflow-x:auto}
.sx-master .sxm-compare table{margin:0 !important;width:100%}
.sx-master .sxm-compare table th{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--sx-muted);font-weight:700;border-bottom:1px solid var(--sx-line);padding:14px 16px;background:transparent !important}
.sx-master .sxm-compare table th.highlight-column{color:var(--sx-blue)}
.sx-master .sxm-compare table td{padding:14px 16px;font-size:15px;line-height:1.5;border-bottom:1px solid var(--sx-line);vertical-align:top;color:var(--sx-body);background:transparent}
.sx-master .sxm-compare table td:first-child{font-weight:600;color:var(--sx-ink);width:22%}
.sx-master .sxm-compare table td.highlight-column{background:var(--sx-tint-blue) !important;color:var(--sx-ink);font-weight:500}
.sx-master .sxm-compare table tr:last-child td{border-bottom:0}
.sx-master .sxm-note p{max-width:none;font-size:15px !important}
.sx-master .sxm-hero-aside .sxm-grid{gap:12px}
.sx-master.sx-legacy .sxm-compare table td.highlight-column{background:var(--sx-tint-blue) !important;color:var(--sx-ink) !important;border-bottom-color:var(--sx-line) !important}
.sx-master.sx-legacy .sxm-compare table th.highlight-column{background:transparent !important;color:var(--sx-blue) !important;border-bottom-color:var(--sx-line) !important}
.sx-master.sx-legacy .sxm-compare table td.highlight-column :is(strong,b,a){color:var(--sx-ink) !important}
.sx-master.sx-legacy .sxm-compare .table-responsive{border:0;border-radius:0}
.sx-master .sxm-compare table td:first-child{width:24%}
.sx-master .sxm-compare table tbody tr:nth-child(even) td{background:transparent}
.sx-master .sxm-compare table tbody tr:nth-child(even) td.highlight-column{background:var(--sx-tint-blue) !important}
.sx-master .sxm-compare table{table-layout:fixed}
.sx-master .sxm-compare table th:first-child,.sx-master .sxm-compare table td:first-child{width:24% !important}
/* phones: the legacy script hides the table (#desktopTable) and builds the
   accordion in .mobileView, which sits after the panel; do not leave an empty
   bordered panel behind */
@media (max-width:767.98px){
  .sx-master .sxm-compare:not(:has(.mobileView)){display:none}
}

/* agency support master */
.sx-master .sxm-chips .sxm-tile{flex-direction:row;align-items:center;gap:12px;padding:14px 18px}
.sx-master .sxm-chips .sxm-tile h3{font-size:15.5px !important;font-weight:600 !important}
.sx-master .sxm-chips .sxm-tile > .bi{font-size:18px;color:var(--sx-blue);margin:0}
.sx-master .sxm-states li{padding:6px 0;border-bottom:0;font-size:14.5px !important}
.sx-master .sxm-states li a{text-decoration:none}
.sx-master .sxm-reading li{font-size:15px !important}
.sx-master .sxm-tile.about-quote h4.attribution{font-size:13.5px !important;font-weight:600;margin:0 !important;color:var(--sx-muted) !important}
.sx-master .sxm-panel.tint .sxm-tile{background:var(--sx-white)}
.sx-master .states .sxm-states ul{columns:4;column-gap:28px}
.sx-master .states .sxm-states li{padding:4px 0 !important;margin:0 !important;border:0 !important;break-inside:avoid}
.sx-master .states .sxm-states li a{display:inline !important;box-shadow:none !important;padding:0 !important;background:transparent !important;border:0 !important;font-size:14px !important;line-height:1.5;color:var(--sx-blue) !important;text-decoration:none}
.sx-master .states .sxm-states li a:hover{text-decoration:underline}
@media (max-width:640px){.sx-master .states .sxm-states ul{columns:1}}

/* resources master */
.sx-master .sxm-grid.start{align-items:stretch} /* cards in one row share the row height; content stays top-aligned */
.sx-master .sxm-hubs .sxm-tile h3{font-size:17px !important}
.sx-master .sxm-hubs .sxm-tile p{max-width:none}
.sx-master .sxm-hubs .sxm-tile .sxm-small a{font-weight:500}
.sx-master .sxm-guides .sxm-panel li{font-size:14.5px !important;padding:8px 0}
.sx-master .sxm-guides .sxm-panel li a{text-decoration:none}
.sx-master .sxm-guides .sxm-panel li .bi{color:var(--sx-blue);margin-right:4px}
.sx-master .sxm-hero-aside .sxm-chips .sxm-tile{padding:18px 20px;flex-direction:column;align-items:flex-start;gap:8px}
.sx-master .sxm-hero-aside .sxm-chips .sxm-tile > .bi{font-size:22px}
.sx-master .sxm-hero-aside .sxm-chips .sxm-tile h3{font-size:16px !important}
.sx-master .sxm-hero .sxm-btns .btn-outline-light{color:var(--sx-blue) !important;border-color:var(--sx-line) !important;background:#fff !important}
.sx-master .sxm .sxm-panel-h2{font-size:19px !important;line-height:1.3 !important;margin:0 0 12px !important}

/* propagated pages: shared helpers */
.sx-master .sxm-prose p{max-width:72ch}
.sx-master .sxm-prose .sxm-lead{max-width:68ch}
.sx-master .sxm-hero-aside .sx-arch--contextual .sx-arch-grid{gap:10px}
.sx-master .sxm-hero-aside .sx-arch-tile{padding:14px 16px}
.sx-master .sxm-hero-aside .sx-arch-desc{font-size:13.5px}
.sx-master .sxm-keep :is(h2,h3,p){text-align:left !important}
.sx-master .sxm-keep .row.justify-content-center{justify-content:flex-start !important}
.sx-master .sxm-keep .m-auto{margin-left:0 !important}
.sx-master .sxm-keep .col-lg-6,.sx-master .sxm-keep .col-lg-7,.sx-master .sxm-keep .col-lg-8,.sx-master .sxm-keep .col-lg-9{flex:0 0 100%;max-width:100%}
.sx-master .sxm-keep .common-card{background:var(--sx-white);border:1px solid var(--sx-line);border-radius:12px;padding:28px 30px;box-shadow:none}
.sx-master .sxm-band .item[href]{color:var(--sx-blue);text-decoration:none;font-weight:600}
.sx-master .sxm-panel .sxm-panel-h2 + p.sxm-small{margin-top:-4px}
.sx-master .sxm-tile .sxm-more{display:inline-block}
.sx-master .sxm-split .sxm-sticky-head h2{position:sticky;top:110px}
.sx-master .sxm-panel + .sxm-panel,.sx-master .sxm-panel + .sxm-grid,.sx-master .sxm-grid + .sxm-panel,.sx-master p + .sxm-panel,.sx-master .sxm-panel + p{margin-top:18px}
.sx-master .sxm-panel p.mb-1 + ul{margin-top:4px !important}
.sx-master .sxm-grid.start{align-items:stretch} /* cards in one row share the row height; content stays top-aligned */
.sx-master .sxm-reading li{padding:9px 0}
.sx-master .sxm .sxm-btns .btn-outline-light.btn-outline-primary{color:var(--sx-blue) !important;background:#fff !important;border-color:var(--sx-line) !important}
@media (max-width:991px){.sx-master .sxm-split .sxm-sticky-head h2{position:static}}
.sx-master .sxm-grid-3 > .sxm-panel:last-child:nth-child(3n+1),.sx-master .sxm-grid-2 > .sxm-panel:last-child:nth-child(odd):not(:first-child),.sx-master .sxm-grid-4 > .sxm-panel:last-child:nth-child(4n+1){grid-column:1 / -1}
.sx-master .sxm-grid-3 > .sxm-panel:last-child:nth-child(3n+1) ul,.sx-master .sxm-grid-2 > .sxm-panel:last-child:nth-child(odd) ul{columns:2;column-gap:40px}
:is(.sx-master .sxm-hero-aside,.sx-master .sxm-arch-side) .sx-arch--contextual .sx-arch-grid{grid-template-columns:1fr;gap:10px}
:is(.sx-master .sxm-hero-aside,.sx-master .sxm-arch-side) .sx-arch--contextual .sx-arch-grid:has(> :nth-child(4)){grid-template-columns:repeat(2,minmax(0,1fr))}
:is(.sx-master .sxm-hero-aside,.sx-master .sxm-arch-side) .sx-arch--contextual .sx-arch-grid:has(> :nth-child(6)){grid-template-columns:repeat(3,minmax(0,1fr))}
.sx-master .sxm-arch-side .sx-arch-tile{padding:14px 16px}
.sx-master .sxm-arch-side .sx-arch-desc{font-size:13.5px}
.sx-master .sxm-lob h2{text-align:left !important;max-width:none}
.sx-master .sxm-lob p{max-width:72ch}
.sx-master .sxm-cols{columns:2;column-gap:48px}
.sx-master .sxm-cols p{max-width:none;break-inside:avoid}
@media (max-width:991px){.sx-master .sxm-cols{columns:1}.sx-master .sxm-grid-3 > .sxm-panel:last-child:nth-child(3n+1),.sx-master .sxm-grid-4 > .sxm-panel:last-child:nth-child(4n+1){grid-column:auto}}
@media (max-width:640px){.sx-master .sxm-grid-3 > .sxm-panel:last-child:nth-child(3n+1) ul,.sx-master .sxm-grid-2 > .sxm-panel:last-child:nth-child(odd) ul{columns:1}}
.sx-master .sxm-linkgroup + .sxm-linkgroup{margin-top:28px}
.sx-master .sxm-group-label{font-size:12.5px !important;letter-spacing:.08em;text-transform:uppercase;color:var(--sx-muted) !important;margin:0 0 12px !important}
.sx-master .sxm-linktile{padding:16px 18px}
.sx-master .sxm-linktile h3{font-size:15.5px !important;font-weight:600 !important;color:var(--sx-blue) !important}
.sx-master .sxm-linktile:hover{border-color:var(--sx-blue)}
.sx-master .sxm-table-label{font-size:13px !important;letter-spacing:.08em;text-transform:uppercase;color:var(--sx-muted) !important;margin:26px 0 12px !important}
.sx-master .sxm-compare + .sxm-compare{margin-top:24px}
.sx-master .sxm-compare table.table-striped tbody tr:nth-of-type(odd) td{background:transparent !important;--bs-table-accent-bg:transparent}
.sx-master .sxm-compare thead.table-light th{background:transparent !important}
.sx-master .sxm-hero.solo .sxm-wrap{display:block}
.sx-master .sxm-hero.solo .sxm-prose{max-width:820px}
.sx-master--legal .sxm .sxm-prose p{max-width:76ch}
.sx-master--legal .sxm .sxm-split.s7-5{grid-template-columns:minmax(0,8fr) minmax(0,4fr)}
.sx-master--resources .sxm-keep .row > [class*="col-"]{flex:0 0 33.333%;max-width:33.333%}
.sx-master--resources .sxm-keep ul{columns:3;column-gap:32px}
.sx-master--resources .sxm-keep ul li{break-inside:avoid;padding:4px 0}
@media (max-width:767px){.sx-master--resources .sxm-keep .row > [class*="col-"]{flex:0 0 100%;max-width:100%}.sx-master--resources .sxm-keep ul{columns:1}}
.sx-master--sitemap .sxm .sxm-split.s7-5{grid-template-columns:1fr}
.sx-master--sitemap .sxm-prose .sxm-panel > ul{columns:3;column-gap:40px;list-style:none;padding:0 !important;margin:0 !important;max-width:none}
.sx-master--sitemap .sxm-prose .sxm-panel > ul > li{break-inside:avoid;padding:6px 0;font-weight:600}
.sx-master--sitemap .sxm-prose ul ul{list-style:none;padding:4px 0 4px 14px !important;margin:0 !important}
.sx-master--sitemap .sxm-prose ul ul li{font-weight:400;padding:3px 0;font-size:14.5px}
.sx-master--sitemap .sxm-prose a{text-decoration:none}
@media (max-width:767px){.sx-master--sitemap .sxm-prose .sxm-panel > ul{columns:1}}
.sx-master--sitemap .sxm-prose .sxm-panel{border:0;padding:0;background:transparent}
.sx-master--sitemap .sxm-prose .sxm-panel + .sxm-panel{margin-top:28px;padding-top:28px;border-top:1px solid var(--sx-line)}
.sx-master--sitemap .sxm-prose .sxm-panel li{border-bottom:0 !important}
.sx-master .sxm-contact{padding-block:72px !important}
.sx-master .sxm-contact .row{--bs-gutter-x:64px}
.sx-master .sxm-contact h1{font-size:clamp(32px,3.1vw,44px);line-height:1.08;letter-spacing:-.02em;margin:0 0 20px}
.sx-master .sxm-contact .contact-form{border-radius:12px;box-shadow:none !important;border:1px solid var(--sx-line)}
@media (max-width:991px){.sx-master .sxm-contact .row{--bs-gutter-x:24px}}
.sx-master .sxm-cta.alt{background:var(--sx-tint);border-block:1px solid var(--sx-line);padding-block:56px !important}
.sx-master .sxm-cta.alt h2{color:var(--sx-ink) !important}
.sx-master .sxm-cta.alt p{color:var(--sx-body) !important}
.sx-master .sxm-grid-5 > .sxm-tile{padding:18px 20px}

/* glossary term filter */
.sx-master .sxm-filter{margin-bottom:var(--sx-5)}
.sx-master .sxm-filter input{max-width:420px}

/* architecture band: a contextual architecture shown full width under a hero, one row of tiles */
.sx-master .sxm-arch-band h2.sxm-band-cap{font-size:12px !important;line-height:1.3 !important;letter-spacing:.12em;text-transform:uppercase;color:var(--sx-blue) !important;margin:0 0 14px !important}
.sx-master .sxm-arch-band .sx-arch--contextual .sx-arch-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.sx-master .sxm-arch-band .sx-arch--contextual .sx-arch-tile.lead{grid-column:auto}
@media (max-width:991px){.sx-master .sxm-arch-band .sx-arch--contextual .sx-arch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.sx-master .sxm-arch-band .sx-arch--contextual .sx-arch-grid{grid-template-columns:1fr}}

/* ==========================================================================
   POLISH LAYER (final pass) on the master vocabulary
   ========================================================================== */
/* tiles and panels: hairline shadow at rest; linked tiles lift on hover */
.sx-master .sxm-tile,.sx-master .sxm-panel{box-shadow:0 1px 2px rgba(16,26,49,.03);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.sx-master a.sxm-tile:hover,.sx-master .sxm-tile:has(> a:only-child):hover,.sx-master .sxm-linktile:hover{
  transform:translateY(-2px);box-shadow:0 14px 30px -18px rgba(16,26,49,.32),0 1px 2px rgba(16,26,49,.04);border-color:var(--sx-blue-soft);
}
.sx-master .sxm-tile:not(a):hover{border-color:var(--sx-blue-pale)}
/* white section after white section: a soft rule */
.sx-master .sxm.ground-white + .sxm.ground-white{border-top:1px solid var(--sx-line-soft)}
/* the closing CTA becomes a contained panel on a white canvas: the band no
   longer runs edge to edge, which gives the page a deliberate ending before
   the disclosure and the footer */
.sx-master .sxm-cta{background:var(--sx-white);padding-block:56px !important}
.sx-master .sxm-cta .sxm-wrap{background:var(--sx-blue);border-radius:16px;padding:48px 56px;box-shadow:0 24px 48px -32px rgba(33,68,151,.55)}
.sx-master .sxm-cta.solo{padding-block:40px !important}
.sx-master .sxm-cta.solo .sxm-wrap{padding:36px 48px}
.sx-master .sxm-cta .btn{transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}
.sx-master .sxm-cta .btn:hover{transform:translateY(-1px)}
@media (max-width:767px){
  .sx-master .sxm-cta{padding-block:32px !important}
  .sx-master .sxm-cta .sxm-wrap{width:auto;margin-inline:20px;padding:32px 24px;border-radius:14px}
  .sx-master .sxm-cta.solo .sxm-wrap{padding:28px 22px}
}
@media (prefers-reduced-motion:reduce){
  .sx-master a.sxm-tile:hover,.sx-master .sxm-linktile:hover,.sx-master .sxm-cta .btn:hover{transform:none}
}
