/* Shared solution story. Native blocks remain editable; styles stay inside this template. */
.bc-story { color: #092333; background: #faf9f5; font-family: var(--tn-font-body, sans-serif); width: 100%; max-width: none; padding: 0; margin: 0; }
.site-main > .bc-story { padding-inline: 0; }
.bc-story .bc-hero .bc-story-breadcrumb { position: absolute; z-index: 3; top: var(--tn-header-height, 7rem); left: 50%; width: min(88%, 1160px); max-width: 1160px; margin: 0; padding: 16px 0 0; color: #c5dce0; transform: translateX(-50%); }
.bc-story *, .bc-story *::before, .bc-story *::after { box-sizing: border-box; }
.bc-story .wp-block-group, .bc-story figure, .bc-story h1, .bc-story h2, .bc-story h3, .bc-story p { margin-block: 0; }
.bc-story .bc-width { width: min(88%, 1160px); max-width: 1160px; margin-inline: auto; }
.bc-story .bc-section { padding-block: clamp(48px, 6vw, 84px); }
.bc-story h1, .bc-story h2, .bc-story h3 { font-family: var(--tn-font-display, serif); font-weight: 400; max-width: none; letter-spacing: -.025em; }
.bc-story h2 { font-size: clamp(34px, 4vw, 52px); line-height: 1.08; }
.bc-story h3 { font-size: clamp(27px, 2.8vw, 35px); line-height: 1.13; }
.bc-story p, .bc-story li { font-size: 16px; line-height: 1.7; }
.bc-story p + p { margin-top: 16px; }
.bc-story .bc-eyebrow { font-family: var(--tn-font-body, sans-serif); font-size: 11px; line-height: 1.6; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; margin-bottom: 18px; }
.bc-story a { text-underline-offset: 4px; }
.bc-story [id] { scroll-margin-top: calc(var(--tn-header-height, 96px) + 24px); }
.bc-story a:focus-visible { outline: 3px solid #1686a2; outline-offset: 5px; }
.bc-story .bc-hero { position: relative; isolation: isolate; overflow: hidden; color: #fff; background: radial-gradient(125% 140% at 80% 24%, #1a5f88 0%, #103a52 42%, #092333 80%); padding-block: calc(var(--tn-header-height, 96px) + 64px) 72px; min-height: 640px; }
.bc-story .bc-hero::after { content: ''; position: absolute; inset: 0; z-index: 1; background: linear-gradient(100deg, #06141de6 0%, #06141dc7 36%, #06141d6b 62%, transparent 90%); pointer-events: none; }
.bc-story .bc-hero__content { position: relative; z-index: 2; }
.bc-story .bc-hero .bc-eyebrow { color: #c9e68f; }
.bc-story .bc-hero__title { font-family: var(--tn-font-body, sans-serif); font-size: 17px; letter-spacing: 0; font-weight: 500; line-height: 1.5; margin-bottom: 18px; }
.bc-story .bc-hero__headline { max-width: none; font-size: clamp(52px, 6.4vw, 82px); line-height: 1; }
.bc-story .bc-hero__headline em { font-weight: 400; color: #badd71; }
.bc-story .bc-lede { max-width: 490px; color: #e1e9eb; margin-top: 24px; font-size: 17px; }
.bc-story .bc-actions { margin-top: 30px; }
.bc-story .wp-block-buttons { display: flex; flex-wrap: wrap; gap: 12px; }
.bc-story .wp-block-button__link { display: inline-flex; justify-content: center; align-items: center; min-height: 48px; padding: 13px 21px; border-radius: 5px; background: #a7d447; color: #092333; border: 1px solid transparent; font-family: var(--tn-font-body, sans-serif); font-size: 14px; font-weight: 600; line-height: 1.4; text-decoration: none; }
.bc-story .wp-block-button__link:hover { background: #c0e47b; }
.bc-story .is-style-outline .wp-block-button__link { background: transparent; color: inherit; border-color: currentColor; }
.bc-story .is-style-outline .wp-block-button__link:hover { background: #ffffff15; }
.bc-story .bc-overview { display: grid; grid-template-columns: 1fr; gap: clamp(30px, 5vw, 68px); align-items: center; }
.bc-story .bc-overview__copy { max-width: 850px; }
.bc-story .bc-overview__copy h2 { margin-bottom: 22px; }
.bc-story .bc-product { padding: 12px; background: #e2edf0; border: 1px solid #cddde0; border-radius: 8px 38px 8px 8px; overflow: hidden; }
.bc-story .bc-product img { display: block; width: 100%; height: auto; border-radius: 3px 26px 3px 3px; }
.bc-story .bc-product figcaption { margin: 0; padding: 13px 5px; color: #4c6267; font-size: 11px; line-height: 1.6; }
.bc-story .bc-capabilities { background: #e9eee8; }
.bc-story .bc-section-head { max-width: 760px; margin-bottom: 30px; }
.bc-story .bc-section-head h2 + p { margin-top: 18px; }
.bc-story .bc-feature-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.bc-story .bc-feature { background: #faf9f5; padding: 28px 24px; border-top: 3px solid #1686a2; border-radius: 0 26px 0 0; }
.bc-story .bc-feature:nth-child(even) { border-top-color: #779c36; border-radius: 0 0 0 26px; }
.bc-story .bc-feature h3 { margin-bottom: 16px; }
.bc-story .bc-feature p { font-size: 14px; color: #385260; }
.bc-story .bc-fit { color: #fff; background: #123b4b; }
.bc-story .bc-fit__grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 60px; align-items: start; }
.bc-story .bc-fit .bc-eyebrow { color: #c9e68f; }
.bc-story .bc-fit h2 + p { margin-top: 22px; color: #d3e0e5; }
.bc-story .bc-fit-list { list-style: none; padding: 0; margin: 0; }
.bc-story .bc-fit-list li { position: relative; padding: 18px 0 18px 30px; border-top: 1px solid #ffffff35; }
.bc-story .bc-fit-list li::before { content: ''; position: absolute; left: 0; top: 29px; width: 9px; height: 9px; background: #badd71; border-radius: 50%; }
.bc-story .bc-proof > h2 { margin-bottom: 28px; }
.bc-story .bc-table { overflow: visible; max-width: 100%; margin-top: 26px; }
.bc-story .bc-table table { display: table; width: 100%; min-width: 0; table-layout: fixed; border-collapse: collapse; font-size: 14px; }
.bc-story .bc-table thead { display: table-header-group; }
.bc-story .bc-table tbody { display: table-row-group; }
.bc-story .bc-table th, .bc-story .bc-table td { width: auto; border: 0; border-bottom: 1px solid #d1dcd9; padding: 20px; text-align: left; vertical-align: top; line-height: 1.65; overflow-wrap: anywhere; white-space: normal; }
.bc-story .bc-table th { background: #123b4b; color: #fff; font-weight: 600; }
.bc-story .bc-table td:last-child { background: #e9f0df; }
.bc-story .bc-table tbody tr:nth-child(even) td:not(:last-child) { background: #eef2f0; }
.bc-story .bc-stories { background: #eeeae1; }
.bc-story .bc-story-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-top: 30px; }
.bc-story .bc-case { background: #faf9f5; padding: clamp(25px, 3.5vw, 44px); border-radius: 4px 40px 4px 4px; border-bottom: 3px solid #1686a2; }
.bc-story .bc-case:nth-child(2) { border-radius: 4px 4px 4px 40px; border-color: #83a83e; }
.bc-story .bc-case h3 { margin-bottom: 18px; }
.bc-story .bc-case .wp-block-buttons { margin-top: 24px; }
.bc-story .bc-integration-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 48px; margin-top: 32px; }
.bc-story .bc-integration { border-top: 1px solid #8eabae; padding-top: 22px; }
.bc-story .bc-integration h3 { margin-bottom: 12px; }
.bc-story .bc-integrations > h3 { margin-top: 32px; margin-bottom: 16px; }
.bc-story .bc-pricing > ul { padding-left: 22px; margin-block: 20px; }
.bc-story .bc-pricing > ul li + li { margin-top: 12px; }
.bc-story .bc-section.bc-width.bc-integrations { width: 100%; max-width: none; padding-inline: max(6%, calc((100% - 1160px) / 2)); background: #eeeae1; }
.bc-story .bc-related > h2, .bc-story .bc-capabilities .bc-width > h2 { margin-bottom: 24px; }
.bc-story .bc-related p { line-height: 2; }
.bc-story .bc-capabilities ul { padding-left: 22px; margin-block: 22px; }
.bc-story .bc-capabilities li + li { margin-top: 12px; }
.bc-story .bc-proof > p { margin-block: 22px; }
.bc-story .bc-industries { background: #e1f0f6; }
.bc-story .bc-industries h2 { margin-bottom: 22px; }
.bc-story .bc-industries p:not(.bc-eyebrow) { max-width: none; line-height: 2; }
.bc-story .bc-industries a, .bc-story .bc-related a { display: inline-block; }
.bc-story .bc-contact { color: #fff; background: #123b4b; }
.bc-story .bc-contact__grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 40px; align-items: center; }
.bc-story .bc-contact h2 + p { margin-top: 20px; color: #d3e0e5; }
.bc-story .bc-contact .bc-eyebrow { color: #c9e68f; }
.bc-story .bc-contact a:not(.wp-block-button__link) { color: #d3ec9c; }
.bc-story .bc-contact .wp-block-buttons { justify-content: flex-start; }
.editor-styles-wrapper .bc-story.wp-block { max-width: 1160px !important; width: calc(100% - 48px) !important; margin-inline: auto; }
.editor-styles-wrapper .bc-story .wp-block { max-width: none; }
.editor-styles-wrapper .bc-story .block-editor-inner-blocks,
.editor-styles-wrapper .bc-story .block-editor-block-list__layout:not(.wp-block) { display: contents; }
.editor-styles-wrapper .bc-story .bc-hero { padding-top: 64px; min-height: 560px; }
.editor-styles-wrapper .bc-story .bc-hero::after { z-index: 1; }
.editor-styles-wrapper .bc-story .bc-hero__content { z-index: 2; }
@media (max-width: 1000px) {
  .bc-story .bc-feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bc-story .bc-hero__headline { max-width: none; }
  .bc-story .bc-hero::after { background: linear-gradient(90deg, #092333 0%, #092333ed 27%, #092333a8 55%, #09233320 100%); }
  .bc-story .bc-fit__grid { gap: 36px; }
}
@media (max-width: 700px) {
  .bc-story .bc-hero .bc-story-breadcrumb { width: 88%; padding-top: 12px; }
  .bc-story .bc-width { width: 88%; }
  .bc-story .bc-hero { padding-block: calc(var(--tn-header-height, 76px) + 64px) 48px; min-height: 0; }
  .bc-story .bc-hero::after { background: linear-gradient(90deg, #092333ed, #092333a8), linear-gradient(0deg, #092333ab, transparent); }
  .bc-story .bc-hero__headline { font-size: clamp(46px, 9vw, 62px); }
  .bc-story .bc-lede { font-size: 16px; }
  .bc-story .bc-overview, .bc-story .bc-fit__grid, .bc-story .bc-story-grid, .bc-story .bc-contact__grid { grid-template-columns: 1fr; gap: 28px; }
  .bc-story .bc-feature { padding: 24px 20px; }
  .bc-story .bc-table th, .bc-story .bc-table td { padding: 13px 9px; font-size: 13px; }
  .bc-story .bc-integration-grid { gap: 24px; }
}
@media (max-width: 440px) {
  .bc-story .bc-feature-grid, .bc-story .bc-integration-grid { grid-template-columns: 1fr; }
  .bc-story .bc-table th, .bc-story .bc-table td { padding: 11px 7px; font-size: 13px; line-height: 1.6; }
}
/* Buyer questions and service links share the established page palette. */
.bc-story .bc-source, .bc-story .bc-secondary-link { margin-top: 18px; font-size: 13px; }
.bc-story .bc-pricing > h3 { margin-top: 34px; margin-bottom: 16px; }
.bc-story .bc-pricing > h2, .bc-story .bc-provider h2 { margin-bottom: 22px; }
.bc-story .bc-provider { background: #e1f0f6; }
.bc-story .bc-provider p:not(.bc-eyebrow) { max-width: 900px; }
.bc-story .bc-faq-item { padding-block: 28px; border-bottom: 1px solid #cddbdc; }
.bc-story .bc-faq-item h3 { margin-bottom: 16px; }
.bc-story .bc-faq-item p { max-width: 900px; }
.bc-story .bc-paths { background: #e9eee8; }
.bc-story .bc-path-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; margin-top: 30px; }
.bc-story .bc-path-grid + p { margin-top: 32px; }
.bc-story .bc-path { padding-top: 22px; border-top: 3px solid #1686a2; }
.bc-story .bc-path:nth-child(2) { border-color: #779c36; }
.bc-story .bc-path h3 { margin-bottom: 16px; }
.bc-story .bc-review-callout { margin-top: 32px; padding: 24px; background: #faf9f5; border-left: 4px solid #779c36; }
@media (max-width: 700px) { .bc-story .bc-path-grid { grid-template-columns: 1fr; } }
/* Compact hero and a visible shortcut to the longer buyer sections. */
.bc-story .bc-hero { min-height: 0; padding-block: calc(var(--tn-header-height, 96px) + 68px) 40px; }
.bc-story .bc-hero__title { font-family: var(--tn-font-display, serif); font-size: clamp(38px, 4.6vw, 60px); font-weight: 400; line-height: 1.08; max-width: none; margin-bottom: 0; }
.bc-story .bc-lede { max-width: 760px; margin-top: 18px; }
.bc-story .bc-hero .bc-actions { margin-top: 22px; }
.editor-styles-wrapper .bc-story .bc-hero { min-height: 0; padding-block: 40px; }
.bc-story .bc-jumpnav { padding: 24px 0; background: #e1f0f6; border-bottom: 1px solid #cddbdc; }
.bc-story .bc-jumpnav .bc-eyebrow, .bc-story .bc-jumpnav .bc-jump-links { width: min(88%, 1160px); max-width: 1160px; margin-inline: auto; }
.bc-story .bc-jumpnav .bc-eyebrow { margin-bottom: 12px; }
.bc-story .bc-jump-links { display: flex; flex-wrap: wrap; gap: 8px 24px; }
.bc-story .bc-jump-links a { display: inline-flex; align-items: center; min-height: 36px; font-size: 14px; font-weight: 600; }
.bc-story .bc-section { padding-block: clamp(36px, 4.5vw, 60px); }
.bc-story .bc-faq { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 36px; }
.bc-story .bc-faq > .bc-eyebrow, .bc-story .bc-faq > h2 { grid-column: 1 / -1; }
@media (max-width: 700px) {
 .bc-story .bc-faq { grid-template-columns: 1fr; }
 .bc-story .bc-hero { padding-bottom: 32px; }
 .bc-story .bc-jump-links { gap: 4px 20px; }
}

.bc-story .bc-integrations > p[id='solution-related'] { margin-top: 28px; }
