/* Internal presentation flow. Outer Squarespace grid/section placement is owned
   by design-canon.css. Content, heading levels and interaction identities stay. */
html[data-match-design="v1"] #siteWrapper main {
  --match-prose-space: 16px;
  --match-flow-panel-inset: 32px;
}

/* Owner-requested removal of decorative labels is a visibility change. The
   original text remains in HTML; functional labels and links are not hidden. */
html[data-match-design="v1"] #siteWrapper main :is(
  div.mps-pill,
  #mp-pill-center,
  #mp-services-page .mp-meta:has(> .mp-tag),
  .mps-standalone-pill,
  .mp-eyebrow,
  .mps-team__eyebrow,
  .mps-locations__eyebrow,
  .mp-contact-kicker,
  .mps-head > .mps-kicker,
  .mp-intro > .mps-kicker,
  #mp-services-page .mp-hero > .mp-kicker,
  #mp-services-page .mp-location-copy > .mp-kicker,
  #mp-location-dark .mp-location-copy > .mp-kicker
) {
  display: none !important;
}

/* Mini-navigation remains navigation, with the ornamental pill removed. This
   deliberately excludes comparison badges, package tabs and price ribbons. */
html[data-match-design="v1"] #siteWrapper main :is(a.mps-pill--link, #mp-services-page .mp-quicklinks a.mp-pill):not([data-match-cta-kind]),
html[data-match-design="v1"] #siteWrapper main :is(a.mps-pill--link, #mp-services-page .mp-quicklinks a.mp-pill):not([data-match-cta-kind]):is(:hover,:focus,:visited) {
  background: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  min-height: 0 !important;
  margin-block: 0 !important;
  text-decoration: none !important;
  transform: none !important;
}
html[data-match-design="v1"] #siteWrapper main :is(a.mps-pill--link, #mp-services-page .mp-quicklinks a.mp-pill):not([data-match-cta-kind])::before,
html[data-match-design="v1"] #siteWrapper main :is(a.mps-pill--link, #mp-services-page .mp-quicklinks a.mp-pill):not([data-match-cta-kind])::after {
  display: none !important;
}

/* Catalogue section navigation keeps its plain appearance and a usable target. */
html[data-match-design="v1"] #siteWrapper main #mp-services-page .mp-quicklinks a.mp-pill:not([data-match-cta-kind]),
html[data-match-design="v1"] #siteWrapper main #mp-services-page .mp-quicklinks a.mp-pill:not([data-match-cta-kind]):is(:hover,:focus,:visited) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: var(--match-action-height) !important;
  padding: 12px 16px !important;
  text-decoration: underline !important;
  text-underline-offset: .22em;
}

/* Source-width hero cells share the same center as the existing action row.
   The build validates equal tracks before providing these measurements. Font
   sizes, line heights, row rhythm and photographic backgrounds remain intact. */
@media (min-width: 768px) {
  html[data-match-design="v1"] #siteWrapper main [data-match-hero-grid] > [data-match-hero-item] {
    --match-hero-span: var(--match-hero-span-desktop);
    --match-hero-tracks: var(--match-hero-tracks-desktop);
    --match-hero-gap: var(--match-hero-gap-desktop);
  }
}
@media (max-width: 767px) {
  html[data-match-design="v1"] #siteWrapper main [data-match-hero-grid] > [data-match-hero-item] {
    --match-hero-span: var(--match-hero-span-mobile);
    --match-hero-tracks: var(--match-hero-tracks-mobile);
    --match-hero-gap: var(--match-hero-gap-mobile);
  }
}
html[data-match-design="v1"] #siteWrapper main [data-match-hero-grid] > [data-match-hero-item] {
  grid-column: 2 / -2 !important;
  justify-self: center;
  width: calc((100% + var(--match-hero-gap)) * var(--match-hero-span) / var(--match-hero-tracks) - var(--match-hero-gap)) !important;
  min-width: 0;
}
html[data-match-design="v1"] #siteWrapper main [data-match-hero-item="text"] .sqs-html-content > :is(h1,p),
html[data-match-design="v1"] #siteWrapper main [data-match-hero-item="card-intro"] #mp-about-glass .mp-about-copy > p {
  text-align: center !important;
}

/* Photo heroes are text over the original image, never framed cards. Keep
   authored copy/headings and source cell widths; unwrap only their visual
   shells. The marker excludes ordinary cards elsewhere on the page. */
html[data-match-design="v1"] #siteWrapper main [data-match-hero-item="card-intro"] #mp-about-glass :is(.mp-about-shell,.mp-side-card) {
  background: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: visible !important;
}
html[data-match-design="v1"] #siteWrapper main [data-match-hero-item="card-intro"] #mp-about-glass :is(.mp-about-shell,.mp-side-card)::before,
html[data-match-design="v1"] #siteWrapper main [data-match-hero-item="card-intro"] #mp-about-glass :is(.mp-about-shell,.mp-side-card)::after,
html[data-match-design="v1"] #siteWrapper main [data-match-hero-item="card-intro"] #mp-about-glass .mp-divider {
  display: none !important;
}
html[data-match-design="v1"] #siteWrapper main [data-match-hero-item="card-intro"] #mp-about-glass :is(.mp-about-shell,.mp-about-inner,.mp-side-stack,.mp-about-copy,.mp-side-card) {
  display: flex !important;
  flex-direction: column !important;
  gap: var(--match-block-space) !important;
  text-align: center !important;
}
html[data-match-design="v1"] #siteWrapper main [data-match-hero-item="card-intro"] #mp-about-glass .mp-about-copy {
  gap: var(--match-prose-space) !important;
}
html[data-match-design="v1"] #siteWrapper main [data-match-hero-item="card-intro"] #mp-about-glass .mp-side-card {
  gap: 8px !important;
}
html[data-match-design="v1"] #siteWrapper main [data-match-hero-item="card-intro"] #mp-about-glass .mp-side-left {
  gap: 0 !important;
}
html[data-match-design="v1"] #siteWrapper main [data-match-hero-item="card-intro"] #mp-about-glass :is(.mp-about-copy > p,.mp-side-title,.mp-side-text) {
  margin: 0 !important;
  max-width: none !important;
}
html[data-match-design="v1"] #siteWrapper main [data-match-hero-item="card-intro"] #mp-about-glass .mp-side-label {
  margin: 0 0 6px !important;
}

/* Bespoke sales introductions retain their column geometry and form slots. */
html[data-match-design="v1"] #siteWrapper main #mp-remote-hero .mp-layout > div:first-child > :is(h1,.mp-copy),
html[data-match-design="v1"] #siteWrapper main :is(#mp-pricing-page,#mp-services-page) .mp-hero > h1,
html[data-match-design="v1"] #siteWrapper main #mp-pricing-page .mp-hero > .mp-lead,
html[data-match-design="v1"] #siteWrapper main #mp-services-page .mp-hero-grid > div:first-child > .mp-lead {
  text-align: center !important;
  margin-inline: auto !important;
}
html[data-match-design="v1"] #siteWrapper main #mp-pricing-page .mp-hero > .mp-hero-meta,
html[data-match-design="v1"] #siteWrapper main #mp-services-page .mp-hero-grid > div:first-child > .mp-quicklinks {
  justify-content: center !important;
}

/* A shared first-screen floor, with intrinsic growth for long copy/forms.
   svh keeps mobile browser chrome from resizing the hero while scrolling. */
html[data-match-design="v1"] {
  --match-hero-viewport-height: calc(100vh - 24px);
}
@supports (height: 100svh) {
  html[data-match-design="v1"] {
    --match-hero-viewport-height: calc(100svh - 24px);
  }
}

/* Standalone native introductions only. The structural text-only branch
   covers Portfolio/Careers without matching long articles or booking forms. */
html[data-match-design="v1"] #siteWrapper main :is(
  [data-match-hero="background"],
  .page-section:has(#mp-remote-hero),
  .page-section[data-match-flow-section]:first-child:has(.sqs-block-html h1):not(:has(.sqs-block-code,form,h2,h3,img,video,[data-match-native-layout]))
) {
  min-height: var(--match-hero-viewport-height) !important;
  align-items: center !important;
}
html[data-match-design="v1"] #siteWrapper main :is(
  [data-match-hero="background"],
  .page-section:has(#mp-remote-hero),
  .page-section[data-match-flow-section]:first-child:has(.sqs-block-html h1):not(:has(.sqs-block-code,form,h2,h3,img,video,[data-match-native-layout]))
) > .content-wrapper {
  padding-bottom: var(--match-group-space) !important;
}

/* These introductions share a section with later content. Only the bounded
   opening group gets the floor; existing cards, grids and images keep size. */
html[data-match-design="v1"] #siteWrapper main :is(
  #mp-pricing-page .mp-hero,
  #mp-services-page .mp-hero,
  .mps-sales .mp-proof-section--first:has(> .mps-shell > .mp-intro > h1),
  [data-match-profile-section="hero"]
) {
  --match-hero-document-top: calc(var(--match-header-height) + var(--match-group-space) + var(--match-hero-source-inset, 0px));
  box-sizing: border-box;
  min-height: max(0px, calc(var(--match-hero-viewport-height) - var(--match-hero-document-top))) !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
html[data-match-design="v1"] #siteWrapper main #mp-pricing-page .mp-hero {
  --match-hero-source-inset: 48px;
}
html[data-match-design="v1"] #siteWrapper main #mp-services-page .mp-hero {
  --match-hero-source-inset: 28px;
}

/* The original catalogue calls its chip row .mp-meta, not .mp-tags. */
html[data-match-design="v1"] #siteWrapper main #mp-services-page .mp-card > p:not(.mp-eyebrow) {
  margin-bottom: var(--match-block-space) !important;
}
html[data-match-design="v1"] #siteWrapper main .mps-mini-nav {
  border-block: 0 !important;
  box-shadow: none !important;
  background: none !important;
}
html[data-match-design="v1"] #siteWrapper main .mps-mini-nav::before,
html[data-match-design="v1"] #siteWrapper main .mps-mini-nav::after,
html[data-match-design="v1"] #siteWrapper main .mps-mini-nav > .mps-container::before,
html[data-match-design="v1"] #siteWrapper main .mps-mini-nav > .mps-container::after {
  display: none !important;
}

/* One owner per gap: section wrappers separate whole groups; shell padding is
   the retained surface inset, not another section margin. */
html[data-match-design="v1"] #siteWrapper main .mps-sales {
  --mps-section-gap: var(--match-section-space);
  --mps-section-gap-tight: var(--match-section-space);
  --mps-section-gap-loose: var(--match-section-space);
  --mps-section-gap-mobile: var(--match-section-space);
  --mps-heading-gap: var(--match-section-space);
  --mps-heading-gap-mobile: var(--match-section-space);
  --mps-shell-gap: var(--match-block-space);
  --mps-pricing-tabs-gap: var(--match-block-space);
  margin-block: 0 !important;
  padding-block: 0 !important;
}
html[data-match-design="v1"] #siteWrapper main .mps-sales .mps-container {
  margin-block: 0 !important;
  padding-block: 0 !important;
}
html[data-match-design="v1"] #siteWrapper main .mps-sales :is(.mps-section,.mps-proof-section,.mp-proof-section) {
  margin-block: var(--match-section-space) 0 !important;
  padding-block: 0 !important;
}
html[data-match-design="v1"] #siteWrapper main .mps-sales :is(.mps-section--first,.mps-proof-section--first,.mp-proof-section--first),
html[data-match-design="v1"] #siteWrapper main .mps-sales > .mps-container > :is(.mps-section,.mps-proof-section,.mp-proof-section):first-child {
  margin-top: 0 !important;
}
html[data-match-design="v1"] #siteWrapper main .mps-sales .mps-benefits {
  margin-bottom: 0 !important;
}

/* A heading alone is followed by heading-space. A heading plus introduction
   uses heading-space to the prose and block-space to the next content group.
   mp-band is the Team section heading; portrait/stat/card h3 is not selected. */
html[data-match-design="v1"] #siteWrapper main :where(.mps-sales,.mps-locations,.mps-team,.mps-paths,#mp-cta-copy) :is(.mps-head,.mp-band,.mps-final-head,.mps-options-heading,.mps-section-heading,.mps-process-heading,.mps-pricing-heading,.mps-individual-heading,.mps-heading-block,.mps-locations__header,.mps-team__header,.mps-paths__header,.mp-title-wrap) {
  margin-block: 0 var(--match-heading-space) !important;
  padding-block: 0 !important;
}
html[data-match-design="v1"] #siteWrapper main :where(.mps-sales,.mps-locations,.mps-team,.mps-paths,#mp-cta-copy) :is(.mps-head,.mp-band,.mps-final-head,.mps-options-heading,.mps-section-heading,.mps-process-heading,.mps-pricing-heading,.mps-individual-heading,.mps-heading-block,.mps-locations__header,.mps-team__header,.mps-paths__header,.mp-title-wrap):has(> p:not(.mps-kicker)) {
  margin-bottom: var(--match-block-space) !important;
}
html[data-match-design="v1"] #siteWrapper main :where(.mps-sales,.mps-locations,.mps-team,.mps-paths,#mp-cta-copy) :is(.mps-head,.mp-band,.mps-final-head,.mps-options-heading,.mps-section-heading,.mps-process-heading,.mps-pricing-heading,.mps-individual-heading,.mps-heading-block,.mps-locations__header,.mps-team__header,.mps-paths__header,.mp-title-wrap) > :is(h2,h3) {
  margin-block: 0 !important;
}
html[data-match-design="v1"] #siteWrapper main :where(.mps-sales,.mps-locations,.mps-team,.mps-paths,#mp-cta-copy) :is(.mps-head,.mp-band,.mps-final-head,.mps-options-heading,.mps-section-heading,.mps-process-heading,.mps-pricing-heading,.mps-individual-heading,.mps-heading-block,.mps-locations__header,.mps-team__header,.mps-paths__header,.mp-title-wrap) > p:not(.mps-kicker) {
  margin-block: var(--match-heading-space) 0 !important;
}
html[data-match-design="v1"] #siteWrapper main :where(.mps-sales,.mps-locations,.mps-team,.mps-paths,#mp-cta-copy) :is(.mps-head,.mp-band,.mps-final-head,.mps-options-heading,.mps-section-heading,.mps-process-heading,.mps-pricing-heading,.mps-individual-heading,.mps-heading-block,.mps-locations__header,.mps-team__header,.mps-paths__header,.mp-title-wrap) > p + p {
  margin-top: var(--match-prose-space) !important;
}
html[data-match-design="v1"] #siteWrapper main .mps-sales :is(.mps-shell,.mps-card-row,.mps-block) + .mps-head {
  margin-top: var(--match-section-space) !important;
}
html[data-match-design="v1"] #siteWrapper main .mps-sales .mps-shell + .mps-shell,
html[data-match-design="v1"] #siteWrapper main .mps-sales .mps-shell > .mp-person + .mps-shell {
  margin-top: var(--match-block-space) !important;
}
html[data-match-design="v1"] #siteWrapper main .mps-sales :is(.mps-head,.mp-band) + :is(.mps-shell,.mps-card-row,.mps-grid,.mps-block,.mp-person,.mps-meta) {
  margin-top: 0 !important;
}

/* Flex stacks formerly combined gap with their children's own margins. */
html[data-match-design="v1"] #siteWrapper main .mps-sales .mps-stack-shell:not(:has(.mp-rmq,.mp-rmqw,.mp-reviews-more)) {
  gap: 0 !important;
}
html[data-match-design="v1"] #siteWrapper main .mps-sales .mps-stack-shell:not(:has(.mp-rmq,.mp-rmqw,.mp-reviews-more)) > * {
  margin-block: 0 !important;
}
html[data-match-design="v1"] #siteWrapper main .mps-sales .mps-stack-shell:not(:has(.mp-rmq,.mp-rmqw,.mp-reviews-more)) > * + * {
  margin-top: var(--match-block-space) !important;
}
html[data-match-design="v1"] #siteWrapper main .mps-sales .mps-stack-shell > .mps-head:not(:has(> p:not(.mps-kicker))) + * {
  margin-top: var(--match-heading-space) !important;
}
html[data-match-design="v1"] #siteWrapper main .mps-sales .mps-stack-shell > * + .mps-head {
  margin-top: var(--match-section-space) !important;
}

/* Existing titles directly above a comparison table or a standalone section
   shell do not use .mps-head. These are explicit source section headings. */
html[data-match-design="v1"] #siteWrapper main .mps-sales .mps-shell > h2,
html[data-match-design="v1"] #siteWrapper main :is(#mp-pricing-compare,#mp-headshot-types-compare) .mp-wrap > h2.mp-heading {
  margin-block: 0 var(--match-heading-space) !important;
}
html[data-match-design="v1"] #siteWrapper main .mps-sales .mps-shell > h2 + :is(p,ul,ol) {
  margin-top: var(--match-heading-space) !important;
}
html[data-match-design="v1"] #siteWrapper main .mps-sales .mps-stack-shell > h2 + * {
  margin-top: var(--match-heading-space) !important;
}

/* Standard CTA separation. The catalogue's auto-pushed price-card actions and
   all review/gallery controls retain their existing positioning. */
html[data-match-design="v1"] #siteWrapper main .mps-sales :is(.mps-actions,.mps-cta-row,.mp-actions,.mp-cta-row):not(:where(.mps-price-card *, .mp-rmq *, .mp-rmqw *, .mp-reviews-more *)) {
  margin-top: var(--match-block-space) !important;
}
html[data-match-design="v1"] #siteWrapper main .mps-sales .mps-cta:not(:where(.mps-price-card *, .mps-booking-card *, .mps-actions *, .mps-cta-row *, .mp-actions *, .mp-cta-row *, .mp-rmq *, .mp-rmqw *, .mp-reviews-more *)) {
  margin-top: var(--match-block-space) !important;
}
html[data-match-design="v1"] #siteWrapper main .mps-sales :is(.mps-actions,.mps-cta-row,.mp-actions,.mp-cta-row) .mps-cta {
  margin-top: 0 !important;
}

/* Bespoke catalogue sections: vertical panel insets share a token. Section
   margins compensate that inset; horizontal card geometry remains intact. */
html[data-match-design="v1"] #siteWrapper main :is(#mp-services-page,#mp-pricing-page) :is(.mp-hero,.mp-overview) {
  margin-bottom: 0 !important;
}
html[data-match-design="v1"] #siteWrapper main #mp-services-page {
  --match-flow-panel-border: 0px;
}
html[data-match-design="v1"] #siteWrapper main #mp-pricing-page {
  --match-flow-panel-border: 1px;
}
html[data-match-design="v1"] #siteWrapper main :is(#mp-services-page,#mp-pricing-page) .mp-section {
  /* Source catalogue borders are 0px/1px. Compensating both the inset and
     border makes the actual preceding-panel edge -> H2 distance the token. */
  padding-block: var(--match-flow-panel-inset) !important;
  margin-block: calc(var(--match-section-space) - var(--match-flow-panel-inset) - var(--match-flow-panel-border)) 0 !important;
}
html[data-match-design="v1"] #siteWrapper main :is(#mp-services-page,#mp-pricing-page) .mp-cta {
  margin-block: var(--match-section-space) 0 !important;
}
html[data-match-design="v1"] #siteWrapper main #mp-pricing-page .mp-overview {
  margin-top: var(--match-block-space) !important;
}
html[data-match-design="v1"] #siteWrapper main :is(#mp-services-page,#mp-pricing-page) .mp-section-head {
  display: block !important;
  max-width: 860px;
  margin-block: 0 var(--match-heading-space) !important;
  margin-inline: auto !important;
  padding-block: 0 !important;
  text-align: center;
}
html[data-match-design="v1"] #siteWrapper main :is(#mp-services-page,#mp-pricing-page) .mp-section-head:has(> p) {
  margin-bottom: var(--match-block-space) !important;
}
html[data-match-design="v1"] #siteWrapper main :is(#mp-services-page,#mp-pricing-page) .mp-section-head > h2 {
  margin-block: 0 !important;
}
html[data-match-design="v1"] #siteWrapper main :is(#mp-services-page,#mp-pricing-page) .mp-section-head > p {
  max-width: 760px;
  width: auto;
  margin-block: var(--match-heading-space) 0 !important;
  margin-inline: auto !important;
}
html[data-match-design="v1"] #siteWrapper main :is(#mp-services-page,#mp-pricing-page) .mp-cta h2 {
  margin-block: 0 !important;
}
html[data-match-design="v1"] #siteWrapper main :is(#mp-services-page,#mp-pricing-page) .mp-cta h2 + p {
  margin-block: var(--match-heading-space) 0 !important;
}
html[data-match-design="v1"] #siteWrapper main #mp-pricing-page .mp-cta p + :is(.mp-btn,.mp-actions) {
  margin-top: var(--match-block-space) !important;
}

/* Remote's existing form stays in its original DOM position and grid columns.
   Only its vertical placement is anchored to the measured slot in the hero. */
html[data-match-design="v1"] #siteWrapper main [data-match-form-composition="ready"] {
  grid-template-rows: auto !important;
  row-gap: 0 !important;
  min-height: 0 !important;
}
html[data-match-design="v1"] #siteWrapper main [data-match-form-shell="ready"] {
  grid-row: 1 !important;
  height: auto !important;
  align-self: start !important;
}
html[data-match-design="v1"] #siteWrapper main [data-match-form-shell="ready"] > .sqs-block {
  height: auto !important;
}
html[data-match-design="v1"] #siteWrapper main [data-match-form-overlay="ready"] {
  position: absolute !important;
  grid-row: 1 / -1 !important;
  top: var(--match-form-overlay-top, 0px) !important;
  bottom: auto !important;
  width: 100% !important;
  height: auto !important;
  align-self: start !important;
}
html[data-match-design="v1"] #siteWrapper main [data-match-form-overlay="ready"] > .sqs-block {
  height: auto !important;
}
html[data-match-design="v1"] #siteWrapper main [data-match-form-overlay="ready"] .form-wrapper {
  padding-block: 0 !important;
}
html[data-match-design="v1"] #siteWrapper main [data-match-form-overlay="ready"] .match-form-status {
  margin-block: var(--match-prose-space) 0 !important;
}
html[data-match-design="v1"] #siteWrapper main [data-match-form-overlay="ready"] .match-form-status:empty {
  margin-block: 0 !important;
}
html[data-match-design="v1"] #siteWrapper main #mp-remote-hero[data-match-form-anchor="ready"] .mp-form-space {
  min-height: var(--match-form-reserved-height, 0px) !important;
}
html[data-match-design="v1"] #siteWrapper main #mp-remote-hero[data-match-form-anchor="ready"] .mp-glass-note {
  margin-top: var(--match-block-space) !important;
}
@media (max-width: 680px) {
  html[data-match-design="v1"] #siteWrapper main {
    --match-flow-panel-inset: 24px;
  }
}

/* Article flow: only ordinary prose, never table cells, cards or blog listing
   headings. First/last margins are zero because the containing block owns its
   relationship with adjacent blocks in the annotated outer flow. */
html[data-match-design="v1"] #siteWrapper main .blog-item-content .sqs-html-content > h2 {
  margin-block: var(--match-section-space) var(--match-heading-space) !important;
}
html[data-match-design="v1"] #siteWrapper main .blog-item-content .sqs-html-content > :is(h3,h4,h5,h6),
html[data-match-design="v1"] #siteWrapper main .blog-item-content .sqs-html-content > [data-match-heading-style="article-section"] {
  margin-block: var(--match-block-space) var(--match-heading-space) !important;
}
html[data-match-design="v1"] #siteWrapper main .blog-item-content .sqs-html-content > :is(p,ul,ol) {
  margin-block: var(--match-prose-space) !important;
}
html[data-match-design="v1"] #siteWrapper main .blog-item-content .sqs-html-content > :is(h2,h3,h4,h5,h6) + :is(p,ul,ol) {
  margin-top: var(--match-heading-space) !important;
}
html[data-match-design="v1"] #siteWrapper main .blog-item-content .sqs-html-content > h2 + :is(h3,h4) {
  margin-top: var(--match-heading-space) !important;
}
html[data-match-design="v1"] #siteWrapper main .blog-item-content .sqs-html-content > :first-child {
  margin-top: 0 !important;
}
html[data-match-design="v1"] #siteWrapper main .blog-item-content .sqs-html-content > :last-child {
  margin-bottom: 0 !important;
}

/* Reserve a dedicated icon column in the catalogue FAQ; long questions retain
   their full text and native details behavior on narrow screens. */
html[data-match-design="v1"] #siteWrapper main #mp-pricing-page .mp-faq summary {
  padding-right: 48px !important;
}
/* The Team introduction and its statistics are separate content groups. */
html[data-match-design="v1"] #siteWrapper main .mps-sales[data-mps-source="OurTeam_Roster"] .mp-intro + .mps-shell {
  margin-top: var(--match-block-space) !important;
}

/* Keep small-screen hero words intact and service navigation focus visible. */
@media (max-width: 360px) {
  html[data-match-design="v1"] #siteWrapper main [data-match-hero-item="text"] .sqs-html-content > h1 {
    font-size: clamp(44px,14.5vw,52px) !important;
  }
}
html[data-match-design="v1"] #siteWrapper main #mp-services-page .mp-quicklinks a.mp-pill:focus-visible {
  outline: 2px solid var(--match-text) !important;
  outline-offset: 4px !important;
}

/* Owner-requested leadership row: the existing three people share one grid.
   Neutral pair wrappers keep their DOM/read order while the common shell and
   portrait-card materials remain intact. Other roster groups are excluded. */
html[data-match-design="v1"] #block-02796ca8cd8ba37cc044 [data-mps-source="OurTeam_Roster"] .mps-shell--wide:has(> .mp-person--wide + .mps-shell > .mp-person-pair) {
  --match-team-leadership-gap: var(--mps-inner-gap);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--match-team-leadership-gap);
  align-items: stretch;
}
html[data-match-design="v1"] #block-02796ca8cd8ba37cc044 [data-mps-source="OurTeam_Roster"] .mps-shell--wide:has(> .mp-person--wide + .mps-shell > .mp-person-pair) > .mp-band {
  grid-column: 1 / -1;
  margin-bottom: calc(var(--match-block-space) - var(--match-team-leadership-gap)) !important;
}
html[data-match-design="v1"] #block-02796ca8cd8ba37cc044 [data-mps-source="OurTeam_Roster"] .mps-shell--wide:has(> .mp-person--wide + .mps-shell > .mp-person-pair) > .mps-shell,
html[data-match-design="v1"] #block-02796ca8cd8ba37cc044 [data-mps-source="OurTeam_Roster"] .mps-shell--wide:has(> .mp-person--wide + .mps-shell > .mp-person-pair) > .mps-shell > .mp-person-pair {
  display: contents;
}
html[data-match-design="v1"] #block-02796ca8cd8ba37cc044 [data-mps-source="OurTeam_Roster"] .mps-shell--wide:has(> .mp-person--wide + .mps-shell > .mp-person-pair) > .mp-person--wide {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-width: 0;
}
html[data-match-design="v1"] #block-02796ca8cd8ba37cc044 [data-mps-source="OurTeam_Roster"] .mps-shell--wide:has(> .mp-person--wide + .mps-shell > .mp-person-pair) > .mp-person--wide > .mp-person__body {
  padding: 20px 20px 22px;
  flex: 1;
  align-self: stretch;
}
html[data-match-design="v1"] #block-02796ca8cd8ba37cc044 [data-mps-source="OurTeam_Roster"] .mps-shell--wide:has(> .mp-person--wide + .mps-shell > .mp-person-pair) .mp-person__links a[href^="mailto:"] {
  overflow-wrap: anywhere;
}
@media (max-width: 999px) {
  html[data-match-design="v1"] #block-02796ca8cd8ba37cc044 [data-mps-source="OurTeam_Roster"] .mps-shell--wide:has(> .mp-person--wide + .mps-shell > .mp-person-pair) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  html[data-match-design="v1"] #block-02796ca8cd8ba37cc044 [data-mps-source="OurTeam_Roster"] .mps-shell--wide:has(> .mp-person--wide + .mps-shell > .mp-person-pair) {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 680px) {
  html[data-match-design="v1"] #block-02796ca8cd8ba37cc044 [data-mps-source="OurTeam_Roster"] .mps-shell--wide:has(> .mp-person--wide + .mps-shell > .mp-person-pair) {
    --match-team-leadership-gap: var(--mps-inner-gap-mobile);
  }
}
