/* Public workflow pages. Header corrections are limited to these routes. */
/* The marketing theme fixes its announcement bar and navigation (same offsets as the topic hub). */
.wp-theme-brandwell-theme .bwwf { --bwwf-chrome: 112px; }
@media (max-width: 767px) { .wp-theme-brandwell-theme .bwwf { --bwwf-chrome: 88px; } }
.bwwf { --bwwf-chrome: 0px; --w-ink: var(--bwtlp-ink, #171827); --w-muted: var(--bwtlp-muted, #5c6071); --w-line: var(--bwtlp-line, rgba(29,31,46,.1)); --w-accent: var(--bwtlp-accent, #5b16d6); --w-soft: var(--bwtlp-accent-soft, rgba(91,22,214,.09)); --w-dark: var(--bwtlp-dark, #14102a); --w-canvas: #faf9fc; font-family: var(--bwtlp-sans, "DM Sans", Arial, sans-serif); color: var(--w-ink); background: #fff; padding-top: var(--bwwf-chrome); }
.bwwf *, .bwwf *::before, .bwwf *::after { box-sizing: border-box; }
.bwwf-wrap { width: min(1180px, 100% - 48px); margin: 0 auto; }
.bwwf-sr { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
/* Hero */
.bwwf-hero { background: radial-gradient(1200px 400px at 80% -20%, rgba(188,104,255,.28), transparent 60%), var(--w-dark); color: #fff; padding: 56px 0 120px; }
.bwwf-hero h1 { margin: 14px 0 12px; max-width: 22ch; font: 700 clamp(32px, 4.6vw, 52px)/1.08 var(--bwtlp-sans, "DM Sans", Arial, sans-serif); letter-spacing: -.025em; color: #fff; }
.bwwf-hero-index h1 { max-width: 20ch; }
.bwwf-lede { max-width: 62ch; margin: 0; color: #d9d4ea; font-size: 18px; line-height: 1.6; }
.bwwf-crumbs { display: flex; align-items: center; gap: 8px; font-size: 13px; color: #b6aed0; }
.bwwf-crumbs a { color: #d9d4ea; text-decoration: none; }
.bwwf-crumbs a:hover { color: #fff; text-decoration: underline; }
.bwwf-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; margin-top: 28px; }
.bwwf-cta { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 26px; border-radius: 10px; background: var(--w-accent); color: #fff !important; font-weight: 600; font-size: 15px; text-decoration: none; }
.bwwf-cta:hover { background: var(--bwtlp-accent-dark, #4310a4); }
.bwwf-block { display: flex; width: 100%; }
.bwwf-ghost { color: #fff; font-weight: 500; text-decoration: underline; text-underline-offset: 4px; }
.bwwf-facts { display: flex; flex-wrap: wrap; gap: 6px 0; margin: 22px 0 0; padding: 0; font-size: 13px; color: #b6aed0; }
.bwwf-facts span + span::before { content: "\00b7"; margin: 0 12px; color: #8a80aa; }
.bwwf-badge { padding: 2px 10px; border-radius: 99px; background: rgba(255,255,255,.14); color: #fff; font-weight: 600; }
/* Diagram */
.bwwf-canvas-section { margin-top: -84px; position: relative; z-index: 2; }
.bwwf-canvas { position: relative; margin: 0; border: 1px solid var(--w-line); border-radius: 18px; background-color: var(--w-canvas); background-image: radial-gradient(#e3dfea 1px, transparent 1px); background-size: 24px 24px; box-shadow: 0 30px 70px rgba(20,16,42,.28), 0 2px 8px rgba(20,16,42,.06); overflow: hidden; }
.bwwf-stage { overflow: auto; padding: 28px 24px 12px; max-height: 560px; }
.bwwf-stage svg { display: block; max-width: none; height: auto; }
.bwwf-canvas figcaption { padding: 4px 24px 16px; font-size: 12.5px; color: var(--w-muted); }
.bwwf-canvas.is-live { cursor: grab; touch-action: none; user-select: none; -webkit-user-select: none; }
.bwwf-canvas.is-live.is-grabbing { cursor: grabbing; }
.bwwf-canvas.is-live .bwwf-stage { position: relative; overflow: hidden; padding: 0; height: var(--bwwf-h, 360px); max-height: none; }
.bwwf-canvas.is-live .bwwf-stage svg { position: absolute; left: 0; top: 0; transform-origin: 0 0; will-change: transform; }
.bwwf-canvas:focus-visible { outline: 2px solid var(--w-accent); outline-offset: 3px; }
.bwwf-zoom { position: absolute; right: 14px; bottom: 44px; display: flex; align-items: center; gap: 2px; padding: 3px; border: 1px solid var(--bwtlp-line-2, rgba(29,31,46,.18)); border-radius: 10px; background: #fff; box-shadow: 0 2px 8px rgba(20,16,42,.12); }
.bwwf-zoom button { width: 36px; height: 36px; border: 0; border-radius: 7px; background: transparent; color: var(--w-muted); font: 600 18px/1 var(--bwtlp-sans, Arial, sans-serif); cursor: pointer; }
.bwwf-zoom button:hover { background: var(--w-soft); color: var(--w-accent); }
.bwwf-zoom button:focus-visible { outline: 2px solid var(--w-accent); outline-offset: 1px; }
.bwwf-zoom output { min-width: 46px; text-align: center; font-size: 12px; color: var(--w-muted); font-variant-numeric: tabular-nums; }
/* Body */
.bwwf-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 56px; padding: 56px 0 40px; align-items: start; }
.bwwf-main section { margin-bottom: 44px; scroll-margin-top: calc(var(--bwwf-chrome) + 24px); }
.bwwf-main h2, .bwwf-related h2 { margin: 0 0 14px; font: 700 26px/1.2 var(--bwtlp-sans, "DM Sans", Arial, sans-serif); letter-spacing: -.02em; }
.bwwf-main p, .bwwf-main li { font-size: 16.5px; line-height: 1.7; color: #2c2f3f; }
.bwwf-results, .bwwf-needs { margin: 14px 0; padding-left: 20px; }
.bwwf-note { font-size: 14px !important; color: var(--w-muted) !important; }
.bwwf-why { padding: 14px 16px; border-left: 3px solid var(--w-accent); background: var(--w-soft); border-radius: 0 10px 10px 0; }
.bwwf-steps { list-style: none; margin: 18px 0 0; padding: 0; counter-reset: s; }
.bwwf-steps li { display: grid; grid-template-columns: 36px 1fr; gap: 16px; padding: 0 0 22px; position: relative; }
.bwwf-steps li:not(:last-child)::before { content: ""; position: absolute; left: 17px; top: 38px; bottom: 4px; width: 2px; background: var(--w-line); }
.bwwf-step-n { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: var(--w-soft); color: var(--w-accent); font-weight: 700; font-size: 14px; }
.bwwf-steps h3 { margin: 4px 0 4px; font-size: 17px; font-weight: 600; }
.bwwf-steps p { margin: 0; }
.bwwf-hold { display: inline-block; margin-left: 8px; padding: 1px 9px; border: 1px solid #b9d6ec; border-radius: 99px; background: #eef6fc; color: #075985; font: 600 11px/1.6 var(--bwtlp-sans, Arial, sans-serif); font-style: normal; vertical-align: 2px; }
.bwwf-figure { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 12px; margin: 10px 0; }
.bwwf-figure strong { font-size: 34px; font-weight: 300; letter-spacing: -.02em; }
.bwwf-figure span { color: var(--w-muted); font-size: 14px; }
.bwwf-side { position: sticky; top: calc(var(--bwwf-chrome) + 24px); }
.bwwf-side-card { padding: 22px; border: 1px solid var(--w-line); border-radius: 16px; background: #fff; box-shadow: 0 10px 30px rgba(40,32,62,.06); }
.bwwf-side-card dl { margin: 18px 0; display: grid; grid-template-columns: auto 1fr; gap: 10px 16px; font-size: 14px; }
.bwwf-side-card dt { color: var(--w-muted); }
.bwwf-side-card dd { margin: 0; font-weight: 500; }
.bwwf-side-card a { color: var(--w-accent); }
.bwwf-share { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding-top: 16px; border-top: 1px solid var(--w-line); font-size: 13px; }
.bwwf-share-label { color: var(--w-muted); margin-right: 4px; }
.bwwf-share a, .bwwf-share button { min-height: 32px; padding: 0 12px; border: 1px solid var(--bwtlp-line-2, rgba(29,31,46,.18)); border-radius: 8px; background: #fff; color: var(--w-ink) !important; font: 500 13px/30px var(--bwtlp-sans, Arial, sans-serif); text-decoration: none; cursor: pointer; }
.bwwf-share a:hover, .bwwf-share button:hover { border-color: var(--w-accent); color: var(--w-accent) !important; }
.bwwf-copied { color: var(--bwtlp-green, #0f8a5f); font-size: 12px; }
/* Cards and index */
.bwwf-related { padding: 8px 0 72px; background: #f7f7fb; border-top: 1px solid var(--w-line); }
.bwwf-related h2 { padding-top: 48px; }
.bwwf-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(270px, 100%), 1fr)); gap: 18px; list-style: none; margin: 0; padding: 0; }
.bwwf-card { display: flex; flex-direction: column; gap: 8px; height: 100%; padding: 0 0 18px; border: 1px solid var(--w-line); border-radius: 14px; background: #fff; color: var(--w-ink); text-decoration: none; overflow: hidden; transition: border-color .15s, box-shadow .15s, transform .15s; }
.bwwf-card:hover { border-color: rgba(91,22,214,.4); box-shadow: 0 8px 24px rgba(40,32,62,.1); transform: translateY(-1px); }
.bwwf-card:focus-visible { outline: 2px solid var(--w-accent); outline-offset: 2px; }
.bwwf-card > :not(.bwwf-card-art) { margin: 0 18px; }
.bwwf-card-art { display: flex; align-items: center; justify-content: center; min-height: 86px; margin-bottom: 6px; border-bottom: 1px solid var(--w-line); background-color: var(--w-canvas); background-image: radial-gradient(#e3dfea 1px, transparent 1px); background-size: 16px 16px; }
.bwwf-card-cat { font-size: 11.5px; color: var(--w-muted); text-transform: uppercase; letter-spacing: .08em; }
.bwwf-card-cat b { margin-left: 6px; padding: 1px 7px; border-radius: 99px; background: var(--w-soft); color: var(--w-accent); letter-spacing: 0; text-transform: none; }
.bwwf-card strong { font-size: 16px; line-height: 1.35; }
.bwwf-card-text { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; font-size: 13.5px; line-height: 1.55; color: var(--w-muted); }
.bwwf-card-foot { margin-top: auto !important; padding-top: 6px; font-size: 12px; color: var(--w-muted); }
.bwwf-flow { display: inline-flex; align-items: center; }
.bwwf-wire { display: block; width: 10px; height: 1.5px; background: #b9b2c6; }
.bwwf-tile, .bwwf-more, .bwwf-when { display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; border-radius: 7px; font: 700 10px/1 var(--bwtlp-sans, Arial, sans-serif); flex: none; }
.bwwf-tile { background: var(--bg); color: var(--ink); }
.bwwf-tile.is-paid { box-shadow: 0 0 0 2px #f59e0b; }
.bwwf-tile.is-hold { outline: 2px dashed #0369a1; outline-offset: 2px; }
.bwwf-when { border: 1.5px solid #b9d6ec; color: #0369a1; background: #eef6fc; border-radius: 50%; }
.bwwf-more { border: 1px solid #cdc7d8; color: var(--w-muted); background: #fff; }
.bwwf-hero-index { padding-bottom: 64px; }
.bwwf-search { margin-top: 26px; max-width: 640px; }
.bwwf-search input { width: 100%; height: 54px; padding: 0 20px; border: 1px solid rgba(255,255,255,.2); border-radius: 14px; background: rgba(255,255,255,.08); color: #fff; font: 400 16px var(--bwtlp-sans, Arial, sans-serif); }
.bwwf-search input::placeholder { color: #b6aed0; }
.bwwf-search input:focus { outline: 2px solid #bc68ff; outline-offset: 2px; background: rgba(255,255,255,.12); }
.bwwf-index { padding: 36px 0 80px; }
.bwwf-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.bwwf-chip { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 0 14px; border: 1px solid var(--w-line); border-radius: 99px; background: #fff; color: var(--w-muted); font: 500 13px var(--bwtlp-sans, Arial, sans-serif); cursor: pointer; }
.bwwf-chip span { font-size: 11px; opacity: .7; }
.bwwf-chip:hover { border-color: rgba(91,22,214,.4); }
.bwwf-chip[aria-pressed="true"] { background: var(--w-ink); border-color: var(--w-ink); color: #fff; }
.bwwf-chip:focus-visible { outline: 2px solid var(--w-accent); outline-offset: 2px; }
.bwwf-count { margin: 18px 0; font-size: 13px; color: var(--w-muted); }
.bwwf-empty { padding: 40px 0; text-align: center; color: var(--w-muted); }
.bwwf-card-item[hidden] { display: none; }
/* Data partners */
.bwwf .bwwf-partners, .bwwf .bwwf-partner-list { list-style: none; margin: 0; padding: 0; }
.bwwf .bwwf-partners > li { margin: 18px 0 0; }
.bwwf .bwwf-partners h3 { margin: 0 0 8px; font-size: 15px; font-weight: 600; }
.bwwf .bwwf-partner-list { display: flex; flex-wrap: wrap; gap: 8px; }
.bwwf .bwwf-partner-list li { display: inline-flex; align-items: center; gap: 7px; min-height: 34px; padding: 0 12px; border: 1px solid var(--w-line); border-radius: 99px; background: #fff; font-size: 13px; }
.bwwf .bwwf-partner-list img { display: block; width: 18px; height: 18px; object-fit: contain; }
.bwwf .bwwf-partner-list .bwwf-partner-more { color: var(--w-muted); background: transparent; }
.bwwf .bwwf-reads { margin-top: 18px; }
.bwwf .bwwf-figure-alt strong { font-size: 24px; }
@media (max-width: 900px) {
	.bwwf-layout { grid-template-columns: 1fr; gap: 12px; padding-top: 36px; }
	.bwwf-side { position: static; order: -1; }
	.bwwf-hero { padding: 40px 0 104px; }
}
@media (max-width: 600px) {
	.bwwf-wrap { width: calc(100% - 32px); }
	.bwwf-lede { font-size: 16px; }
	.bwwf-stage { padding: 20px 14px 8px; max-height: 420px; }
	.bwwf-canvas.is-live .bwwf-stage { height: min(var(--bwwf-h, 360px), 360px); }
	.bwwf-main h2 { font-size: 22px; }
	.bwwf-zoom { bottom: 40px; right: 10px; }
}
@media (prefers-reduced-motion: reduce) { .bwwf-card { transition: none; } .bwwf-card:hover { transform: none; } }

/* The Growth Bridge header is sticky and already occupies its layout space. */
.bwwf-page .bwwf { --bwtlp-sans: var(--font-body,"DM Sans",Arial,sans-serif); font-family:var(--bwtlp-sans); font-weight:400; }
.bwwf-page .bwwf :is(h2,h3,h4,p,li,dt,dd,a,button,input) { font-family:var(--bwtlp-sans); }
.bwwf-page .bwwf h3 { font-style:normal; letter-spacing:-.015em; }
.bwwf-hero-index { text-align:center; }
.bwwf-hero-index :is(h1,.bwwf-lede,.bwwf-search) { margin-left:auto; margin-right:auto; }
.bwwf-hero-index h1 { max-width:24ch; }
.bwwf-side-card > .bwwf-note { margin:18px 0 24px; line-height:1.65; }
.bwwf-share a { display:inline-flex; align-items:center; gap:7px; }
.bwwf-share svg { width:16px; height:16px; fill:currentColor; flex:none; }
.bwwf-cost-assumptions { padding:16px 20px; border:1px solid #d9d2e6; border-radius:12px; background:#f8f6fb; }
.bwwf-page .mega:not(.is-open) .mega-panel,
.bwwf-page .mega:not(.is-open) .mega-panel * { visibility:hidden !important; pointer-events:none !important; }
.wp-child-theme-brandwell-growth-bridge.bwwf-page .bwwf { --bwwf-chrome:76px; padding-top:0; }
.bwwf-page.wp-child-theme-brandwell-growth-bridge .bw-nav { background:#fff; color:#17171d; border-bottom:1px solid #e7e4ed; }
.bwwf-page.wp-child-theme-brandwell-growth-bridge .bw-nav .nav-links>a,
.bwwf-page.wp-child-theme-brandwell-growth-bridge .bw-nav .mega-trigger { color:#2b2a33; }
.bwwf-page.wp-child-theme-brandwell-growth-bridge .bw-nav .brand-logo-dark { display:block; }
.bwwf-page.wp-child-theme-brandwell-growth-bridge .bw-nav .brand-logo-light { display:none; }
.bwwf-search { display:flex; gap:10px; max-width:760px; }
.bwwf-search input[type="search"] { min-width:0; flex:1; }
.bwwf-search button { border:1px solid #bdb1db; border-radius:12px; padding:0 22px; background:#fff; color:#251741; font-size:14px; font-weight:600; cursor:pointer; }
.bwwf-search button:focus-visible { outline:3px solid #bc68ff; outline-offset:3px; }
.bwwf-chip { text-decoration:none; }
.bwwf-chip[aria-current="true"] { background:var(--w-ink); border-color:var(--w-ink); color:#fff; }
.bwwf-result-bar { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin:16px 0; }
.bwwf-pagination { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:28px 0 0; }
.bwwf-result-bar .bwwf-pagination { margin:0; }
.bwwf-pagination a,.bwwf-pagination span[aria-current] { display:inline-flex; align-items:center; justify-content:center; min-width:40px; min-height:40px; padding:6px 12px; border:1px solid #d5cfdf; border-radius:8px; color:#3b294f; background:#fff; text-decoration:none; font-size:13px; }
.bwwf-pagination span[aria-current] { color:#fff; background:#30213f; border-color:#30213f; }
.bwwf-pagination a:hover { background:#f4effb; }
.bwwf-pagination a:focus-visible { outline:3px solid #8d6ab9; outline-offset:3px; }
.bwwf-clear { color:#5b16d6; font-size:13px; text-decoration:underline; text-underline-offset:3px; }
@media(max-width:600px) { .bwwf-search { gap:8px; } .bwwf-search button { padding:0 14px; } }
