/** Reading-focused illustrated sections on full service and blog nodes. */

html body:is(.page-node-type-service, .page-node-type-blog) #wrapper #main-content {
  --node-reading-width: 68ch;
  --node-prose-size: 1rem;
  --node-art-width: 18rem;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper .service-illustration-row,
html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .editorial-illustration-row {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 1rem;
  box-sizing: border-box;
  width: 100%;
  max-width: calc(var(--node-reading-width) + var(--node-art-width) + 1.5rem);
  min-width: 0;
  margin: 0 0 0.5rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.65;
}

html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .editorial-illustration-row {
  margin-block: 0.75rem 1.5rem;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper :is(.service-illustration-copy, .service-illustration-remainder, .service-illustration-continuation),
html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body :is(.editorial-illustration-copy, .editorial-illustration-remainder) {
  display: block;
  width: 100%;
  max-width: var(--node-reading-width);
  min-width: 0;
  overflow-wrap: break-word;
  word-break: normal;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper .service-illustration-row > .service-lottie,
html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .editorial-illustration-row > .editorial-illustrations--blog {
  flex: none;
  align-self: center;
  box-sizing: border-box;
  width: min(100%, 16rem);
  max-width: 100%;
  min-width: 0;
  margin: 0;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper :is(.service-illustration-copy, .service-illustration-remainder, .service-illustration-continuation) :is(p, li),
html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .field-body :is(p, ul, ol, dl, li, dt, dd):not(:is(.faq-accordion, .faq-list, .faq-section, .faq-accordion *, .faq-list *, .faq-section *, .faq-answer *)) {
  color: #0a2f1c !important;
  -webkit-text-fill-color: #0a2f1c !important;
  font-size: var(--node-prose-size) !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  text-wrap: pretty;
}

/* One article surface replaces repeated paragraph and list-item frames. */
html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body {
  box-sizing: border-box;
  padding: clamp(1rem, 2vw, 1.5rem) !important;
  background: #ffffff !important;
  border: 1px solid #d7e5dc !important;
  border-radius: 16px !important;
  box-shadow: 0 8px 24px rgb(10 47 28 / 5%) !important;
}

html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body > .field-body {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .field-body :is(p, ul, ol, dl, li, dt, dd):not(:is(.faq-accordion, .faq-list, .faq-section, .faq-accordion *, .faq-list *, .faq-section *, .faq-answer *)) {
  box-sizing: border-box;
  max-width: var(--node-reading-width);
  margin: 0 0 0.9rem !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .field-body :is(ul, ol):not(:is(.faq-accordion *, .faq-list *, .faq-section *)) {
  padding-inline-start: 1.4rem !important;
  list-style-position: outside !important;
}

html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .field-body li:not(:is(.faq-accordion *, .faq-list *, .faq-section *)) {
  margin-bottom: 0.5rem !important;
}

html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .field-body dt:not(:is(.faq-accordion *, .faq-list *, .faq-section *)) {
  margin-bottom: 0.3rem !important;
  font-weight: 600 !important;
}

html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .field-body :is(h2, h3, h4):not(:is(.faq-accordion *, .faq-list *, .faq-section *)) {
  display: block !important;
  max-width: 100%;
  margin: 1.5rem 0 0.75rem !important;
  padding: 0 0 0.45rem !important;
  background: transparent !important;
  color: #0a4f2f !important;
  -webkit-text-fill-color: #0a4f2f !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-shadow: none !important;
  font-size: clamp(1.15rem, 1.6vw, 1.35rem) !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  letter-spacing: normal !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  text-wrap: balance;
}

html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .field-body h2:not(:is(.faq-accordion *, .faq-list *, .faq-section *)) {
  border-bottom: 1px solid #d7e5dc !important;
}

html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .field-body :is(h3, h4):not(:is(.faq-accordion *, .faq-list *, .faq-section *)) {
  font-size: 1.08rem !important;
  padding-bottom: 0 !important;
}

html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .field-body > :first-child,
html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .editorial-illustration-copy > :first-child {
  margin-top: 0 !important;
}

html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .field-body :is(h2, h3, h4) * {
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
  background: transparent !important;
}

html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .field-body :is(p, li, dt, dd):not(:is(.faq-accordion *, .faq-list *, .faq-section *)) :is(span, em, cite) {
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
}

html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .field-body :is(p, li, dt, dd):not(:is(.faq-accordion *, .faq-list *, .faq-section *)) :is(strong, b) {
  color: #0a4f2f !important;
  -webkit-text-fill-color: #0a4f2f !important;
  font-weight: 600 !important;
}

html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .field-body :is(p, li, dt, dd):not(:is(.faq-accordion *, .faq-list *, .faq-section *)) a {
  color: #0b5c38 !important;
  -webkit-text-fill-color: #0b5c38 !important;
  text-decoration: underline !important;
  text-underline-offset: 0.15em;
  overflow-wrap: anywhere !important;
}

html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .field-body :is(p, li) code {
  overflow-wrap: anywhere;
}


/* Full articles keep their reading rail separate from service hero and sharing. */
html body.path-node.page-node-type-service #wrapper #main-content .service-node-content,
html body.page-node-type-blog #wrapper #main-content .blog-post-full {
  box-sizing: border-box;
  min-width: 0;
  margin: 1.5rem auto 2.5rem !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.page-node-type-blog #wrapper #main-content .blog-post-full {
  width: calc(100% - 32px) !important;
  max-width: 68rem !important;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper,
html body.path-node.page-node-type-service #wrapper #main-content .service-node-content > .post-content {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper .card {
  container: cyb-illustrated-section / inline-size;
  display: block !important;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  margin: 0 0 1.25rem !important;
  padding: 1.5rem !important;
  border: 1px solid #d7e5dc !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: none !important;
}

html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body {
  container: cyb-illustrated-section / inline-size;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper :is(.main-grid, .highlight-grid, .trust-grid) {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper :is(p, li, .process-step) {
  max-width: var(--node-reading-width);
  color: #0a2f1c !important;
  -webkit-text-fill-color: #0a2f1c !important;
  font-size: var(--node-prose-size) !important;
  line-height: 1.65 !important;
  font-weight: 400 !important;
  text-shadow: none !important;
  overflow-wrap: break-word;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper :is(h1, h2, h3),
html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-header h1 {
  color: #0a4f2f !important;
  -webkit-text-fill-color: #0a4f2f !important;
  text-align: left !important;
  text-shadow: none !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  line-height: 1.25 !important;
  letter-spacing: -0.015em;
  text-wrap: balance;
}

/* Drupal's rendered title span inherits the heading's readable color and size. */
html body.path-node.page-node-type-blog #wrapper #main-content .blog-post-full .post-header h1.post-title * {
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
  background: transparent !important;
  text-shadow: none !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper h1,
html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-header h1 {
  font-size: clamp(1.75rem, 3vw, 2.65rem) !important;
  margin: 0 0 1rem !important;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper h2 {
  font-size: clamp(1.25rem, 2vw, 1.5rem) !important;
  margin: 0 0 0.85rem !important;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper h3 {
  font-size: 1.0625rem !important;
  margin: 1.15rem 0 0.4rem !important;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper .summary-box {
  max-width: 68ch;
  padding: 0 0 1.5rem !important;
  margin: 0 0 1.5rem !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid #d7e5dc !important;
  box-shadow: none !important;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper .process-step {
  display: flex !important;
  align-items: flex-start;
  gap: 0.75rem;
  width: 100% !important;
  padding: 0.5rem 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper .process-step .num {
  flex: 0 0 1.75rem;
  width: 1.75rem !important;
  height: 1.75rem !important;
  margin: 0 !important;
  font-size: 0.875rem !important;
  line-height: 1.75rem !important;
  background: #eaf7ee !important;
  color: #0e6c3e !important;
  -webkit-text-fill-color: #0e6c3e !important;
  box-shadow: none !important;
}

/* The tier describes just the copy paired with this scene. */
html body:is(.page-node-type-service, .page-node-type-blog) #wrapper #main-content .cyb-art--micro { --node-art-desktop: 10rem; --node-art-mobile: 10rem; }
html body:is(.page-node-type-service, .page-node-type-blog) #wrapper #main-content .cyb-art--brief { --node-art-desktop: 12rem; --node-art-mobile: 12rem; }
html body:is(.page-node-type-service, .page-node-type-blog) #wrapper #main-content .cyb-art--compact { --node-art-desktop: 15rem; --node-art-mobile: 14rem; }
html body:is(.page-node-type-service, .page-node-type-blog) #wrapper #main-content .cyb-art--standard { --node-art-desktop: 18rem; --node-art-mobile: 16rem; }

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper .service-illustration-row,
html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .editorial-illustration-row {
  display: flex;
  --node-art-width: var(--node-art-desktop, 18rem);
  gap: 0.85rem;
  max-width: 100%;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper .service-illustration-row > .service-lottie,
html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .editorial-illustration-row > .editorial-illustrations--blog {
  width: min(100%, var(--node-art-mobile, 16rem));
  max-width: var(--node-art-mobile, 16rem);
}

html body:is(.page-node-type-service, .page-node-type-blog) #wrapper #main-content .cyb-illustration-lead > :first-child {
  margin-top: 0 !important;
}
html body:is(.page-node-type-service, .page-node-type-blog) #wrapper #main-content .cyb-illustration-lead > :last-child,
html body:is(.page-node-type-service, .page-node-type-blog) #wrapper #main-content .cyb-illustration-remainder > :last-child {
  margin-bottom: 0 !important;
}

@container cyb-illustrated-section (min-width: 48rem) {
  html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper .service-illustration-row,
  html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .editorial-illustration-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) var(--node-art-width);
    column-gap: 1.5rem;
    row-gap: 0.85rem;
    align-items: start;
  }
  html body:is(.page-node-type-service, .page-node-type-blog) #wrapper #main-content .cyb-illustration-lead { grid-column: 1; grid-row: 1; }
  html body:is(.page-node-type-service, .page-node-type-blog) #wrapper #main-content .cyb-illustration-remainder { grid-column: 1; grid-row: 2; }
  html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper .service-illustration-continuation {
    grid-column: 1 / -1;
    grid-row: 3;
    max-width: 100%;
  }
  html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper .service-illustration-row > .service-lottie,
  html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .editorial-illustration-row > .editorial-illustrations--blog {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: start;
    justify-self: end;
    width: 100%;
    max-width: var(--node-art-desktop, 18rem);
  }
}

@media (min-width: 768px) {
  html body:is(.page-node-type-service, .page-node-type-blog) #wrapper #main-content { --node-prose-size: 1.0625rem; }
}
@media (max-width: 767.98px) {
  html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper .card {
    padding: 1.25rem 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-top: 1px solid #d7e5dc !important;
    border-radius: 0 !important;
  }
  html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-body {
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }
  html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-media,
  html body.page-node-type-blog #wrapper #main-content .blog-post-full .post-header {
    padding: 0 !important;
    margin-inline: 0 !important;
  }
}

/* Reset the legacy green/black main-block frame only around full articles. */
html body.path-node.page-node-type-blog #wrapper #main-content #page-wrapper .block-system-main-block:has(.blog-post-full) {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

@media (max-width: 767.98px) {
  html body.path-node.page-node-type-blog #wrapper #main-content #page-wrapper > .container,
  html body.path-node.page-node-type-blog #wrapper #main-content #page-wrapper :is(.content-layout, .left-content.main-content, .region-content) {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

/* Service components share the pricing rail; only article copy stays narrower. */
html body.path-node.page-node-type-service #wrapper #main-content {
  --service-section-width: min(calc(100vw - 2 * var(--cyb-editorial-gutter, 16px)), 75rem);
}

html body.path-node.page-node-type-service #wrapper #main-content #page-wrapper > .container,
html body.path-node.page-node-type-service #wrapper #main-content #page-wrapper :is(.content-layout, .left-content.main-content, .region-content, .block-system-main-block:has(.service-node-content)),
html body.path-node.page-node-type-service #wrapper #main-content #page-wrapper .block-system-main-block:has(.service-node-content) > .container-wrap,
html body.path-node.page-node-type-service #wrapper #main-content #page-wrapper .block-system-main-block:has(.service-node-content) > .container-wrap > .block-content {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-inline: 0 !important;
  padding-inline: 0 !important;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content,
html body.path-node.page-node-type-service #wrapper #main-content .block-pricing-packages > .container-wrap > .block-content {
  width: var(--service-section-width) !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-inline: auto !important;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content :is(.layout--onecol, .layout--onecol > .layout__region),
html body.path-node.page-node-type-service #wrapper #main-content .block-pricing-packages :is(.nnc-pricing-container, .nnc-tabs, .nnc-tab-content, .nnc-tab-content-container) {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-inline: 0 !important;
  padding-inline: 0 !important;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .block-field-blocknodeservicebody,
html body.path-node.page-node-type-service #wrapper #main-content .service-node-content > .post-content {
  width: min(100%, calc(100vw - 32px)) !important;
  max-width: 68rem !important;
  margin-inline: auto !important;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .block-field-blocknodeservicebody > .container-wrap {
  width: 100% !important;
  max-width: 100% !important;
  padding-inline: 0 !important;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .layout--twocol-section {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 0 1.5rem !important;
  gap: 1rem !important;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .layout--twocol-section > .layout__region {
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-brag {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .block-extra-field-blocknodeservicerrssb,
html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .block-extra-field-blocknodeservicerrssb > .container-wrap,
html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .block-extra-field-blocknodeservicerrssb > .container-wrap > .block-content {
  display: flow-root !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .cyberlytics-share {
  margin: 3rem 0 0 !important;
}

/* Own section spacing here instead of collapsing card margins or heading pulls. */
html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-cards-wrapper .card:last-child {
  margin-bottom: 0 !important;
}

html body.path-node.page-node-type-service #wrapper #main-content .service-node-content {
  margin-bottom: 3rem !important;
}

html body.path-node.page-node-type-service #wrapper #main-content .block-pricing-packages .nnc-pricing-instruction-container {
  margin-top: 1rem !important;
}

html body.path-node.page-node-type-service #wrapper #main-content .block-pricing-packages .nnc-pricing-menu-heading {
  position: static !important;
  margin-top: 0 !important;
}

@media (min-width: 992px) {
  html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .layout--twocol-section {
    gap: 1.25rem !important;
  }

  html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .layout--twocol-section > .layout__region {
    flex: 1 1 0 !important;
  }

  /* A visual lift keeps the first column and the original badge anchor intact. */
  html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-brag {
    position: relative !important;
    top: -1rem !important;
  }
}

@media (max-width: 991.98px) {
  /* The restored badge floats above the image; reclaim its empty flow space. */
  html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-brag {
    margin-top: -4.5rem !important;
  }

  html body.path-node.page-node-type-service #wrapper #main-content .service-brag .cy-comparison-table :is(th, td, p, .cy-badge) {
    word-break: normal !important;
    overflow-wrap: normal !important;
    white-space: normal !important;
  }

  html body.path-node.page-node-type-service #wrapper #main-content .service-brag .cy-comparison-table :is(th, td):nth-child(1) { width: 36% !important; }
  html body.path-node.page-node-type-service #wrapper #main-content .service-brag .cy-comparison-table :is(th, td):nth-child(2) { width: 23% !important; }
  html body.path-node.page-node-type-service #wrapper #main-content .service-brag .cy-comparison-table :is(th, td):nth-child(3) { width: 22% !important; }
  html body.path-node.page-node-type-service #wrapper #main-content .service-brag .cy-comparison-table :is(th, td):nth-child(4) { width: 19% !important; }

  html body.path-node.page-node-type-service #wrapper #main-content .service-brag .cy-comparison-table thead th {
    padding: 0.5rem 0.2rem !important;
    font-size: clamp(0.594rem, 2.6vw, 0.688rem) !important;
    line-height: 1.2 !important;
  }

  html body.path-node.page-node-type-service #wrapper #main-content .service-brag .cy-comparison-table thead th p {
    font-size: inherit !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    line-height: inherit !important;
  }

  html body.path-node.page-node-type-service #wrapper #main-content .service-brag .cy-comparison-table tbody td {
    padding: 0.5rem 0.25rem !important;
  }

  html body.path-node.page-node-type-service #wrapper #main-content .service-brag .cy-comparison-table .cy-feature p {
    padding: 0.375rem !important;
    font-size: clamp(0.75rem, 3.6vw, 0.875rem) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
  }

  html body.path-node.page-node-type-service #wrapper #main-content .service-brag .cy-comparison-table .cy-badge {
    max-width: 100% !important;
    padding: 0.25rem 0.2rem !important;
    font-size: clamp(0.563rem, 2.7vw, 0.688rem) !important;
    line-height: 1.2 !important;
  }
}

@media (max-width: 359.98px) {
  html body.path-node.page-node-type-service #wrapper #main-content .service-brag .cy-comparison-table :is(th, td):nth-child(1) { width: 34% !important; }
  html body.path-node.page-node-type-service #wrapper #main-content .service-brag .cy-comparison-table :is(th, td):nth-child(2) { width: 26% !important; }
  html body.path-node.page-node-type-service #wrapper #main-content .service-brag .cy-comparison-table :is(th, td):nth-child(3) { width: 24% !important; }
  html body.path-node.page-node-type-service #wrapper #main-content .service-brag .cy-comparison-table :is(th, td):nth-child(4) { width: 16% !important; }
}

/* The related panel uses the same inner rail as the full article's Disqus panel. */
html body.path-node.page-node-type-blog #wrapper #main-content #page-wrapper #block-martis-related-articles-blog .related-grid--articles {
  width: calc(100% - 32px) !important;
  max-width: 68rem !important;
  min-width: 0 !important;
  margin-inline: auto !important;
}

/* Full articles retain one outer gutter; headings and metadata remain in flow. */
html body.path-node.page-node-type-blog #wrapper #main-content #page-wrapper > .container {
  box-sizing: border-box !important;
  width: calc(100% - 2 * var(--cyb-editorial-gutter, 16px)) !important;
  max-width: 68rem !important;
  min-width: 0;
  margin-inline: auto !important;
  padding-inline: 0 !important;
}
html body.path-node.page-node-type-blog #wrapper #main-content #page-wrapper :is(.content-layout, .left-content.main-content, .region-content, .block-system-main-block > .container-wrap, .block-system-main-block > .container-wrap > .block-content) {
  box-sizing: border-box;
  margin-inline: 0 !important;
  padding-inline: 0 !important;
  min-width: 0;
}
html body.path-node.page-node-type-blog #wrapper #main-content .blog-post-full {
  width: 100% !important;
}
html body.path-node.page-node-type-blog #wrapper #main-content .blog-post-full .post-header {
  margin: 0 0 1.5rem !important;
  padding: 0 !important;
}
html body.path-node.page-node-type-blog #wrapper #main-content .blog-post-full .post-header .post-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 1rem;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-weight: 400 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #526456 !important;
  -webkit-text-fill-color: #526456 !important;
  font-size: 0.9375rem;
  line-height: 1.5;
}
html body.path-node.page-node-type-blog #wrapper #main-content .blog-post-full .post-header .post-meta :is(.post-meta-item, .field, .field-item, time, span, i) {
  display: inline;
  margin: 0 !important;
  padding: 0 !important;
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-shadow: none !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
}
html body.path-node.page-node-type-blog #wrapper #main-content .blog-post-full .post-header .post-meta a {
  color: #0e6c3e !important;
  -webkit-text-fill-color: #0e6c3e !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  text-decoration: underline;
  text-underline-offset: 0.2em;
  font-size: inherit !important;
  font-weight: 500 !important;
}
html body.path-node.page-node-type-blog #wrapper #main-content .blog-post-full .post-header .post-meta a:focus-visible {
  outline: 3px solid #4fa36f;
  outline-offset: 3px;
}
html body.path-node.page-node-type-blog #wrapper #main-content .blog-post-full .post-media :is(.post-image, img) {
  max-width: 100% !important;
  height: auto !important;
}
html body.path-node.page-node-type-blog #wrapper #main-content .blog-post-full .post-body :is(pre, table) {
  max-width: 100%;
}
html body.path-node.page-node-type-blog #wrapper #main-content .blog-post-full .post-body pre {
  overflow-x: auto;
  white-space: pre;
}
html body.path-node.page-node-type-blog #wrapper #main-content .blog-post-full .post-body .cyb-scroll-region table {
  max-width: none;
}
/* Disabled slider arrows remain within the media rather than extending the page. */
html body.path-node.page-node-type-blog #wrapper #main-content .blog-post-full .flex-direction-nav .flex-prev {
  left: 12px !important;
}
html body.path-node.page-node-type-blog #wrapper #main-content .blog-post-full .flex-direction-nav .flex-next {
  right: 12px !important;
}

/* Genuine comparisons use local scrolling instead of tiny phone labels. */
html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-brag .cyb-scroll-region .cy-comparison-table {
  width: 100% !important;
  min-width: 40rem !important;
  max-width: none !important;
}
html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-brag .cyb-scroll-region .cy-comparison-table :is(th, td) {
  padding: 0.75rem 0.5rem !important;
  font-size: 0.9375rem !important;
  line-height: 1.5 !important;
}
html body.path-node.page-node-type-service #wrapper #main-content .service-node-content .service-brag .cyb-scroll-region .cy-comparison-table :is(th p, .cy-feature p, .cy-badge) {
  font-size: 0.875rem !important;
  line-height: 1.5 !important;
}

/* The promoted lead precedes navigation/media without creating another panel. */
html body.path-node.page-node-type-blog #wrapper #main-content .blog-post-full .blog-editorial-intro.post-body {
  margin: 0 0 1.5rem !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* The full article's team carousel also keeps its controls inside the rail. */
html body.path-node.page-node-type-blog #wrapper #content-wide #block-martis-views-block-team-team-carousel-2 .flex-direction-nav .flex-prev {
  left: 12px !important;
}
html body.path-node.page-node-type-blog #wrapper #content-wide #block-martis-views-block-team-team-carousel-2 .flex-direction-nav .flex-next {
  right: 12px !important;
}
