/* Shared content-card layout, 2026-09-25.
   Decorative counters are not content. Keep statutory lists, dates, metrics,
   forms, navigation, approved logo artwork and section colours untouched. */
:root body main :is(
  .section-no,.team-number,.insight-card-no,
  .service-top>span:not(.content-glyph),
  .scope-card>span:not(.scope-glyph),.process>span:not(.process-glyph),
  .practice-row>span:not(.practice-glyph):not(.insight-card-cta),
  .hero-index a>span:not(.service-glyph),
  .blue-list>div>span,.industry-stack>div>span,
  .outsourcing-card-head>span,.testimonial-capability>span,
  .testimonial-work-steps article>span,.testimonial-icon:not(:has(svg))
){display:none!important}

/* One icon + one heading, not a number row, an icon row and a large spacer. */
:root body main :is(.service-card,.scope-card,.process,.quote-card,.outsourcing-card){
  min-height:0!important;height:auto!important;align-content:start!important;
  padding:24px!important;
}
:root body main :is(.service-card,.scope-card,.process,.quote-card) :is(
  .icon-box,.scope-glyph,.process-glyph,.quote-glyph){
  position:static!important;inset:auto!important;transform:none!important;
  width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;
  max-width:36px!important;max-height:36px!important;flex:0 0 36px!important;
  margin:0!important;padding:0!important;border-radius:10px!important;
  box-shadow:none!important;
}
:root body main :is(.service-card,.scope-card,.process,.quote-card) .ui-icon{
  width:21px!important;height:21px!important;
}
:root body main .service-card{
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;gap:12px!important;
}
:root body main .service-card:has(.service-top .icon-box){grid-template-columns:36px minmax(0,1fr)!important}
:root body main .service-card .service-top{
  grid-column:1!important;grid-row:1!important;min-height:0!important;
  margin:0!important;align-self:start!important;justify-content:flex-start!important;
}
:root body main .service-card .service-top:not(:has(.icon-box)){display:none!important}
:root body main .service-card h3{
  grid-column:1/-1!important;grid-row:1!important;align-self:center!important;
  width:auto!important;margin:0!important;font-size:22px!important;line-height:1.25!important;
}
:root body main .service-card:has(.service-top .icon-box) h3{grid-column:2!important}
:root body main .service-card p{
  grid-column:1/-1!important;grid-row:2!important;min-height:0!important;
  margin:0!important;padding:0!important;line-height:1.65!important;
}
:root body main .service-card>.arrow-link{grid-column:1/-1!important;margin:0!important}

/* Short checklist tiles: readable icon and label on the same row. */
:root body main .scope-card{
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;
  gap:12px!important;align-items:center!important;padding:18px!important;
}
:root body main .scope-card:has(.scope-glyph){grid-template-columns:36px minmax(0,1fr)!important}
:root body main .scope-card>.scope-glyph{grid-column:1!important;grid-row:1!important;order:0!important}
:root body main .scope-card>p{
  grid-column:1/-1!important;grid-row:1!important;order:0!important;
  width:auto!important;margin:0!important;padding:0!important;font-size:14px!important;line-height:1.5!important;
}
:root body main .scope-card:has(.scope-glyph)>p{grid-column:2!important}

/* Mission / vision: icon beside the small label, followed directly by copy. */
:root body main .dual-cards .quote-card{
  display:grid!important;grid-template-columns:36px minmax(0,1fr)!important;
  grid-template-rows:auto auto auto!important;gap:12px!important;align-items:start!important;
}
:root body main .dual-cards .quote-card>small{
  grid-column:1/-1!important;grid-row:1!important;align-self:center!important;
  width:auto!important;margin:0!important;order:0!important;
}
:root body main .dual-cards .quote-card:has(.quote-glyph)>small{grid-column:2!important}
:root body main .dual-cards .quote-card>.quote-glyph{grid-column:1!important;grid-row:1!important;order:0!important}
:root body main .dual-cards .quote-card>h3{
  grid-column:1/-1!important;grid-row:2!important;order:0!important;
  margin:0!important;font-size:26px!important;line-height:1.25!important;
}
:root body main .dual-cards .quote-card>p{grid-column:1/-1!important;grid-row:3!important;order:0!important;margin:0!important;line-height:1.65!important}

/* Industry icons were white on white after inheriting the tile's span rules. */
:root body main .industry-grid>span{
  min-height:64px!important;padding:14px 16px!important;gap:12px!important;
}
:root body main .industry-grid>span>.industry-glyph{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;
  flex:0 0 32px!important;padding:0!important;margin:0!important;border:0!important;
  border-radius:9px!important;background:var(--brand-navy)!important;color:var(--brand-white)!important;
  box-shadow:none!important;
}
:root body main .industry-grid>span>.industry-glyph .ui-icon{
  display:block!important;width:19px!important;height:19px!important;
  color:var(--brand-white)!important;stroke:currentColor!important;
}
:root body main .industry-grid>span>.industry-glyph::before{content:none!important;display:none!important}
:root body main .industry-stack>div{grid-template-columns:minmax(0,1fr)!important;gap:0!important}
:root body main .split .blue-list>div{grid-template-columns:minmax(0,1fr)!important;gap:0!important}

/* Outsourcing cards: retain the meaningful category label, remove the badge. */
:root body main .outsourcing-card-head{min-height:0!important;justify-content:flex-start!important;margin:0 0 10px!important;gap:0!important}
:root body main .outsourcing-card h3{margin:0 0 10px!important;font-size:22px!important;line-height:1.25!important}
:root body main .outsourcing-card p{margin:0!important;line-height:1.65!important}

/* Process and archive cards must not reserve space for hidden number badges. */
:root body main .process{display:grid!important;grid-template-columns:36px minmax(0,1fr)!important;gap:12px!important}
:root body main .process>.process-glyph{grid-column:1!important;grid-row:1!important;order:0!important}
:root body main .process>h3{grid-column:2!important;grid-row:1!important;align-self:center!important;order:0!important;margin:0!important;font-size:22px!important;line-height:1.25!important}
:root body main .process>p{grid-column:1/-1!important;grid-row:2!important;order:0!important;margin:0!important}
:root body main .process:not(:has(.process-glyph)){grid-template-columns:minmax(0,1fr)!important}
:root body main .process:not(:has(.process-glyph))>h3{grid-column:1!important}
:root body main .insight-archive .practice-row.insight-card{min-height:0!important;padding:22px!important}
:root body main .insight-archive .practice-row.insight-card>.practice-glyph{display:none!important}
:root body main .insight-archive .practice-row.insight-card h2{margin:0 0 12px!important}
:root body main .testimonial-work-steps article{min-height:0!important;padding-top:22px!important}
:root body main .testimonial-work-steps article h3{margin-top:0!important}
:root body main .testimonial-capability{min-height:0!important}
:root body main .testimonial-capability h3{margin-top:0!important}

@media(max-width:700px){
  :root body main :is(.service-card,.process,.quote-card,.outsourcing-card){padding:20px!important}
  :root body main .scope-card{padding:16px!important}
  :root body main .dual-cards .quote-card>h3{font-size:24px!important}
  :root body main .service-card h3,:root body main .outsourcing-card h3{font-size:21px!important}
  :root body main .insight-archive .practice-row.insight-card{padding:20px!important}
}
/* Collapse grid tracks previously occupied by decorative badges. */
:root body main .testimonial-work-steps article{grid-template-columns:minmax(0,1fr)!important;gap:0!important}
:root body main .testimonial-work-steps article>div{grid-column:1!important}
:root body main .leadership-grid .team-profile-top{justify-content:flex-start!important;min-height:0!important}
:root body main .practice-row:not(.insight-card){min-height:0!important}
