/* Split hero and studio viewport. Scoped to preserve the exported page. */
.hero-section .container { max-width: 1440px; width: 100%; padding: 0 48px; }
.hero-section-holder { padding: 152px 0 78px; }
.hero-section-container { display: grid; grid-template-columns: 0.9fr 1.1fr; gap: 48px; align-items: center; text-align: left; }
.bn-hero-copy { min-width: 0; }
.bn-hero-eyebrow { display: flex; align-items: center; gap: 9px; color: #9bb8c6; font: 500 11px/1.6 Outfit, sans-serif; letter-spacing: .16em; margin-bottom: 27px; }
.bn-hero-eyebrow span, .bn-viewport-bar i { display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: #6ddfea; }
.hero-section-header-holder { display: block; text-align: left; max-width: none; }
.hero-section-header-holder h1 { font-family: Outfit, sans-serif; font-size: clamp(48px, 5.4vw, 78px); line-height: 1.04; font-weight: 500; letter-spacing: -.045em; margin: 0; color: #eef5f8; }
.hero-section-header-holder h1 span { color: #6ddfea; }
.hero-section-paragraph-holder { max-width: 460px; margin: 26px 0 30px; }
.hero-section-paragraph-holder .paragraph-2 { margin: 0; font-size: 17px; line-height: 1.75; color: #9caebb; }
.hero-section-button-holder { display: flex; align-items: center; flex-wrap: wrap; gap: 22px; }
.bn-hero-primary { display: inline-flex; align-items: center; gap: 22px; padding: 15px 22px; border-radius: 7px; background: #6ddfea; color: #08232b; font-size: 14px; font-weight: 600; text-decoration: none; }
.bn-hero-primary:hover { background: #a0edf2; transform: translateY(-2px); }
.bn-hero-secondary { color: #d0dce3; font-size: 14px; text-decoration: none; }
.bn-hero-secondary span { padding-left: 8px; color: #6ddfea; }
.bn-hero-secondary:hover { color: #6ddfea; }
.bn-hero-details { color: #758b9a; font-size: 12px; margin-top: 22px; }
.bluenode-scene-holder { width: 100%; max-width: 100%; min-width: 0; margin: 0; padding: 0; border: 1px solid #2a3e4c; border-radius: 14px; overflow: hidden; background: radial-gradient(ellipse at 45% 30%, #233746 0%, #111e2b 48%, #0c1520 100%); box-shadow: 0 28px 70px #0005, 0 0 70px #6ddfea08; }
.bn-viewport-bar, .bn-viewport-footer { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 16px 18px; color: #9aacb9; font: 10px/1.4 monospace; letter-spacing: .08em; }
.bn-viewport-bar { border-bottom: 1px solid #ffffff0d; background: #0b16208a; }
.bn-viewport-bar i { margin-right: 7px; }
.bn-viewport-mode { color: #6ddfea; }
.bn-viewport-footer { border-top: 1px solid #ffffff0d; font-size: 9px; color: #78909f; }
.bn-node { background: #111f2e; border-color: #344858; box-shadow: 0 8px 20px #0003; }
.bn-node-row { color: #9aacbf; }
.bn-ship-panel { cursor: default; }
.brand-image { filter: none; }
.bn-hero-primary:focus-visible, .bn-hero-secondary:focus-visible { outline: 2px solid #6ddfea; outline-offset: 5px; }
@media (min-width: 1440px) { .hero-section-holder { padding-top: 175px; padding-bottom: 95px; } }
@media (max-width: 991px) { .hero-section .container { padding: 0 28px; } .hero-section-container { grid-template-columns: 1fr; gap: 42px; } .hero-section-holder { padding-top: 130px; padding-bottom: 48px; } .bn-hero-copy { max-width: 620px; } .hero-section-header-holder h1 { font-size: clamp(48px, 8vw, 72px); } .bluenode-scene-holder { max-width: 700px; } }
@media (max-width: 479px) { .hero-section .container { padding: 0 20px; } .hero-section-holder { padding-top: 115px; } .hero-section-container { gap: 32px; } .hero-section-paragraph-holder .paragraph-2 { font-size: 16px; } .hero-section-button-holder { align-items: flex-start; gap: 20px; } .bn-hero-eyebrow { font-size: 9px; } .bn-viewport-bar { padding: 12px; font-size: 8px; } .bn-viewport-footer { padding: 12px; font-size: 7px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } .bn-query-cursor { animation: none; } .bn-hero-primary { transition: none; } }

/* Quiet teal materials and a compact, coordinated lengthening study. */
.bluenode-scene-holder { border-color: #6ddfea22; background: radial-gradient(ellipse at 45% 32%, #102a3380, #09121c80 68%); box-shadow: 0 22px 60px #0002; }
.bn-viewport-bar, .bn-viewport-footer { padding-top: 12px; padding-bottom: 12px; }
.bn-node, .bn-query-panel, .bn-orch-node { background: #0d1b26c7; border-color: #6ddfea30; box-shadow: 0 6px 20px #0002; }
.bn-node-header, .bn-query-header, .bn-orch-node .bn-node-header { color: #95cbd0; background: #6ddfea08; border-bottom-color: #6ddfea18; }
.bn-query-body, .bn-query-body.confirmed { color: #96ddd9; }
.bn-query-cursor { display: none; }
.bn-node.changing, .bn-orch-node.changing { border-color: #8ff1e4; box-shadow: 0 0 20px #6ddfea26; }
.bn-node.changing .val, .bn-node.changing .val.delta, .bn-node.bn-resolved .val { color: #a1efdf; }
.bn-node.bn-resolved { border-color: #6ddfea60; }
.bn-orch-node .bn-port { border-color: #6ddfea; box-shadow: 0 0 5px #6ddfea40; }
.bn-sync-strip { color: #7ca3ad; }

/* Borderless scene, wide feathered grid, and explicit document approval. */
.bluenode-scene-holder { border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.bn-viewport-bar, .bn-viewport-footer { border: 0; background: transparent; }
.bluenode-scene-holder .bn-node, .bluenode-scene-holder .bn-query-panel, .bluenode-scene-holder .bn-node-header, .bluenode-scene-holder .bn-query-header, .bluenode-scene-holder .bn-ship-dock { border: 0; }
.bn-ship-panel { width: 1000px; }
.bn-ship-canvas-wrap { mask-image: radial-gradient(ellipse at center, #000 35%, transparent 73%); -webkit-mask-image: radial-gradient(ellipse at center, #000 35%, transparent 73%); }
.bluenode-scene-holder .bn-node.changing { background: #174e35d9; box-shadow: 0 0 22px #49e88a30; }
.bluenode-scene-holder .bn-node.bn-resolved { background: #123526c7; }
.bn-node.changing .bn-node-header, .bn-node.changing .val, .bn-node.changing .val.delta, .bn-node.bn-resolved .val { color: #81f4a6; }
.bn-orch-node.bn-locked { opacity: .4; box-shadow: none; }
.bn-document-review { padding: 0 18px 12px; font: 12px/1.5 Outfit, sans-serif; }
.bn-review-heading { color: #c0d2dc; display: flex; justify-content: space-between; gap: 12px; }
.bn-review-heading span { color: #6c8794; font-size: 10px; }
.bn-document-list { list-style: none; margin: 10px 0 14px; padding: 0; display: grid; gap: 5px; }
.bn-document-list li { display: flex; justify-content: space-between; color: #a9bdc8; gap: 12px; }
.bn-document-list li > span:last-child { color: #637e8d; font-size: 11px; }
.bn-document-list .bn-doc-pending { color: #edc665 !important; }
.bn-document-list .bn-doc-synced { color: #77efa0 !important; }
#bn-review-status { display: block; margin-top: 8px; color: #94acb7; font-size: 11px; }

/* Automated delivery panel beside the model; stack only on small screens. */
.hero-section-container { grid-template-columns: .78fr 1.22fr; gap: 32px; }
.bluenode-scene-holder { display: grid; grid-template-columns: minmax(0, 1fr) 182px; align-items: center; gap: 0 14px; }
.bn-viewport-bar, .bn-viewport-footer { grid-column: 1 / -1; }
.bluenode-stage-wrap { min-width: 0; }
.bn-document-review { padding: 18px 14px; border-radius: 12px; background: linear-gradient(155deg, #18303dd9, #0c1b26b3); box-shadow: 0 16px 40px #0002; transition: background .6s, box-shadow .6s; }
.bn-review-heading { display: flex; flex-direction: column; gap: 4px; }
.bn-review-heading .bn-panel-kicker { color: #7aadb5; font-size: 8px; letter-spacing: .16em; }
.bn-review-heading strong { font-size: 13px; font-weight: 500; color: #d9e8ee; }
.bn-review-heading > span:last-child { font-size: 9px; color: #6e8998; }
.bn-document-list { gap: 12px; margin: 22px 0; }
.bn-document-list li { gap: 6px; font-size: 10px; }
.bn-document-list li > span:last-child { font-size: 9px; transition: color .5s; }
.bn-approval-status { display: flex; align-items: center; gap: 7px; padding: 10px 8px; border-radius: 6px; background: #ffffff05; color: #8ba6b3; font-size: 10px; transition: color .5s, background .5s; }
.bn-approval-icon { width: 5px; height: 5px; border-radius: 50%; background: currentColor; flex-shrink: 0; }
.bn-delivery-track { height: 2px; background: #ffffff08; margin-top: 12px; overflow: hidden; }
.bn-delivery-track span { display: block; height: 100%; background: #70e6a1; transform: scaleX(0); transform-origin: left; }
#bn-review-status { min-height: 28px; margin-top: 10px; font-size: 9px; color: #7f9aa8; }
.bn-document-review[data-phase="approving"] .bn-approval-status { color: #edc665; background: #edc6650b; }
.bn-document-review[data-phase="syncing"] .bn-approval-status, .bn-document-review[data-phase="complete"] .bn-approval-status { color: #80e9a6; background: #70e6a10d; }
.bn-document-review[data-phase="complete"] { box-shadow: 0 16px 40px #0002, 0 0 24px #70e6a108; }
.bn-document-review[data-phase="complete"] #bn-review-status { color: #80e9a6; }
@media (max-width: 991px) { .hero-section-container { grid-template-columns: 1fr; } }
@media (max-width: 600px) { .bluenode-scene-holder { grid-template-columns: 1fr; } .bn-document-review { width: 100%; max-width: 300px; justify-self: end; margin: 4px 0 16px; } .bn-document-list li { font-size: 12px; } .bn-document-list li > span:last-child { font-size: 11px; } }

/* A single feathered grid spans the copy, model, nodes and delivery panel. */
.section.hero-section { position: relative; isolation: isolate; }
.bn-document-review { padding: 13px 12px 10px; border-radius: 9px; background: linear-gradient(155deg, #18303db3, #0c1b2680); }
.bn-review-heading { gap: 2px; }
.bn-document-list { margin: 12px 0; gap: 7px; }
.bn-approval-status { padding: 7px 8px; }
.bn-delivery-track { margin-top: 8px; }
#bn-review-status { min-height: 14px; margin-top: 6px; line-height: 1.4; }

/* Restore the original heading and extend the perspective canvas under the graph. */
.bn-ship-canvas-wrap { top: -55px; height: 680px; mask-image: radial-gradient(ellipse at 50% 45%, #000 35%, transparent 76%); -webkit-mask-image: radial-gradient(ellipse at 50% 45%, #000 35%, transparent 76%); pointer-events: none; }
#bn-stage { isolation: isolate; }
.bn-ship-panel { z-index: 0; }
#bn-wires { z-index: 1; }
.bn-node, .bn-query-panel { z-index: 2; }
@media (max-width: 479px) { .hero-section-header-holder h1 { font-size: clamp(36px, 10vw, 48px); } }

/* Closer heading lines, expanded perspective fade, and an email invitation. */
.hero-section-header-holder h1 .bn-heading-connected { display: inline-block; line-height: .94; margin-top: .07em; }
.bn-ship-canvas-wrap { mask-image: radial-gradient(ellipse at 50% 45%, #000 48%, transparent 96%); -webkit-mask-image: radial-gradient(ellipse at 50% 45%, #000 48%, transparent 96%); }

/* Fade only the perspective grid in its shader, keeping vessel surfaces consistent. */
.bn-ship-canvas-wrap { mask-image: none; -webkit-mask-image: none; }

/* Early backing and honest traction immediately after the hero. */
.bn-social-proof { padding: 32px 0 76px; }
.bn-social-proof .container { max-width: 1440px; width: 100%; padding: 0 48px; }
.bn-proof-layout { display: grid; grid-template-columns: 1.1fr .9fr; gap: 70px; align-items: center; padding-top: 34px; border-top: 1px solid #a4dce512; }
.bn-proof-eyebrow { color: #77a4b1; font: 500 10px/1.5 Outfit, sans-serif; letter-spacing: .16em; margin: 0 0 15px; }
.bn-proof-backing h2 { font: 400 clamp(28px, 3vw, 40px)/1.16 Outfit, sans-serif; color: #e3edf1; letter-spacing: -.025em; margin: 0 0 18px; }
.bn-proof-intro { max-width: 490px; color: #97adba; font-size: 15px; line-height: 1.75; margin: 0; }
.bn-proof-partners { display: flex; flex-wrap: wrap; gap: 36px; margin-top: 30px; }
.bn-proof-partner { display: flex; flex-direction: column; align-items: flex-start; gap: 5px; }
.bn-proof-partner img { height: 46px; max-width: 180px; object-fit: contain; object-position: left center; margin-bottom: 9px; }
.bn-proof-partner span { color: #bdcfd8; font-size: 12px; }
.bn-proof-partner small { color: #738d9c; font-size: 11px; }
.bn-traction-card { padding: 28px 30px; border-radius: 14px; background: linear-gradient(130deg, #19303a99, #101c2999); box-shadow: 0 18px 50px #0002; }
.bn-traction-top { display: flex; justify-content: space-between; gap: 12px; align-items: baseline; }
.bn-proof-status { font-size: 10px; color: #9db9b6; background: #73d9bb0c; padding: 4px 8px; border-radius: 20px; }
.bn-pilot-number { display: flex; align-items: center; gap: 18px; color: #8adbd8; font: 300 66px/1.1 Outfit, sans-serif; margin: 10px 0 20px; }
.bn-pilot-number span { max-width: 120px; font: 400 15px/1.5 Outfit, sans-serif; color: #b6cbd2; }
.bn-traction-card h3 { font: 400 21px/1.35 Outfit, sans-serif; color: #e2ecef; margin: 0 0 10px; }
.bn-traction-card p { color: #8fa7b5; font-size: 13px; line-height: 1.75; margin: 0 0 19px; }
.bn-funding-note { color: #a8c7bc; font-size: 12px; margin-bottom: 22px; }
.bn-funding-note span { color: #72cda3; margin-right: 7px; }
.bn-proof-link { color: #95dedd; font-size: 13px; text-decoration: none; }
.bn-proof-link span { margin-left: 14px; }
.bn-proof-link:hover { color: #d0ffff; }
.bn-proof-link:focus-visible { outline: 2px solid #6ddfea; outline-offset: 5px; }
@media (max-width: 991px) { .bn-proof-layout { gap: 32px; } .bn-social-proof .container { padding: 0 28px; } .bn-proof-partners { gap: 24px; } }
@media (max-width: 767px) { .bn-proof-layout { grid-template-columns: 1fr; } .bn-social-proof { padding-bottom: 45px; } .bn-traction-card { max-width: 540px; } }
@media (max-width: 479px) { .bn-social-proof .container { padding: 0 20px; } .bn-traction-card { padding: 22px; } }

.bn-proof-testimonial { margin: 22px 0 24px; padding: 18px 0 0; border-top: 1px solid #a4dce514; }
.bn-proof-testimonial blockquote { margin: 0 0 16px; padding: 0; border: 0; color: #c9dce2; font: 400 16px/1.7 Outfit, sans-serif; }
.bn-proof-testimonial figcaption { display: flex; align-items: center; gap: 10px; color: #91b3c0; font-size: 12px; }
.bn-quote-avatar { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%; background: #6ddfea12; color: #91dbdb; font: 500 12px Outfit, sans-serif; }

/* More breathing room above the hero; a closer transition into backing. */
.hero-section-holder { padding-top: 186px; padding-bottom: 30px; }
.bn-social-proof { padding-top: 10px; padding-bottom: 64px; }
.bn-proof-layout { padding-top: 26px; }
.bn-problem-section { padding: 38px 0 80px; }
.bn-problem-section .container { max-width: 1440px; width: 100%; padding: 0 48px; }
.bn-problem-heading { display: grid; grid-template-columns: 1.15fr .85fr; gap: 64px; align-items: end; margin-bottom: 32px; }
.bn-problem-heading h2 { margin: 0; color: #e3edf1; font: 400 clamp(28px, 3.1vw, 42px)/1.17 Outfit, sans-serif; letter-spacing: -.025em; }
.bn-problem-heading h2 span { color: #82b9c0; }
.bn-problem-intro { margin: 0; max-width: 450px; color: #97adba; font-size: 15px; line-height: 1.75; }
.bn-change-study { display: grid; grid-template-columns: .8fr .45fr 1.75fr; gap: 22px; align-items: center; padding: 26px 30px; background: linear-gradient(120deg, #19303a80, #101c2966); border-radius: 12px; }
.bn-change-source { display: flex; align-items: flex-start; flex-direction: column; gap: 9px; }
.bn-change-label { font: 500 9px/1.5 Outfit, sans-serif; color: #6f9ca9; letter-spacing: .13em; }
.bn-change-source strong { font: 400 20px/1.3 Outfit, sans-serif; color: #cce3e8; }
.bn-change-pill { font-size: 10px; color: #8dd8bb; background: #7bd7b10c; padding: 4px 8px; border-radius: 4px; }
.bn-change-gap { display: flex; align-items: center; justify-content: center; gap: 9px; color: #698b98; font-size: 10px; text-align: center; }
.bn-change-gap > span:first-child, .bn-change-gap > span:last-child { font-size: 20px; color: #487783; }
.bn-change-targets { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.bn-change-targets > div { padding: 15px 12px; background: #0c182680; border-radius: 7px; }
.bn-change-targets > div > span { display: block; color: #afc5d0; font: 400 12px/1.5 Outfit, sans-serif; }
.bn-change-targets small { display: flex; align-items: center; gap: 6px; margin-top: 9px; color: #c6ab72; font-size: 9px; line-height: 1.5; }
.bn-change-targets i { width: 4px; height: 4px; border-radius: 50%; background: #c6ab72; flex-shrink: 0; }
.bn-problem-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: 20px; }
.bn-problem-cards article { padding: 28px; background: linear-gradient(145deg, #15283266, #101c2933); border-radius: 12px; }
.bn-problem-index { color: #6796a5; font: 500 9px/1.5 Outfit, sans-serif; letter-spacing: .12em; }
.bn-problem-cards h3 { font: 400 23px/1.3 Outfit, sans-serif; color: #d4e3e8; letter-spacing: -.015em; margin: 18px 0 14px; }
.bn-problem-cards p { font-size: 13px; line-height: 1.8; color: #8fa7b5; margin: 0; }
.bn-problem-bridge { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding-top: 28px; }
.bn-problem-bridge p { margin: 0; color: #a6c1cc; font: 400 17px/1.5 Outfit, sans-serif; }
.bn-problem-bridge a { color: #91d9db; text-decoration: none; font-size: 13px; }
.bn-problem-bridge a span { margin-left: 12px; }
.bn-problem-bridge a:hover { color: #d0ffff; }
.bn-problem-bridge a:focus-visible { outline: 2px solid #6ddfea; outline-offset: 5px; }
@media (min-width: 1440px) { .hero-section-holder { padding-top: 210px; padding-bottom: 36px; } }
@media (max-width: 991px) { .hero-section-holder { padding-top: 156px; padding-bottom: 26px; } .bn-problem-section .container { padding: 0 28px; } .bn-problem-heading { gap: 30px; } .bn-change-study { grid-template-columns: 1fr; gap: 16px; } .bn-change-source { flex-direction: row; align-items: center; flex-wrap: wrap; gap: 14px; } .bn-change-gap { justify-content: flex-start; } .bn-problem-cards article { padding: 22px; } }
@media (max-width: 767px) { .bn-problem-heading, .bn-problem-cards { grid-template-columns: 1fr; } .bn-problem-heading { gap: 20px; } .bn-problem-bridge { align-items: flex-start; flex-direction: column; gap: 12px; } .bn-social-proof { padding-bottom: 38px; } .bn-problem-section { padding-top: 24px; padding-bottom: 50px; } }
@media (max-width: 479px) { .hero-section-holder { padding-top: 140px; padding-bottom: 20px; } .bn-problem-section .container { padding: 0 20px; } .bn-change-study { padding: 22px; } .bn-change-targets { grid-template-columns: 1fr; gap: 8px; } .bn-change-targets > div { display: flex; justify-content: space-between; align-items: center; gap: 12px; } .bn-change-targets small { margin-top: 0; } }

/* Offset the problem story with a vessel image and a right-hand heading. */
.bn-problem-heading { grid-template-columns: .95fr 1.05fr; gap: 64px; align-items: center; margin-bottom: 32px; }
.bn-problem-photo { position: relative; margin: 0; overflow: hidden; border-radius: 12px; aspect-ratio: 1.35; background: #10202b; }
.bn-problem-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; filter: saturate(.7) brightness(.85); }
.bn-problem-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 50%, #091722e6); pointer-events: none; }
.bn-problem-photo figcaption { position: absolute; bottom: 22px; left: 24px; right: 24px; z-index: 1; color: #c3d8e0; font: 400 12px/1.5 Outfit, sans-serif; }
.bn-problem-heading-copy { justify-self: end; max-width: 540px; }
.bn-problem-heading-copy .bn-problem-intro { margin-top: 24px; }
.bn-problem-detail { margin: 14px 0 0; color: #7795a5; font-size: 14px; line-height: 1.75; max-width: 450px; }
.bn-change-study { grid-template-columns: .8fr 2fr; gap: 24px 40px; }
.bn-handoff-note { grid-column: 1 / -1; padding-top: 18px; border-top: 1px solid #a4dce510; }
.bn-handoff-label { color: #8fa5b0; font: 500 9px/1.5 Outfit, sans-serif; letter-spacing: .12em; }
.bn-handoff-note p { margin: 7px 0 4px; font: 400 17px/1.5 Outfit, sans-serif; color: #c4d6de; }
.bn-handoff-risk { color: #b4a17b; font-size: 12px; line-height: 1.6; }
@media (max-width: 991px) { .bn-problem-heading { gap: 32px; } .bn-problem-photo { aspect-ratio: .95; } .bn-change-study { grid-template-columns: 1fr; } }
@media (max-width: 767px) { .bn-problem-heading { grid-template-columns: 1fr; gap: 26px; } .bn-problem-heading-copy { grid-row: 1; justify-self: start; max-width: none; } .bn-problem-photo { aspect-ratio: 1.65; } }
@media (max-width: 479px) { .bn-problem-photo figcaption { left: 18px; bottom: 16px; } .bn-handoff-note p { font-size: 16px; } }

/* Document review spans the full row without the hull-change column. */
.bn-change-study { grid-template-columns: 1fr; }

.bn-change-study > .bn-handoff-note:only-child { padding-top: 0; border-top: 0; }

/* A single metric strip, followed by a visual release of the manual workload. */
.bn-change-study.bn-metric-study { grid-template-columns: .85fr 1.65fr; gap: 36px; }
.bn-metric-study .bn-handoff-note { grid-column: auto; padding: 0; border: 0; }
.bn-problem-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; margin: 0; }
.bn-problem-metrics > div { display: flex; flex-direction: column-reverse; justify-content: flex-end; gap: 10px; }
.bn-problem-metrics dt { font: 400 11px/1.5 Outfit, sans-serif; color: #8da8b6; max-width: 130px; }
.bn-problem-metrics dd { margin: 0; white-space: nowrap; font: 300 clamp(27px, 3vw, 42px)/1 Outfit, sans-serif; letter-spacing: -.04em; color: #a2d8dc; font-variant-numeric: tabular-nums; }
.bn-problem-metrics dd small { font-size: 14px; letter-spacing: 0; color: #729aa6; margin-left: 4px; }
.bn-metric-bridge { position: relative; isolation: isolate; overflow: hidden; min-height: 145px; padding-top: 60px; padding-bottom: 20px; }
.bn-bridge-copy small { display: block; margin-top: 8px; color: #7897a6; font-size: 12px; }
.bn-metric-bridge > a { position: relative; flex-shrink: 0; }
.bn-falling-numbers { position: absolute; inset: 0; z-index: -1; pointer-events: none; display: flex; justify-content: space-around; }
.bn-falling-numbers span { position: absolute; top: 4px; color: #74b3bf; opacity: 0; font: 300 30px/1 Outfit, sans-serif; font-variant-numeric: tabular-nums; }
.bn-falling-numbers span:nth-child(1) { left: 8%; --bn-drop-rotation: -9deg; }
.bn-falling-numbers span:nth-child(2) { left: 32%; --bn-drop-rotation: 7deg; }
.bn-falling-numbers span:nth-child(3) { left: 57%; --bn-drop-rotation: -6deg; }
.bn-falling-numbers span:nth-child(4) { left: 80%; --bn-drop-rotation: 10deg; }
.bn-drop-visible .bn-falling-numbers span { animation: bn-workload-fall 2.6s cubic-bezier(.32, 0, .7, 1) both; }
.bn-drop-visible .bn-falling-numbers span:nth-child(2) { animation-delay: .18s; }
.bn-drop-visible .bn-falling-numbers span:nth-child(3) { animation-delay: .36s; }
.bn-drop-visible .bn-falling-numbers span:nth-child(4) { animation-delay: .54s; }
@keyframes bn-workload-fall { 0% { transform: translateY(-16px); opacity: 0; } 15%, 32% { transform: translateY(0); opacity: .4; } 100% { transform: translateY(120px) rotate(var(--bn-drop-rotation)); opacity: 0; } }
@media (max-width: 991px) { .bn-change-study.bn-metric-study { grid-template-columns: 1fr; gap: 25px; } .bn-problem-metrics dd { font-size: 38px; } }
@media (max-width: 767px) { .bn-metric-bridge { gap: 16px; } }
@media (max-width: 479px) { .bn-problem-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; } .bn-falling-numbers span { font-size: 23px; } }
@media (prefers-reduced-motion: reduce) { .bn-drop-visible .bn-falling-numbers span { animation: none; opacity: 0; } .bn-metric-bridge { padding-top: 25px; min-height: 110px; } }

/* Heavier, stepped metrics and a visible, replayable transition. */
.bn-change-study.bn-metric-study { grid-template-columns: .72fr 1.78fr; gap: 48px; }
.bn-problem-metrics { width: 100%; max-width: 710px; justify-self: end; align-items: start; }
.bn-problem-metrics > div:nth-child(2) { margin-top: 16px; }
.bn-problem-metrics > div:nth-child(3) { margin-top: 32px; }
.bn-problem-metrics > div:nth-child(4) { margin-top: 48px; }
.bn-problem-metrics dd { font-family: Outfit, sans-serif; font-weight: 500; }
.bn-problem-metrics > div:last-child dd, .bn-problem-metrics > div:last-child dd small { color: #ee747b; }
.bn-falling-numbers { z-index: 0; height: 64px; overflow: hidden; }
.bn-bridge-copy, .bn-metric-bridge > a { position: relative; z-index: 1; }
.bn-falling-numbers span { font-weight: 500; }
.bn-falling-numbers span:last-child { color: #ee747b; }
.bn-drop-visible .bn-falling-numbers span { animation: bn-workload-fall-visible 6s ease-in infinite both; }
.bn-drop-visible .bn-falling-numbers span:nth-child(2) { animation-delay: .3s; }
.bn-drop-visible .bn-falling-numbers span:nth-child(3) { animation-delay: .6s; }
.bn-drop-visible .bn-falling-numbers span:nth-child(4) { animation-delay: .9s; }
@keyframes bn-workload-fall-visible { 0% { opacity: 0; transform: translateY(-14px); } 12%, 35% { opacity: .8; transform: translateY(0); } 65%, 100% { opacity: 0; transform: translateY(78px) rotate(var(--bn-drop-rotation)); } }
@media (max-width: 991px) { .bn-change-study.bn-metric-study { grid-template-columns: 1fr; gap: 24px; } }
@media (max-width: 479px) { .bn-problem-metrics > div:nth-child(3) { margin-top: 0; } .bn-problem-metrics > div:nth-child(4) { margin-top: 16px; } }
@media (prefers-reduced-motion: reduce) { .bn-drop-visible .bn-falling-numbers span { animation: none; opacity: 0; } }

/* Five aligned metrics, with change hours retaining the red emphasis. */
.bn-problem-metrics { grid-template-columns: repeat(5, minmax(0, 1fr)); max-width: none; gap: 18px; }
.bn-problem-metrics > div:nth-child(n) { margin-top: 0; }
.bn-falling-numbers span:nth-child(1) { left: 5%; }
.bn-falling-numbers span:nth-child(2) { left: 24%; }
.bn-falling-numbers span:nth-child(3) { left: 43%; }
.bn-falling-numbers span:nth-child(4) { left: 62%; }
.bn-falling-numbers span:nth-child(5) { left: 81%; --bn-drop-rotation: -8deg; animation-delay: 1.2s; }
@media (max-width: 1199px) and (min-width: 992px) { .bn-change-study.bn-metric-study { grid-template-columns: 1fr; gap: 24px; } }
@media (max-width: 767px) { .bn-problem-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; } }
@media (max-width: 479px) { .bn-problem-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); } .bn-falling-numbers span { font-size: 19px; } }

/* Closely grouped metrics, followed by a clear three-step vision. */
.bn-problem-metrics { gap: 10px; grid-template-columns: repeat(5, max-content); justify-content: end; }
.bn-problem-metrics > div { max-width: 112px; }
.bn-problem-metrics dt { max-width: 108px; }
#Product { padding-top: 55px; padding-bottom: 65px; scroll-margin-top: 100px; }
#Product > .container { max-width: 1440px; width: 100%; padding: 0 48px; }
.bn-pipeline-intro { max-width: 760px; margin: 0 auto; text-align: center; }
.bn-pipeline-intro h2 { margin: 0 0 22px; font: 400 clamp(30px, 3.6vw, 48px)/1.15 Outfit, sans-serif; letter-spacing: -.03em; color: #e0edf1; }
.bn-pipeline-vision { max-width: 660px; margin: 0 auto; color: #95aebb; font-size: 16px; line-height: 1.8; }
.bn-pipeline-three { margin: 22px 0 0; color: #8fd3d7; font: 400 15px/1.5 Outfit, sans-serif; }
#Product .early-access-wrapper { padding-top: 68px; padding-bottom: 0; gap: 90px; }
#Product .early-access-gird { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 70px; width: 100%; align-items: center; }
#Product .early-access-card { min-width: 0; }
#Product .early-access-image-holder { border-radius: 12px; background: #10202c; }
#Product .early-access-background-holder { opacity: .35; }
#Product .early-access-image-container._02 { padding: 38px; }
#Product .early-access-content-holder { gap: 18px; position: relative; }
#Product .early-access-tag-holder { gap: 12px; font: 400 12px/1.5 Outfit, sans-serif; letter-spacing: .04em; color: #84b7c3; }
#Product .bn-step-badge { width: 30px; height: 30px; border-radius: 50%; background: #6ddfea; box-shadow: 0 0 18px #6ddfea20; }
#Product .bn-step-badge span { font: 500 12px Outfit, sans-serif; }
#Product .early-access-title-holder, #Product .early-access-content-holder > p { padding-left: 42px; }
#Product .early-access-title-holder h2 { margin: 0; font: 400 clamp(25px, 2.8vw, 35px)/1.2 Outfit, sans-serif; letter-spacing: -.02em; color: #dce9ee; }
#Product .early-access-content-holder > p { margin: 0; color: #91aab8; font-size: 14px; line-height: 1.8; }
.bn-step-outcome { margin-left: 42px; padding-top: 15px; border-top: 1px solid #9bd4df18; }
.bn-step-outcome > span { font: 500 9px/1.5 Outfit, sans-serif; letter-spacing: .14em; color: #658e9d; }
.bn-step-outcome p { margin: 7px 0 0; color: #acd1d8; font-size: 13px; line-height: 1.6; }
.bn-pipeline-join { margin-left: 42px; color: #92dce0; font-size: 13px; text-decoration: none; }
.bn-pipeline-join span { margin-left: 10px; }
.bn-pipeline-join:hover { color: #d3ffff; }
.bn-pipeline-join:focus-visible { outline: 2px solid #6ddfea; outline-offset: 5px; }
@media (max-width: 991px) { .bn-problem-metrics { justify-content: start; } #Product > .container { padding: 0 28px; } #Product .early-access-gird { gap: 35px; } #Product .early-access-image-container._02 { padding: 22px; } #Product .early-access-wrapper { gap: 64px; } }
@media (max-width: 767px) { .bn-problem-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px 10px; } #Product .early-access-gird { grid-template-columns: 1fr; gap: 28px; } #Product .early-access-content-holder { grid-row: 1; } #Product .early-access-card { max-width: 520px; justify-self: center; } #Product .early-access-wrapper { padding-top: 45px; } }
@media (max-width: 479px) { .bn-problem-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); } #Product > .container { padding: 0 20px; } .bn-pipeline-vision { font-size: 14px; } }

/* Compact pipeline illustrations and a designer-led hero message. */
#Product .early-access-card { width: 76%; max-width: 390px; justify-self: center; }
#Product .early-access-image-container._02 { padding: 25px; }
.bn-pipeline-intro h2 span { color: #8ebcc4; }
.bn-designer-line { margin: 22px 0 0; color: #b3d2db; font: 400 14px/1.6 Outfit, sans-serif; }
.bn-designer-line + .hero-section-paragraph-holder { margin-top: 18px; }
.hero-section-paragraph-holder .bn-creative-line { margin: 16px 0 0; color: #9caebb; font-size: 16px; line-height: 1.7; }
.bn-creative-line strong { color: #c8edf0; font-weight: 600; }
@media (max-width: 991px) { #Product .early-access-card { width: 85%; max-width: 340px; } #Product .early-access-image-container._02 { padding: 20px; } }
@media (max-width: 767px) { #Product .early-access-card { width: 80%; max-width: 360px; } }

/* Give each pipeline step a distinct position and concrete input/output. */
#Product .early-access-gird-holder:nth-child(1) .early-access-card { justify-self: start; margin-left: 7%; }
#Product .early-access-gird-holder:nth-child(2) .early-access-card { justify-self: end; margin-right: 3%; }
#Product .early-access-gird-holder:nth-child(3) .early-access-card { justify-self: start; margin-left: 12%; }
.bn-pipeline-art-label { margin-bottom: 12px; color: #709aa9; font: 500 9px/1.5 Outfit, sans-serif; letter-spacing: .14em; }
#Product .early-access-image-holder { background: radial-gradient(ellipse at 40% 40%, #24545d44, #10202b00 75%); border-radius: 8px; }
#Product .early-access-background-holder { opacity: .18; }
#Product .early-access-small-image-holder._02 { animation: bn-pipeline-drift 8s ease-in-out infinite; }
#Product .early-access-gird-holder:nth-child(2) .early-access-small-image-holder._02 { animation-delay: -2.5s; }
#Product .early-access-gird-holder:nth-child(3) .early-access-small-image-holder._02 { animation-delay: -5s; }
@keyframes bn-pipeline-drift { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-7px); } }
.bn-pipeline-sample { display: flex; flex-wrap: wrap; gap: 6px 10px; align-items: center; margin-left: 42px; color: #7395a5; font: 400 11px/1.6 Outfit, sans-serif; }
.bn-pipeline-sample > span:nth-child(2) { color: #659fac; }
.bn-pipeline-sample strong { font-weight: 400; color: #a9cbd2; }
/* One connected-workflow illustration and an open list of capabilities. */
.bn-toolstack-section { padding: 64px 0 80px; scroll-margin-top: 100px; }
.bn-toolstack-section .container { max-width: 1440px; width: 100%; padding: 0 48px; }
.bn-toolstack-heading { display: grid; grid-template-columns: 1.3fr .7fr; gap: 60px; align-items: end; margin-bottom: 48px; }
.bn-toolstack-heading h2 { margin: 0; color: #e0edf1; font: 400 clamp(28px, 3vw, 42px)/1.2 Outfit, sans-serif; letter-spacing: -.025em; }
.bn-toolstack-heading h2 span { color: #83b9c3; }
.bn-toolstack-heading > p { color: #91aab8; font-size: 14px; line-height: 1.8; margin: 0; }
.bn-toolstack-layout { display: grid; grid-template-columns: 1.1fr 1fr; gap: 70px; align-items: center; }
.bn-toolstack-visual { margin: 0; min-width: 0; padding: 25px 22px; background: radial-gradient(ellipse at 50% 45%, #2049563d, transparent 72%); }
.bn-toolstack-categories { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 20px; color: #8aa9b7; font: 400 10px/1.6 Outfit, sans-serif; }
.bn-toolstack-categories span::before { content: ''; display: inline-block; width: 4px; height: 4px; margin-right: 7px; border-radius: 50%; background: #7bcbd0; vertical-align: middle; }
.bn-toolstack-network { padding: 22px 0; }
.bn-toolstack-network img { display: block; width: 100%; max-width: 480px; height: auto; margin: 0 auto; object-fit: contain; }
.bn-toolstack-visual figcaption { display: flex; flex-direction: column; align-items: center; gap: 9px; text-align: center; color: #7593a3; font-size: 12px; line-height: 1.6; }
.bn-toolstack-core { color: #b0e5e7; font: 500 20px/1.3 Outfit, sans-serif; }
.bn-toolstack-capabilities article { display: grid; grid-template-columns: 25px 1fr; gap: 17px; padding: 21px 0; border-bottom: 1px solid #9bd4df12; }
.bn-toolstack-capabilities article:first-child { padding-top: 0; }
.bn-toolstack-capabilities article:last-child { border-bottom: 0; }
.bn-toolstack-capabilities article > span { color: #568291; font: 400 11px/1.6 Outfit, sans-serif; padding-top: 3px; }
.bn-toolstack-capabilities h3 { margin: 0 0 9px; color: #c9dee5; font: 400 21px/1.3 Outfit, sans-serif; letter-spacing: -.01em; }
.bn-toolstack-capabilities p { margin: 0; color: #8ba5b4; font-size: 13px; line-height: 1.75; max-width: 460px; }
.bn-toolstack-close { display: flex; justify-content: space-between; gap: 20px; align-items: center; margin-top: 35px; padding-top: 24px; border-top: 1px solid #9bd4df12; }
.bn-toolstack-close p { margin: 0; color: #adc8d1; font: 400 17px/1.5 Outfit, sans-serif; }
.bn-toolstack-close a { color: #8ed4d9; font-size: 13px; text-decoration: none; }
.bn-toolstack-close a span { margin-left: 10px; }
.bn-toolstack-close a:hover { color: #d0ffff; }
.bn-toolstack-close a:focus-visible { outline: 2px solid #6ddfea; outline-offset: 5px; }
@media (max-width: 991px) { .bn-toolstack-section .container { padding: 0 28px; } .bn-toolstack-heading, .bn-toolstack-layout { gap: 35px; } }
@media (max-width: 767px) { .bn-toolstack-heading, .bn-toolstack-layout { grid-template-columns: 1fr; gap: 28px; } .bn-toolstack-heading { margin-bottom: 28px; } .bn-toolstack-close { flex-direction: column; align-items: flex-start; gap: 12px; } #Product .early-access-gird-holder:nth-child(n) .early-access-card { justify-self: center; margin-left: 0; margin-right: 0; } }
@media (max-width: 479px) { .bn-toolstack-section { padding: 45px 0; } .bn-toolstack-section .container { padding: 0 20px; } .bn-toolstack-visual { padding: 18px 0; } }
@media (prefers-reduced-motion: reduce) { #Product .early-access-small-image-holder._02 { animation: none; } }

/* Align the pipeline illustrations and restore richer background color. */
#Product .early-access-gird-holder:nth-child(n) .early-access-card { justify-self: center; margin-left: 0; margin-right: 0; }
#Product .early-access-image-holder { background: radial-gradient(ellipse at 35% 30%, #17687970, #102c4c55 65%, #101d2d); }
#Product .early-access-background-holder { opacity: .72; filter: saturate(1.25); }
#Product .early-access-gird-holder:nth-child(2) .early-access-image-holder { background: radial-gradient(ellipse at 40% 35%, #20518f70, #102443); }
#Product .early-access-gird-holder:nth-child(3) .early-access-image-holder { background: radial-gradient(ellipse at 40% 35%, #49327d70, #122c42); }

/* An open editorial manifesto between the product promise and its backing. */
.bn-manifesto { padding: 32px 0 46px; }
.bn-manifesto .container { max-width: 1440px; width: 100%; padding: 0 48px; }
.bn-manifesto-layout { display: grid; grid-template-columns: .85fr 1.15fr; align-items: start; gap: 80px; padding-top: 32px; border-top: 1px solid #a4dce514; }
.bn-manifesto-heading h2 { margin: 0; color: #e0edf1; font: 400 clamp(29px, 3.4vw, 44px)/1.15 Outfit, sans-serif; letter-spacing: -.03em; }
.bn-manifesto-heading h2 span { color: #83cbd0; }
.bn-manifesto-signature { margin: 22px 0 0; color: #638896; font: 400 12px/1.6 Outfit, sans-serif; }
.bn-manifesto-copy { max-width: 630px; }
.bn-manifesto-copy > p { margin: 0 0 17px; color: #9ab2bf; font-size: 15px; line-height: 1.85; }
.bn-manifesto-copy > p:first-child { color: #bed2dc; font-size: 17px; line-height: 1.75; }
.bn-manifesto-copy .bn-manifesto-closing { margin: 26px 0 0; color: #abc4cf; font: 400 clamp(21px, 2.2vw, 29px)/1.45 Outfit, sans-serif; letter-spacing: -.015em; }
.bn-manifesto-closing strong { color: #94e0e0; font-weight: 500; }
.bn-manifesto-principles { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 14px 24px; margin-top: 34px; color: #709ba9; font: 400 11px/1.6 Outfit, sans-serif; }
.bn-manifesto-principles span::before { content: ''; display: inline-block; width: 4px; height: 4px; margin-right: 9px; border-radius: 50%; background: #68bbc4; vertical-align: middle; }
@media (max-width: 991px) { .bn-manifesto .container { padding: 0 28px; } .bn-manifesto-layout { gap: 40px; } }
@media (max-width: 767px) { .bn-manifesto { padding-top: 20px; padding-bottom: 32px; } .bn-manifesto-layout { grid-template-columns: 1fr; gap: 25px; padding-top: 25px; } .bn-manifesto-signature { margin-top: 12px; } .bn-manifesto-principles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 479px) { .bn-manifesto .container { padding: 0 20px; } .bn-manifesto-copy > p { font-size: 14px; } .bn-manifesto-copy > p:first-child { font-size: 16px; } .bn-manifesto-principles { gap: 12px; font-size: 10px; } }

/* Original centered invitation, with restrained palette and type refinements. */
.bn-manifesto { padding-bottom: 28px; }
.bn-restored-join { scroll-margin-top: 100px; }
.bn-restored-join .cta-wrapper { padding-top: 35px; padding-bottom: 60px; }
.bn-restored-join .title-holder { max-width: 740px; }
.bn-restored-join h2.title { font: 400 clamp(30px, 3.5vw, 44px)/1.18 Outfit, sans-serif; letter-spacing: -.025em; color: #e0edf1; }
.bn-restored-join .paragraph-holder p, .bn-restored-join .cta-paragraph-holder p { color: #95aebb; font-size: 14px; line-height: 1.75; }
.bn-restored-join .cta-holder { padding-top: 35px; padding-bottom: 25px; }
.bn-restored-join .cta-container { max-width: 100%; background: #14232d; }
.bn-restored-join .cta-heading { font-family: Outfit, sans-serif; font-weight: 400; color: #dcebef; }
.bn-restored-join .cta-blured-bg._01 { background-color: #258b9d; }
.bn-restored-join .text-field { background: #10202b; border-color: #34525f; padding-right: 52px; box-shadow: 0 8px 24px #0002; }
.bn-restored-join .text-field:focus { border-color: #6ddfea; box-shadow: 0 0 0 3px #6ddfea12; }
.bn-restored-join .submit-button { background-color: #6ddfea; }
.bn-restored-join .submit-button:hover { background-color: #a0edf2; }
.bn-restored-join .submit-button:focus-visible { outline: 2px solid #b8f6fa; outline-offset: 4px; }
.bn-restored-form-note { margin: 0; color: #7495a4; font-size: 11px; line-height: 1.6; }
.bn-restored-join .cta-cricle-holder { opacity: .7; }
@media (max-width: 479px) { .bn-restored-join .cta-form-holder { width: 100%; padding: 55px 22px 30px; } .bn-restored-join .form-block { width: 100%; } }

.bn-hero-intro-line { margin: 0 0 18px; color: #9bbfc9; font: 400 13px/1.65 Outfit, sans-serif; letter-spacing: .015em; }
@media (max-width: 479px) { .bn-hero-intro-line { font-size: 12px; margin-bottom: 15px; } }

/* Blue uppercase hero intro with a leading dot. */
.bn-hero-intro-line { display: flex; align-items: center; gap: 9px; color: #77a4b1; font: 500 10px/1.6 Outfit, sans-serif; letter-spacing: .14em; text-transform: uppercase; }
.bn-hero-intro-line > span { width: 6px; height: 6px; flex: 0 0 6px; border-radius: 50%; background: #6ddfea; }

/* The manifesto pairs the design philosophy with its western Norway roots. */
.bn-manifesto-layout { grid-template-columns: 1.1fr .9fr; gap: 80px; align-items: center; }
.bn-manifesto-heading .bn-manifesto-copy { margin-top: 28px; max-width: 590px; }
.bn-manifesto-heading .bn-manifesto-copy > p:first-child { font-size: 16px; }
.bn-maritime-roots { margin: 0; min-width: 0; }
.bn-norway-map { position: relative; width: min(100%, 300px); margin: 0 auto 26px; }
.bn-norway-map > img { display: block; width: 100%; height: auto; }
.bn-coast-marker { position: absolute; left: 11.5%; top: 70.5%; width: 10px; height: 10px; transform: translate(-50%, -50%); border-radius: 50%; background: #a0f4ef; box-shadow: 0 0 10px #8ef8ed, 0 0 25px #4ce7dcaa; }
.bn-coast-marker > span { position: absolute; inset: -9px; border: 1px solid #70e5dc; border-radius: 50%; animation: bn-coastal-pulse 3.5s ease-out infinite; }
.bn-coast-label { position: absolute; left: 21%; top: 69%; padding: 5px 8px; border-radius: 4px; background: #0b1d2ae6; color: #a2dfdf; font: 500 10px/1.4 Outfit, sans-serif; }
.bn-coast-label > span { display: block; color: #7fa5b3; font-size: 9px; font-weight: 400; }
.bn-maritime-roots figcaption { max-width: 430px; margin: 0 auto; }
.bn-maritime-roots figcaption .bn-proof-eyebrow { margin-bottom: 10px; }
.bn-maritime-roots h3 { margin: 0 0 15px; color: #cfe4e9; font: 400 25px/1.25 Outfit, sans-serif; letter-spacing: -.02em; }
.bn-maritime-roots figcaption > p:not(.bn-proof-eyebrow) { margin: 0 0 12px; color: #89a6b4; font-size: 13px; line-height: 1.8; }
.bn-maritime-source { color: #7fb8c2; font-size: 10px; text-decoration: none; }
.bn-maritime-source:hover { color: #b7eef0; }
.bn-maritime-source:focus-visible { outline: 2px solid #6ddfea; outline-offset: 4px; }
@keyframes bn-coastal-pulse { 0% { transform: scale(.5); opacity: .8; } 85%, 100% { transform: scale(1.6); opacity: 0; } }
@media (max-width: 991px) { .bn-manifesto-layout { gap: 38px; } .bn-norway-map { max-width: 250px; } }
@media (max-width: 767px) { .bn-manifesto-layout { grid-template-columns: 1fr; gap: 35px; } .bn-maritime-roots { display: grid; grid-template-columns: .8fr 1.2fr; gap: 25px; align-items: center; } .bn-norway-map { margin-bottom: 0; } }
@media (max-width: 479px) { .bn-maritime-roots { grid-template-columns: 1fr; } .bn-norway-map { max-width: 260px; } }
@media (prefers-reduced-motion: reduce) { .bn-coast-marker > span { animation: none; opacity: .35; } }

/* Short statements, a clean map, and a stronger coastal focal point. */
.bn-manifesto-heading .bn-manifesto-copy { margin-top: 24px; }
.bn-manifesto-heading .bn-manifesto-copy > .bn-manifesto-lead { font: 400 22px/1.45 Outfit, sans-serif; color: #bfdbe2; margin-bottom: 15px; }
.bn-manifesto-beliefs { margin: 24px 0; display: grid; gap: 18px; }
.bn-manifesto-beliefs p { margin: 0; padding-left: 15px; border-left: 2px solid #70cbd14d; }
.bn-manifesto-beliefs strong { display: block; color: #c8e1e7; font: 500 16px/1.5 Outfit, sans-serif; }
.bn-manifesto-beliefs span { display: block; margin-top: 3px; color: #829fac; font-size: 13px; line-height: 1.6; }
.bn-norway-map { width: min(100%, 270px); margin-bottom: 18px; isolation: isolate; }
.bn-norway-map::before { content: ''; position: absolute; inset: 25% -22% 3% -25%; z-index: -1; background: radial-gradient(ellipse at 30% 64%, #24999f20, transparent 65%); pointer-events: none; }
.bn-norway-map > img { opacity: .83; }
.bn-coast-marker { left: 13.5%; top: 66.3%; width: 16px; height: 16px; background: #b4fff4; border: 3px solid #53d9ce; box-shadow: 0 0 12px #76f5df, 0 0 32px #38dcca99, 0 0 60px #2bd8c84d; }
.bn-coast-marker > span { inset: -14px; border-color: #75f4de; animation-duration: 3s; }
.bn-coast-marker::after { content: ''; position: absolute; inset: -6px; border: 1px solid #87efdf66; border-radius: 50%; }
.bn-coast-label { left: 24%; top: 64.5%; min-width: 145px; padding: 7px 10px; color: #b7efea; font-size: 11px; background: #0c202de8; }
.bn-coast-label > span { margin-top: 3px; font-size: 8px; }
.bn-maritime-roots h3 { font: 400 clamp(25px, 2.6vw, 34px)/1.2 Outfit, sans-serif; letter-spacing: -.025em; }
.bn-maritime-roots h3 span { color: #80c9cc; }
.bn-maritime-roots figcaption > .bn-roots-signoff { color: #b7d4dc; }
@media (max-width: 767px) { .bn-maritime-roots { grid-template-columns: 1fr 1fr; gap: 28px; } .bn-coast-label { min-width: 120px; left: 22%; font-size: 10px; } }
@media (max-width: 479px) { .bn-maritime-roots { grid-template-columns: 1fr; } .bn-norway-map { max-width: 245px; } }

/* A larger Norway silhouette with a gently offset editorial card. */
.bn-maritime-roots { display: block; position: relative; padding-right: 14px; }
.bn-norway-map { width: min(100%, 350px); max-width: 350px; margin: 0 auto; }
.bn-maritime-roots figcaption { position: relative; z-index: 1; width: calc(100% - 14px); max-width: 410px; margin: -18px 0 0 auto; transform: translateX(14px); padding: 24px 26px; border-radius: 10px; background: linear-gradient(140deg, #193440ed, #10232ee8); box-shadow: 0 16px 40px #0002; }
.bn-maritime-roots figcaption > p:last-of-type { margin-bottom: 16px; }
@media (max-width: 991px) { .bn-norway-map { width: min(100%, 310px); } .bn-maritime-roots figcaption { padding: 20px; } }
@media (max-width: 767px) { .bn-maritime-roots { display: block; max-width: 490px; width: 100%; justify-self: center; } .bn-norway-map { width: min(100%, 350px); } }
@media (max-width: 479px) { .bn-norway-map { width: min(100%, 300px); max-width: 300px; } .bn-maritime-roots { padding-right: 8px; } .bn-maritime-roots figcaption { width: calc(100% - 8px); transform: translateX(8px); padding: 20px; } }

/* Philosophy on the left, Norway at the center, roots at the upper right. */
.bn-manifesto-layout { grid-template-columns: 1fr 1.3fr; gap: 45px; align-items: center; }
.bn-maritime-roots { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; align-items: start; padding: 0; width: 100%; max-width: none; }
.bn-norway-map { width: 100%; max-width: 350px; margin: 0; align-self: center; }
.bn-maritime-roots figcaption { width: 100%; max-width: none; margin: 22px 0 0; transform: none; padding: 22px; }
.bn-maritime-roots h3 { font-size: clamp(22px, 2vw, 28px); line-height: 1.3; }
.bn-maritime-roots h3 span { display: inline-block; margin-top: 12px; }
.bn-maritime-roots figcaption .bn-proof-eyebrow { font-size: 8px; letter-spacing: .1em; }
.bn-maritime-roots figcaption > p:not(.bn-proof-eyebrow) { font-size: 12px; }
.bn-team-link { display: inline-block; margin-top: 22px; color: #8cd3db; font: 400 12px/1.6 Outfit, sans-serif; text-decoration: none; }
.bn-team-link > span { margin-left: 8px; }
a.bn-team-link:hover { color: #c3f4f5; }
a.bn-team-link:focus-visible { outline: 2px solid #6ddfea; outline-offset: 4px; }
@media (max-width: 1100px) { .bn-manifesto-layout { grid-template-columns: 1fr 1.1fr; gap: 30px; } .bn-maritime-roots { gap: 12px; } .bn-maritime-roots figcaption { padding: 17px; } .bn-coast-label { min-width: 110px; font-size: 9px; } }
@media (max-width: 991px) { .bn-manifesto-layout { grid-template-columns: 1fr; gap: 30px; } .bn-maritime-roots { max-width: 690px; justify-self: center; gap: 30px; } .bn-norway-map { width: 100%; max-width: 320px; } .bn-maritime-roots figcaption { padding: 24px; margin-top: 32px; } }
@media (max-width: 479px) { .bn-maritime-roots { grid-template-columns: 1fr; gap: 10px; } .bn-norway-map { width: 100%; max-width: 280px; margin: 0 auto; } .bn-maritime-roots figcaption { margin-top: 0; } }

/* Solid gray editorial card with right-aligned, sequential statements. */
.bn-maritime-roots figcaption.bn-roots-card { background: #30353b; border-radius: 10px; padding: 28px 24px; text-align: right; box-shadow: 0 16px 35px #0003; overflow: hidden; }
.bn-maritime-roots .bn-roots-statements { margin: 0 0 22px; color: #f0f3f4; font: 500 clamp(22px, 2.15vw, 30px)/1.14 Outfit, sans-serif; letter-spacing: -.025em; }
.bn-maritime-roots .bn-roots-statements > span { display: block; margin: 0 0 17px; color: inherit; }
.bn-maritime-roots .bn-roots-statements > span:last-child { margin-bottom: 0; color: #9ce2e0; }
.bn-maritime-roots figcaption > p.bn-roots-caption { margin: 0; color: #bdc6cd; font-size: 12px; line-height: 1.8; }
.bn-roots-revealed .bn-roots-statements > span { animation: bn-roots-enter .8s cubic-bezier(.2,.7,.3,1) both; }
.bn-roots-revealed .bn-roots-statements > span:nth-child(2) { animation-delay: .18s; }
.bn-roots-revealed .bn-roots-statements > span:nth-child(3) { animation-delay: .36s; }
.bn-roots-revealed .bn-roots-caption { animation: bn-roots-enter .8s ease .55s both; }
@keyframes bn-roots-enter { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 1100px) { .bn-maritime-roots figcaption.bn-roots-card { padding: 22px 18px; } }
@media (prefers-reduced-motion: reduce) { .bn-roots-revealed .bn-roots-statements > span, .bn-roots-revealed .bn-roots-caption { animation: none; } }

/* Bold, unboxed typography drifting slightly into the map. */
.bn-maritime-roots figcaption.bn-roots-card { background: transparent; box-shadow: none; border-radius: 0; padding: 0; overflow: visible; margin-top: 84px; width: calc(100% + 34px); transform: translateX(-34px); text-align: right; }
.bn-maritime-roots .bn-roots-statements { font: 600 clamp(28px, 3vw, 43px)/1.06 Outfit, sans-serif; letter-spacing: -.035em; margin-bottom: 25px; }
.bn-maritime-roots .bn-roots-statements > span { margin-bottom: 24px; text-shadow: 0 2px 16px #09131e80; }
.bn-maritime-roots figcaption > p.bn-roots-caption { max-width: 300px; margin-left: auto; color: #8fa8b6; }
@media (max-width: 1100px) { .bn-maritime-roots figcaption.bn-roots-card { padding: 0; width: calc(100% + 20px); transform: translateX(-20px); margin-top: 65px; } }
@media (max-width: 991px) { .bn-maritime-roots .bn-roots-statements { font-size: 38px; } .bn-maritime-roots figcaption.bn-roots-card { margin-top: 80px; } }
@media (max-width: 479px) { .bn-maritime-roots figcaption.bn-roots-card { width: 100%; transform: none; margin-top: -12px; } .bn-maritime-roots .bn-roots-statements { font-size: 36px; } }

/* Compact statements above a separate maritime-context card. */
.bn-maritime-roots .bn-roots-statements { font: 600 clamp(25px, 2.45vw, 34px)/1.12 Outfit, sans-serif; letter-spacing: -.025em; margin-bottom: 19px; }
.bn-maritime-roots .bn-roots-statements > span { margin-bottom: 12px; }
.bn-roots-story-card { padding: 20px; border-radius: 10px; background: #29323b; box-shadow: 0 14px 35px #0002; }
.bn-roots-story-card .bn-roots-caption { margin: 0; color: #b6c5ce; font-size: 12px; line-height: 1.75; }
.bn-cluster-link { display: inline-block; margin-top: 15px; color: #94d9dc; font: 400 11px/1.6 Outfit, sans-serif; text-decoration: none; }
.bn-cluster-link > span { margin-left: 5px; }
.bn-cluster-link:hover { color: #d1ffff; }
.bn-cluster-link:focus-visible { outline: 2px solid #6ddfea; outline-offset: 4px; }
@media (max-width: 991px) { .bn-maritime-roots .bn-roots-statements { font-size: 32px; } }
@media (max-width: 479px) { .bn-maritime-roots .bn-roots-statements { font-size: 30px; } .bn-roots-story-card { padding: 20px; } }

/* Keep the roots statements readable across all column widths. */
.bn-maritime-roots, .bn-maritime-roots figcaption.bn-roots-card { min-width: 0; }
.bn-maritime-roots .bn-roots-statements { overflow-wrap: anywhere; hyphens: none; font-size: clamp(24px, 2.25vw, 32px); }
.bn-maritime-roots .bn-roots-statements > span { max-width: 100%; white-space: normal; }
.bn-coast-marker { animation: bn-coast-glow 2.8s ease-in-out infinite; }
@keyframes bn-coast-glow { 0%,100% { box-shadow: 0 0 10px #76f5df, 0 0 24px #38dcca88; background: #a1efe4; } 50% { box-shadow: 0 0 18px #acfff0, 0 0 45px #38dccacc, 0 0 70px #2bd8c85c; background: #e2fff6; } }
.bn-toolstack-close { justify-content: flex-end; }
.bn-toolstack-vision { padding-bottom: 20px; }
.bn-toolstack-vision > p:last-child { color: #b5cfd8; font-size: 15px; line-height: 1.75; }
.bn-mapping-svg { display: block; width: 100%; height: auto; overflow: visible; }
.bn-map-spoke { fill: none; stroke: #416f7d; stroke-width: 1.2; }
.bn-map-orbit { transform-origin: 300px 265px; animation: bn-mapping-orbit 45s linear infinite; }
.bn-map-orbit path { fill: none; stroke: #64bdc7; stroke-width: 1.3; stroke-dasharray: 195 65; marker-end: url(#bn-map-arrow); }
.bn-map-core { fill: #16323c; stroke: #6ddfea32; }
.bn-map-center { fill: #c6e7eb; font: 400 21px Outfit, sans-serif; text-anchor: middle; }
.bn-map-brand { fill: #679ba9; font: 500 9px Outfit, sans-serif; letter-spacing: .15em; text-anchor: middle; }
.bn-map-label rect { fill: #122631; stroke: #70b7c018; }
.bn-map-label text { fill: #a9ced7; font: 400 15px Outfit, sans-serif; text-anchor: middle; }
@keyframes bn-mapping-orbit { to { transform: rotate(360deg); } }
@media (max-width: 479px) { .bn-toolstack-visual { margin: 0 -8px; } }
@media (prefers-reduced-motion: reduce) { .bn-coast-marker, .bn-map-orbit { animation: none; } }

/* Reference-inspired orchestration: sources, shared design layer, people. */
.bn-toolstack-layout { grid-template-columns: 1.3fr 1fr; gap: 45px; }
.bn-orchestration-visual { padding: 10px 0; background: radial-gradient(ellipse at 50% 48%, #1d667518, transparent 68%); }
#bn-orchestration { display: block; width: 100%; height: auto; overflow: visible; }
#bn-orchestration text { font-family: Outfit, sans-serif; }
.orch-kicker { fill: #608996; font-size: 12px; letter-spacing: .14em; }
.orch-band-heading { fill: #b4e1e5; font-size: 24px; font-weight: 400; }
.orch-route { fill: none; stroke: #366572; stroke-width: 1.3; stroke-dasharray: 4 6; marker-end: url(#bn-orch-arrow); transition: stroke .4s; }
.orch-route.is-flowing { stroke: #82dfe0; }
.orch-person { fill: #7f9ba8; stroke: #7f9ba8; transition: fill .5s, stroke .5s; }
.orch-person path { fill: none; stroke-width: 6; stroke-linecap: round; }
.orch-person text { fill: #91aebb; stroke: none; font-size: 20px; text-anchor: middle; }
.orch-person.is-active { fill: #9be8dc; stroke: #9be8dc; }
.orch-person.is-active text { fill: #b0e9df; }
.orch-system { fill: #102f3a; stroke: #4595a3; stroke-width: 2; transition: stroke .5s; }
.orch-system > ellipse { fill: #0b2733; stroke: #397887; }
.orch-system text { fill: #86b6c3; stroke: none; font-size: 17px; text-anchor: middle; }
.orch-system.is-active { stroke: #7dddd6; }
.orch-system.is-active text { fill: #b9e3e3; }
.orch-system .orch-hub { fill: #135363; }
.orch-system .orch-hub-core { fill: #59cccf; stroke: none; }
.orch-system.is-active .orch-hub-core { fill: #a3f3df; }
.orch-source-heading { fill: #709eac; font-size: 13px; letter-spacing: .1em; }
.orch-source rect { fill: #102632; stroke: #4c83932b; transition: fill .4s, stroke .4s; }
.orch-source text { fill: #91b5c2; font-size: 16px; text-anchor: middle; }
.orch-source.is-active rect { fill: #17424d; stroke: #65c3ce70; }
.orch-source.is-active text { fill: #c4eaeb; }
.orch-pulse { fill: #b4fff0; filter: drop-shadow(0 0 4px #6ddfea); }
.orch-progress circle { fill: #6ddfea; }
.orch-progress text { fill: #91c4cf; font-size: 15px; }
.orch-demo-label { fill: #557986; font-size: 10px; letter-spacing: .06em; }
.bn-orchestration-visual figcaption { margin-top: 8px; font-size: 11px; }
@media (max-width: 1100px) { .bn-toolstack-layout { grid-template-columns: 1fr; gap: 35px; } .bn-orchestration-visual { width: 100%; max-width: 800px; justify-self: center; } }
@media (max-width: 479px) { .bn-orchestration-visual { margin: 0 -10px; width: calc(100% + 20px); } .orch-demo-label { display: none; } }
@media (prefers-reduced-motion: reduce) { #bn-orchestration * { transition: none; } }

/* Compact orchestration with consistent outline icons and edge-anchored routes. */
.bn-orchestration-visual { background: none; }
.orch-refined .orch-route { stroke: #41606e; stroke-dasharray: none; stroke-width: 1.2; }
.orch-refined .orch-route.is-flowing { stroke: #76bfc7; }
.orch-refined .orch-layer { fill: #15313d; stroke: #49758266; stroke-width: 1; }
.orch-refined .orch-band-heading { font-size: 21px; font-weight: 400; fill: #bbd6de; }
.orch-refined .orch-person { fill: none; stroke: none; }
.orch-refined .orch-person-card { fill: #122530; stroke: #57748333; stroke-width: 1; }
.orch-refined .orch-person text { text-anchor: start; font-size: 19px; font-weight: 400; }
.orch-refined .orch-avatar { fill: none; stroke: #8ca9b6; stroke-width: 1.6; }
.orch-refined .orch-avatar-disc { fill: #1d3541; stroke: none; }
.orch-refined .orch-avatar path { stroke-width: 1.6; }
.orch-refined .orch-person.is-active .orch-avatar { stroke: #a3ded6; }
.orch-refined .orch-person.is-active .orch-person-card { stroke: #76bfc777; }
.orch-refined .orch-system { fill: none; stroke: #88b6c1; stroke-width: 1.7; stroke-linejoin: round; stroke-linecap: round; }
.orch-refined .orch-system text { text-anchor: start; font-size: 18px; }
.orch-refined .orch-system.is-active { stroke: #b3e2df; }
.orch-refined .orch-source rect { fill: #11222c; stroke: #50738340; }
.orch-refined .orch-source text { text-anchor: start; font-size: 14px; fill: #91aab7; }
.orch-refined .orch-source .orch-source-heading { font-size: 11px; letter-spacing: .12em; fill: #6597a7; }
.orch-refined .orch-source.is-active rect { fill: #142e38; stroke: #5a9aa477; }
.orch-refined .orch-pulse { fill: #abe2db; filter: none; }
.orch-refined .orch-progress text { font-size: 13px; fill: #7396a4; }
.bn-orchestration-visual figcaption { color: #73909e; }

/* Five evenly spaced recipients; room for the naval architect label. */
.orch-refined .orch-person text { font-size: 17px; }
