/* Website integration: BO's own typefaces, colours and spacing scale. */
@font-face{font-family:Inter;src:url('./assets/fonts/inter.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'Libre Baskerville';src:url('./assets/fonts/libre-baskerville.ttf') format('truetype');font-weight:400 700;font-style:normal;font-display:swap}
:root{--bo-navy:#050a30;--bo-sky:#a6d4f2;--bo-amber:#f9a825;--bo-border:#d9d9d9;--bo-secondary:#4e4e4e;--bo-serif:'Libre Baskerville',Georgia,serif}
.demo-page{background:#f4f6fc}
.mapping{--ink:var(--bo-navy);--muted:var(--bo-secondary);--line:var(--bo-border);color:var(--bo-navy);background:#fff!important;border-radius:16px;box-shadow:none;padding:32px 32px 0}
.mapping h2,.mapping h3{font-family:var(--bo-serif);font-weight:400!important;letter-spacing:-.025em;line-height:1.3;text-wrap:balance}
.mapping .map-heading h2{font-size:28px;max-width:560px;margin-top:12px}
.mapping .eyebrow{font-size:10px;letter-spacing:.1em;font-weight:600;line-height:1.6}
.mapping .draft-badge{border-radius:6px;background:#f4f6fc;color:var(--bo-secondary);font-size:10px;padding:8px 10px}
.mapping .map-meta{font-size:11px;line-height:1.6}
.mapping .map-tabs{background:transparent;border-radius:0;border-bottom:1px solid var(--bo-border);padding:0;gap:24px;margin:28px 0 32px}
.mapping .map-tabs button{flex:0 1 auto;min-height:48px;padding:12px 0;border-radius:0;border-bottom:3px solid transparent;font-size:13px;box-shadow:none;background:transparent;color:var(--bo-secondary)}
.mapping .map-tabs button.selected{border-bottom-color:var(--bo-navy);color:var(--bo-navy)}
.mapping .map-tabs button span{color:inherit}
.mapping .job-map header{margin:0 0 24px}
.mapping .job-map h3{font-size:clamp(26px,4cqw,36px);margin:12px 0}
.mapping .job-map header>p:last-child{font-size:14px;line-height:1.7;color:var(--bo-secondary)}
.mapping .job-board{display:block;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.mapping .customer-job{background:#eaf4fb;color:var(--bo-navy);border-radius:10px;padding:24px 28px;box-shadow:none}
.mapping .customer-job .job-tag,.mapping .customer-job h4,.mapping .customer-job small{color:var(--bo-secondary)}
.mapping .customer-job blockquote{font-family:var(--bo-serif);font-size:22px;line-height:1.55;margin:16px 0;font-weight:400}
.mapping .customer-job p{font-size:14px;line-height:1.7}
.mapping .customer-job h4{font-size:12px;font-weight:600;margin:20px 0 8px}
.mapping .customer-job small{font-size:11px;line-height:1.6}
.mapping .bo-bridge{flex-direction:row;justify-content:center;gap:16px;padding:28px 0}
.mapping .bo-bridge:before{display:none}
.mapping .bo-bridge img{width:150px;max-width:40%;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}
.mapping .bo-bridge span{background:transparent;color:var(--bo-secondary);padding:0;font-size:11px;line-height:1.6;max-width:120px}
.mapping .job-modules{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:20px}
.mapping .job-module,.mapping .job-module.relevant{padding:24px;border:1px solid var(--bo-border);border-top:1px solid var(--bo-border);border-radius:10px;background:white;box-shadow:none;animation:none}
.mapping .job-module h4{font-family:var(--bo-serif);font-weight:400;color:var(--bo-navy);font-size:23px;margin:12px 0 16px}
.mapping .job-module small,.mapping .job-module.relevant small{font-size:10px;color:var(--bo-secondary);font-weight:500;letter-spacing:.06em}
.mapping .job-module li{font-size:13px;line-height:1.8;color:var(--bo-secondary);padding-left:4px;margin:8px 0}
.mapping .job-module li::marker{color:var(--bo-navy)}
.mapping .job-connections{gap:16px;margin-top:24px}
.mapping .job-connection{border:0;border-top:1px solid var(--bo-border);border-bottom:1px solid var(--bo-border);border-radius:0;background:white;padding:24px 0;gap:20px}
.mapping .job-connection strong{font-size:13px;font-weight:600;line-height:1.6}
.mapping .job-connection-bridge a{font-size:12px;color:var(--bo-secondary)}
.mapping .connection-arrow{color:var(--bo-navy)}
.mapping .job-map-note{font-size:11px;line-height:1.8;margin:16px 0 32px}
.mapping .information-flow{margin:32px 0;padding:28px 0;background:transparent;border:0;border-top:1px solid var(--bo-border);border-radius:0}
.mapping .information-flow>h3{font-size:28px;margin:12px 0 20px}
.mapping .information-chips{gap:8px}
.mapping .information-chips span{background:#edf5fc;color:var(--bo-navy);border:0;border-radius:6px;padding:8px 12px;font-size:12px}
.mapping .information-evidence{font-size:14px;line-height:1.7;margin:20px 0 24px}
.mapping .information-gallery{gap:20px}
.mapping .information-gallery figure{padding:20px;border-color:var(--bo-border);border-radius:10px}
.mapping .information-gallery h4{font-size:16px;line-height:1.5;margin-bottom:12px}
.mapping .information-gallery p{font-size:13px;color:var(--bo-secondary)}
.mapping .information-gallery img{border-color:var(--bo-border);border-radius:4px;box-shadow:none}
.mapping .information-gallery figcaption,.mapping .information-note{font-size:11px;color:var(--bo-secondary);line-height:1.8}
.mapping .information-bridge{color:var(--bo-navy)}
.mapping .module-cards{gap:24px;margin:24px 0}
.mapping .module-card{border:0;border-top:1px solid var(--bo-border);border-radius:0;padding:28px 0;background:transparent}
.mapping .module-card h3{font-size:28px;margin:12px 0 20px}
.mapping .module-card h4{font-size:14px;line-height:1.6;margin:20px 0 8px}
.mapping .module-card p,.mapping .module-card li{font-size:14px;line-height:1.75;color:var(--bo-secondary)}
.mapping .module-card blockquote{background:#f4f6fc;border-left:2px solid var(--bo-sky);padding:16px 20px;font-size:14px}
.mapping .module-card figure{margin:24px 0}
.mapping .module-card img{border-radius:4px;box-shadow:none}
.mapping .module-card figcaption{font-size:11px;line-height:1.8}
.mapping .module-card>a{display:inline-block;margin-top:16px;font-size:12px;color:var(--bo-navy);text-underline-offset:4px}
.mapping .report-actions{padding:32px 0;border-top:1px solid var(--bo-border)}
.mapping .report-actions>h3{font-size:28px;margin:12px 0 16px}
.mapping .report-actions>p:not(.eyebrow){font-size:14px;line-height:1.75;margin-bottom:24px}
.mapping .secondary,.mapping .primary,.mapping .booking-link{min-height:48px;max-width:100%;padding:13px 20px;border-radius:10px;font-size:14px;font-weight:600;line-height:1.5;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:12px;white-space:normal;text-align:center}
.mapping .secondary{border:1px solid var(--bo-navy);color:var(--bo-navy);background:white;margin:0 12px 12px 0}
.mapping #continue-button{background:white;margin:0 0 12px}
.mapping .primary,.mapping .booking-link{background:var(--bo-amber);color:var(--bo-navy);border:1px solid var(--bo-amber);box-shadow:none}
.mapping .primary span{color:inherit}
.mapping .meeting-invitation{display:flex;flex-direction:column;align-items:flex-start;gap:16px;margin-top:28px;padding:28px;border:0;border-radius:10px;background:#edf5fc}
.mapping .meeting-invitation h3{font-size:25px;line-height:1.4;margin:0;max-width:560px}
.mapping .meeting-invitation p{font-size:14px;line-height:1.75;margin:0;color:var(--bo-secondary);max-width:560px}
.mapping .meeting-invitation .booking-link{margin-top:8px;flex-shrink:0}
.mapping .booking-link:hover,.mapping .primary:hover{background:#ef9919;filter:none}
.mapping button:focus-visible,.mapping a:focus-visible{outline:3px solid var(--bo-navy);outline-offset:4px}
.mapping .review-box{padding:24px 0}
.mapping .review-box p{font-size:14px;line-height:1.75;margin-bottom:20px}
.mapping .map-footer{font-size:10px;line-height:1.6;padding:24px 0;color:var(--bo-secondary)}
@container(max-width:450px){.mapping .customer-job{padding:20px}.mapping .customer-job blockquote{font-size:20px}.mapping .bo-bridge{gap:12px}.mapping .bo-bridge span{font-size:10px}.mapping .job-module{padding:20px}.mapping .meeting-invitation{padding:20px}.mapping .meeting-invitation .booking-link{width:100%}.mapping .information-gallery figure{padding:16px}}
@media(max-width:780px){.mapping{padding:24px 20px 0}.mapping .map-heading h2{font-size:25px}}
@media print{.mapping{padding:0;border:0}.mapping .customer-job{background:#edf5fc}.mapping .meeting-invitation{display:none}.mapping .job-connection{break-inside:avoid}.mapping .module-card{break-inside:avoid}}

/* Calm layer (2 October 2026): the conversation leads; no template chrome.
   Small all-caps labels, status pills, icon rows and decorative footers are removed. */
.eyebrow,.draft-badge,#company-label,.map-footer,.empty-flow,.promise,.flow-live,.mini-orb,.flow-icon{display:none!important}
.panel{box-shadow:none}
.conversation.panel{border:1px solid var(--bo-border);border-radius:16px;background:#fff}
.panel-heading{gap:14px;padding:20px 24px}
.panel-heading h2{font-family:var(--bo-serif);font-weight:400;font-size:19px;line-height:1.3;color:var(--bo-navy)}
.panel-heading p{font-size:12px;color:var(--bo-secondary)}
.avatar{width:60px;height:60px;flex-shrink:0;background:var(--bo-navy) center/cover no-repeat;color:#fff;font-family:var(--bo-serif);font-size:20px}
.avatar.has-photo,.demo-page .avatar.has-photo{background:url('./assets/vidar-visjon.png') center 40%/cover no-repeat!important;color:transparent}
.live-pill,.demo-page .live-pill{background:none;padding:0;border-radius:0;font-size:12px;color:var(--bo-secondary)}
.live-pill:empty{display:none}
.onboarding h3{font-family:var(--bo-serif);font-weight:400;font-size:26px;letter-spacing:-.02em;color:var(--bo-navy)}
.onboarding>p:not(.small-note){font-size:14px;color:var(--bo-secondary)}
.onboarding label{font-size:13px;color:var(--bo-navy)}
.onboarding .checkbox span{font-size:12px!important;color:var(--bo-secondary)}
.speaker{font-size:12px;letter-spacing:0;font-weight:600;color:var(--bo-navy)}
.message p{font-size:14px}
.empty-map{padding:48px 0 32px;text-align:left}
.empty-map h3{font-family:var(--bo-serif);font-size:26px;color:var(--bo-navy)}
.empty-map>p{font-size:14px;max-width:46ch;line-height:1.75}
.map-meta{justify-content:flex-start}
.mapping .customer-job .job-tag,.mapping .job-module small{letter-spacing:0;text-transform:none;font-size:12px}
.flow-node small{letter-spacing:0;font-size:12px}
@media(min-width:781px){
  .workspace,.session-started .workspace{grid-template-columns:minmax(0,1fr) 400px!important}
  .workspace>.mapping{grid-column:1;grid-row:1}
  .workspace>.conversation{grid-column:2;grid-row:1}
}
@media(min-width:781px) and (max-width:1050px){
  .workspace,.session-started .workspace{grid-template-columns:minmax(0,1fr) 340px!important}
}
@media(max-width:780px){
  .workspace,.session-started .workspace{grid-template-columns:1fr!important}
}
.onboarding label>span,.contact-form label>span{color:var(--bo-secondary);font-weight:400;font-size:12px;margin-left:6px}
.job-module li .reason,.module-card li .reason{display:block;margin-top:4px;font-size:12px;color:var(--bo-secondary);letter-spacing:0;text-transform:none}
.mapping .customer-story{margin:32px 0;padding:28px 0;border-top:1px solid var(--bo-border)}.mapping .customer-story h3{font-size:24px;margin:0 0 16px}.mapping .customer-story blockquote{font-family:var(--bo-serif);font-size:18px;line-height:1.6;margin:0 0 12px;color:var(--bo-navy)}.mapping .customer-story p{font-size:14px;line-height:1.75;color:var(--bo-secondary);margin:0 0 16px}.mapping .customer-story a{font-size:14px;color:var(--bo-navy);text-underline-offset:4px}
