/* DiviTitan's reading-step / native-proof composition, scoped to these landings. */
.bp-product-journey { --bp-story-top: 110px; --journey-line: #d9dfe5; }
.bp-product-journey .bp-shell { width: min(calc(100% - 80px), 1360px); }
.bp-product-journey h2 { font-size: 42px; line-height: 1.16; font-weight: 600; max-width: 25ch; }
.bp-product-journey .bp-landing-hero { padding-block: 44px 40px; }
.bp-product-journey .bp-product-story-hero h1 { font-size: 68px; line-height: 1.08; max-width: 1000px; margin-bottom: 24px; }
.bp-product-journey .bp-hero-title-line { display: block; }
.bp-product-journey .bp-hero-title-word { animation: none; }
.bp-product-journey .bp-hero-motion__sentence { font-size: 28px; }
.bp-product-journey .bp-landing-lead { max-width: 650px; }
.bp-product-journey .bp-hero-facts { max-width: 900px; }
.bp-chapter { --chapter-bg: #f7f8fa; background: var(--chapter-bg); color: #1b2027; position: relative; isolation: isolate; scroll-margin-top: var(--bp-story-top); overflow-anchor: none; }
.bp-chapter--dark { --chapter-bg: #191d23; --journey-line: #39414d; color: #f4f6f8; }
.bp-chapter__panel { padding-block: 72px; }
.bp-chapter__intro { max-width: 720px; margin-bottom: 40px; }
.bp-chapter__intro .bp-landing-kicker { margin-bottom: 16px; }
.bp-chapter__intro h2 { margin-bottom: 18px; }
.bp-chapter__intro > p:not(.bp-landing-kicker) { font-size: 17px; line-height: 1.7; margin: 0 0 18px; max-width: 55ch; }
.bp-chapter--dark :is(p,.bp-landing-kicker,.bp-text-link) { color: #c0c8d2; }
.bp-chapter--dark h2, .bp-chapter--dark h3 { color: #f4f6f8; }
.bp-chapter__scenes { display: grid; gap: 48px; }
.bp-chapter__scene { display: grid; grid-template-columns: minmax(0,.75fr) minmax(0,1.25fr); gap: 48px; align-items: center; }
.bp-chapter__step { border-top: 1px solid var(--journey-line); padding: 18px 14px; display: grid; grid-template-columns: 24px minmax(0,1fr); gap: 12px; position: relative; transition: background-color 500ms ease, color 500ms ease; }
.bp-chapter__step > span { font-size: 11px; font-weight: 600; padding-top: 4px; color: #707a88; }
.bp-chapter__step h3 { font-size: 17px; line-height: 1.35; margin: 0 0 8px; }
.bp-chapter__step h3 a { color: inherit; text-decoration: none; display: block; }
.bp-chapter__step h3 a:hover { text-decoration: underline; text-underline-offset: 4px; }
.bp-chapter__scene { scroll-margin-top: calc(var(--bp-story-top) + 24px); }
.bp-chapter__step p { font-size: 14px; line-height: 1.6; margin: 0; }
.bp-chapter__step::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 2px; background: var(--bp-product-accent); opacity: 0; transform: scaleY(.5); transition: opacity 500ms ease, transform 500ms ease; }
.bp-chapter__scene.is-current .bp-chapter__step::before { opacity: 1; transform: scaleY(1); }
.bp-chapter__scene.is-current .bp-chapter__step { background: color-mix(in srgb,var(--bp-product-accent) 6%,transparent); }
.bp-chapter--dark .bp-chapter__scene.is-current .bp-chapter__step { background: #ffffff08; }
.bp-chapter--dark .bp-chapter__step::before { background: #d0d9f5; }
.bp-product-context--elementor .bp-chapter--dark .bp-chapter__step::before { background: #f0c4d5; }
.bp-chapter__proof { margin: 0; min-width: 0; display: grid; grid-template-rows: minmax(0,1fr) auto; gap: 18px; }
.bp-chapter__visual { min-height: 0; min-width: 0; display: grid; place-items: center; aspect-ratio: 4 / 3; padding: 20px; background: #e9edf2; border-radius: 6px; overflow: hidden; }
.bp-chapter--dark .bp-chapter__visual { background: #242a33; }
.bp-chapter__visual > img { display: block; width: 100%; height: 100%; min-height: 0; max-height: 100%; object-fit: contain; border-radius: 4px; }
.bp-chapter__proof--control .bp-chapter__visual > img { max-width: 320px; }
.bp-chapter__proof--timing .bp-chapter__visual > img { max-width: 460px; }
.bp-chapter__proof--timing .bp-chapter__visual { aspect-ratio: 4 / 5; }
.bp-chapter__proof--control .bp-chapter__visual { padding: 24px; aspect-ratio: 6 / 5; }
.bp-chapter__proof--page .bp-chapter__visual { padding: 0; }
.bp-chapter__proof figcaption { display: grid; gap: 6px; border-top: 1px solid var(--journey-line); padding-top: 14px; font-size: 13px; line-height: 1.5; }
.bp-chapter__proof figcaption > span { font-size: 11px; color: #6b7481; }
.bp-chapter--dark figcaption > span { color: #aeb9c8; }
.bp-chapter__proof figcaption strong { font-weight: 500; }
.bp-chapter__proof figcaption a { color: inherit; text-underline-offset: 4px; font-weight: 600; }
.bp-chapter__layout { display: block; min-height: 0; width: 100%; height: 100%; overflow: hidden; border-radius: 4px; }
.bp-chapter__layout img { width: 100%; height: 100%; max-height: 600px; object-fit: cover; object-position: top; }
.bp-chapter.is-scroll-chapter { min-height: var(--bp-chapter-height); }
.is-scroll-chapter .bp-chapter__panel { position: sticky; top: var(--bp-story-top); height: calc(100svh - var(--bp-story-top)); padding-block: 32px; display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); column-gap: 48px; align-content: start; }
.is-scroll-chapter .bp-chapter__intro { grid-column: 1; margin-bottom: 20px; }
.is-scroll-chapter .bp-chapter__scenes, .is-scroll-chapter .bp-chapter__scene { display: contents; }
.is-scroll-chapter .bp-chapter__step { grid-column: 1; padding-block: 14px; }
.is-scroll-chapter .bp-chapter__step h3 { margin-bottom: 0; }
.is-scroll-chapter .bp-chapter__step p { display: none; }
.is-scroll-chapter .bp-chapter__scene.is-proof .bp-chapter__step p { display: block; margin-top: 8px; min-height: var(--bp-step-copy-height, 68px); }
.is-scroll-chapter .bp-chapter__proof { position: absolute; right: 0; top: 32px; bottom: 32px; max-height: 650px; width: calc((100% - 48px) * .55); visibility: hidden; pointer-events: none; }
.is-scroll-chapter .bp-chapter__scene.is-proof .bp-chapter__proof { visibility: visible; pointer-events: auto; z-index: 2; }
.is-scroll-chapter .bp-chapter__visual { aspect-ratio: auto; height: 100%; max-height: 560px; }
.is-scroll-chapter .bp-chapter__scene.is-proof .bp-chapter__visual > :is(img,a) { animation: bp-proof-arrive 460ms cubic-bezier(.22,.61,.36,1) both; }
@keyframes bp-proof-arrive { from { opacity: .78; transform: translateY(4px); } to { opacity: 1; transform: none; } }
.bp-product-journey.is-compact-journey .bp-chapter__intro h2 { font-size: 34px; line-height: 1.16; margin-bottom: 14px; }
.bp-product-journey.is-compact-journey .bp-chapter__intro .bp-landing-kicker { margin-bottom: 10px; }
.bp-product-journey.is-compact-journey .bp-chapter__intro > p:not(.bp-landing-kicker) { font-size: 16px; line-height: 1.6; margin-bottom: 12px; }
.bp-product-journey.is-compact-journey .is-scroll-chapter .bp-chapter__panel { padding-block: 24px; }
.bp-product-journey.is-compact-journey .is-scroll-chapter .bp-chapter__proof { top: 24px; bottom: 24px; }
.bp-product-journey.is-compact-journey .is-scroll-chapter .bp-chapter__step { padding-block: 11px; }
.bp-native-coverage { padding: 44px 0 64px; background: #f7f8fa; border-top: 1px solid #e0e4e9; }
.bp-native-coverage__items { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px 44px; }
.bp-native-coverage__items h3 { font-size: 17px; margin: 0 0 8px; }
.bp-native-coverage__items p { font-size: 14px; line-height: 1.6; margin: 0; }
.bp-product-journey .bp-reuse-story { background: #fff; }
.bp-journey-trial { border-top: 1px solid #dce1e7; background: #fff; }
.bp-journey-trial p { max-width: 58ch; font-size: 17px; line-height: 1.7; }
.bp-journey-trial__action { display: grid; justify-items: center; gap: 24px; }
.bp-journey-final { padding-block: 96px; background: #191d23; color: #fff; }
.bp-journey-final h2 { color: #fff; }
.bp-journey-final p { color: #c0c8d2; font-size: 17px; line-height: 1.7; }
.bp-journey-final .bp-text-link, .bp-journey-included a { color: #eef1f6; }
.bp-journey-included { border-left: 1px solid #414855; padding-left: 48px; }
.bp-journey-included > p { font-size: 14px; }
.bp-journey-included ul { margin: 0 0 24px; padding-left: 20px; color: #e2e7ee; line-height: 1.8; font-size: 15px; }
.bp-journey-price { padding-block: 24px; border-block: 1px solid #414855; }
.bp-journey-price > strong { font-size: 36px; color: #fff; font-weight: 600; margin-right: 12px; }
.bp-journey-price > span { display: block; font-size: 12px; }

/* Company identity: four working principles, not another product feature grid. */
.bp-company--foundations .bp-company-hero h1 { max-width: 920px; font-size: 76px; }
.bp-company--foundations .bp-company-hero h1 > span { display: block; }
.bp-company--foundations .bp-landing-lead { max-width: 690px; }
.bp-company--foundations .bp-company-products { background: #f6f7f9; }
.bp-company--foundations .bp-product-introduction { grid-template-columns: minmax(0,.82fr) minmax(0,1.18fr); }
.bp-company--foundations .bp-product-introduction h3 { font-size: 36px; }
.bp-company--foundations .bp-company-foundations { background: #1a1e24; color: #fff; }
.bp-foundations-layout { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: 96px; align-items: start; }
.bp-foundations-intro { position: sticky; top: calc(var(--bp-header) + 56px); }
.bp-company-foundations h2, .bp-company-foundations h3 { color: #f3f5f9; }
.bp-company-foundations p, .bp-company-foundations .bp-landing-kicker { color: #bfc8d4; }
.bp-foundations-intro > p { font-size: 17px; line-height: 1.7; max-width: 48ch; }
.bp-company-foundations .bp-text-link { color: #fff; }
.bp-foundations-list article { padding: 36px 0; border-top: 1px solid #39424f; }
.bp-foundations-list article:first-child { padding-top: 0; border-top: 0; }
.bp-foundations-list article > span { font-size: 12px; color: #a7b8cf; }
.bp-foundations-list h3 { margin: 18px 0 14px; font-size: 28px; }
.bp-foundations-list p { font-size: 16px; line-height: 1.75; max-width: 60ch; }
.bp-foundations-list strong { font-size: 13px; color: #f0f4f8; font-weight: 500; }
.bp-company--foundations .bp-company-demo { background: #fff; }
.bp-company--foundations .bp-company-family p { font-size: 18px; line-height: 1.5; }
@media(max-width:1100px) {
  .bp-product-journey .bp-shell { width: calc(100% - 56px); }
  .bp-foundations-layout { gap: 48px; }
  .bp-chapter__scene { gap: 32px; }
  .bp-product-journey h2 { font-size: 38px; }
}
@media(max-width:800px) {
  .bp-product-journey .bp-product-story-hero h1 { font-size: 48px; }
  .bp-company--foundations .bp-product-introduction, .bp-foundations-layout { grid-template-columns: 1fr; gap: 36px; }
  .bp-foundations-intro { position: static; }
  .bp-company--foundations .bp-company-hero h1 { font-size: 56px; }
  .bp-chapter__scene { grid-template-columns: 1fr; gap: 24px; }
  .bp-chapter__intro { margin-bottom: 32px; }
  .bp-chapter__scenes { gap: 56px; }
  .bp-chapter__step { padding-inline: 12px; }
  .bp-chapter__visual { padding: 16px; }
  .bp-chapter__proof { gap: 14px; }
  .bp-native-coverage__items { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .bp-journey-included { border-left: 0; border-top: 1px solid #414855; padding: 32px 0 0; }
  .bp-journey-trial__action { justify-items: start; }
}
@media(max-width:600px) {
  .bp-product-journey .bp-product-story-hero h1 { font-size: 34px; }
  .bp-product-journey .bp-shell { width: calc(100% - 36px); }
  .bp-product-journey h2 { font-size: 32px; }
  .bp-chapter__panel { padding-block: 52px; }
  .bp-chapter__intro > p:not(.bp-landing-kicker) { font-size: 16px; }
  .bp-chapter__step h3 { font-size: 18px; }
  .bp-chapter__step p { font-size: 15px; }
  .bp-chapter__proof figcaption { font-size: 12px; }
  .bp-chapter__proof figcaption > span { font-size: 10px; }
  .bp-chapter__visual { padding: 10px; }
  .bp-chapter__proof--control .bp-chapter__visual { padding: 20px; aspect-ratio: auto; height: 440px; }
  .bp-native-coverage__items { gap: 24px; }
  .bp-native-coverage__items h3 { font-size: 16px; }
  .bp-native-coverage__items p { font-size: 13px; }
  .bp-product-journey .bp-landing-hero { padding-block: 44px 32px; }
  .bp-product-journey .bp-hero-motion__sentence { font-size: 23px; }
  .bp-company--foundations .bp-company-hero h1 { font-size: 44px; }
  .bp-foundations-list h3 { font-size: 25px; }
  .bp-journey-final { padding-block: 60px; }
}
@media(max-width:360px) {
  .bp-product-journey .bp-product-story-hero h1 { font-size: 29px; }
  .bp-company--foundations .bp-company-hero h1 { font-size: 36px; }
  .bp-product-journey h2 { font-size: 28px; }
}
@media(prefers-reduced-motion:reduce) {
  .bp-chapter__proof, .bp-chapter__step, .bp-chapter__step::before { transition: none; }
  .is-scroll-chapter .bp-chapter__scene.is-proof .bp-chapter__visual > :is(img,a) { animation: none; }
}
