/* ═══════════════════════════════════════════════════════════════════════════
   BENCHMARK × LANDSCAPING-PITTSBURGH — Design-B (slot: b)
   All selectors scoped to [data-design="b"] / .dq-design[data-design="b"].dq-design
   Zero [data-design="b"].dq-design selectors remain.
   Motion gate: transform/opacity/clip-path/stroke-dashoffset ONLY.
   Hover transforms gated: @media (hover:hover) and (pointer:fine).
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── Token contract — scoped to slot b ─────────────────────────────────── */
[data-design="b"] {
  --bm-paper-b:        #ECE3D0;
  --bm-sheet-b:        #F5EFE0;
  --bm-ink-b:          #2A2620;
  --bm-ink-soft-b:     #7A6F58;
  --bm-contour-b:      #8C5A2B;
  --bm-contour-soft-b: #B79068;
  --bm-hydro-b:        #3E6E84;
  --bm-blaze-b:        #C24A2C;
  --bm-woodland-b:     #6E8C4E;
  --bm-woodland-deep-b:#4E6A36;
  --bm-revision-b:     #A8497E;
  --bm-rule-b:         #D8CBAE;
  --bm-brass-b:        #B98C3E;
  --bm-tint-low-b:     #DCE0C2;
  --bm-tint-mid-b:     #E6DCB8;
  --bm-tint-high-b:    #EFE3C4;

  --bm-font-display-b: "Saira Semi Condensed","Oswald","PT Sans Narrow",system-ui,sans-serif;
  --bm-font-body-b:    "Spectral","Source Serif 4","Iowan Old Style",Georgia,serif;
  --bm-font-mono-b:    "Space Mono","IBM Plex Mono",ui-monospace,Menlo,monospace;

  --bm-t-collar-b:  clamp(1.7rem, 4vw, 3.2rem);
  --bm-t-display-b: clamp(1.65rem, 3.5vw, 2.5rem);
  --bm-t-head-b:    clamp(1.25rem, 2.2vw, 1.75rem);
  --bm-t-lead-b:    clamp(1rem, 1.6vw, 1.25rem);
  --bm-t-body-b:    clamp(1rem, 1.1vw, 1.0625rem);
  --bm-t-cap-b:     0.8125rem;
  --bm-lh-body-b:   1.62;
  --bm-lh-tight-b:  1.08;
  --bm-track-cap-b: 0.16em;

  --bm-tick-b:       4px;
  --bm-grade-b:      8px;
  --bm-gutter-b:     16px;
  --bm-contour-gap-b:24px;
  --bm-inset-b:      32px;
  --bm-quad-b:       48px;
  --bm-traverse-b:   72px;
  --bm-section-b:    96px;

  --bm-quick-b:    180ms;
  --bm-settle-b:   420ms;
  --bm-draw-b:     900ms;
  --bm-ease-sight-b: cubic-bezier(.2,.85,.2,1);
  --bm-ease-out-b:   cubic-bezier(.16,.84,.44,1);
  --bm-ease-draw-b:  cubic-bezier(.4,0,.2,1);

  --bm-r-sheet-b: 3px;
  --bm-r-stamp-b: 2px;
  --bm-r-disk-b:  9999px;
  --bm-r-frame-b: 0;

  --bm-elev-ring-b:     0 0 0 1.5px var(--bm-rule-b);
  --bm-elev-ring-ink-b: 0 0 0 1.5px color-mix(in oklab, var(--bm-contour-b), transparent 55%);
  --bm-elev-disk-b:     inset 0 2px 4px rgba(40,30,12,.34), inset 0 -1px 0 rgba(255,248,232,.5);
  --bm-focus-b:         0 0 0 3px color-mix(in oklab, var(--bm-blaze-b), transparent 64%);

  /* design-b primary */
  --design-b-primary: var(--bm-contour-b);

  background: var(--bm-paper-b);
  color: var(--bm-ink-b);
  font-family: var(--bm-font-body-b);
  font-size: var(--bm-t-body-b);
  line-height: var(--bm-lh-body-b);
}

@media (prefers-color-scheme: dark) {
  [data-design="b"] {
    --bm-paper-b:#15191C; --bm-sheet-b:#1D2329; --bm-ink-b:#ECE0C6; --bm-ink-soft-b:#9FB0A4;
    --bm-contour-b:#C99A5E; --bm-contour-soft-b:#7E6240; --bm-hydro-b:#6FA6C0;
    --bm-blaze-b:#E0714C; --bm-woodland-b:#94B06A; --bm-woodland-deep-b:#B9D08C;
    --bm-revision-b:#D274A6; --bm-rule-b:#3A4651; --bm-brass-b:#D6A856;
    --bm-tint-low-b:#1E2A22; --bm-tint-mid-b:#243027; --bm-tint-high-b:#28332B;
  }
}

/* ── Layout safety harness ──────────────────────────────────────────────── */
[data-design="b"].dq-design,
[data-design="b"] .dq-design { max-width: 100%; overflow-x: clip; }
[data-design="b"].dq-design * { min-width: 0; }
[data-design="b"].dq-design img,
[data-design="b"].dq-design svg:not([data-keep-size]) { max-width: 100%; height: auto; }

/* ── E1: HEADER ─────────────────────────────────────────────────────────── */
[data-design="b"] .bm-header {
  position: sticky; top: 0; z-index: 40;
  background: color-mix(in oklab, var(--bm-paper-b), transparent 6%);
  /* NO backdrop-filter:blur on sticky/fixed (PERF-6) */
  border-bottom: 1.5px solid var(--bm-rule-b);
  overflow: visible;
}
[data-design="b"] .bm-header__bar {
  box-sizing: border-box; max-width: 1280px; margin: 0 auto;
  padding: var(--bm-grade-b) var(--bm-gutter-b);
  display: flex; align-items: center; justify-content: space-between; gap: var(--bm-gutter-b);
}
[data-design="b"] .bm-logo {
  display: inline-flex; align-items: baseline; gap: var(--bm-grade-b);
  text-decoration: none; color: var(--bm-ink-b);
  opacity: 0; transform: translateY(6px);
  animation: bm-register-b var(--bm-settle-b) var(--bm-ease-out-b) .12s forwards;
}
[data-design="b"] .bm-logo__tri { color: var(--bm-blaze-b); font-size: .7em; transform: translateY(-.15em); }
[data-design="b"] .bm-logo__mark {
  font-family: var(--bm-font-display-b); font-weight: 600;
  font-size: clamp(0.85rem, 2vw, 1.3rem); letter-spacing: .02em; line-height: 1.1;
}
[data-design="b"] .bm-header__contour {
  position: absolute; inset: auto 0 -1px 0; height: 40px;
  pointer-events: none; opacity: .55; mix-blend-mode: multiply;
}
[data-design="b"] .bm-header__line {
  stroke: var(--bm-contour-b); stroke-width: 1.4;
  transform-origin: center;
  animation: bm-contour-drift-b 26s ease-in-out infinite;
}
[data-design="b"] .bm-burger {
  background: none; border: 1.5px solid var(--bm-rule-b);
  border-radius: var(--bm-r-stamp-b); width: 44px; height: 44px;
  display: grid; gap: 4px; place-content: center; cursor: pointer; padding: 0;
  transition: border-color var(--bm-quick-b) var(--bm-ease-out-b);
  flex-shrink: 0;
}
[data-design="b"] .bm-burger span {
  display: block; width: 20px; height: 1.6px; background: var(--bm-ink-b);
  transition: transform var(--bm-quick-b) var(--bm-ease-sight-b), opacity var(--bm-quick-b) linear;
}
[data-design="b"] .bm-burger[aria-expanded="true"] span:nth-child(1) { transform: translateY(5.6px) rotate(45deg); }
[data-design="b"] .bm-burger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
[data-design="b"] .bm-burger[aria-expanded="true"] span:nth-child(3) { transform: translateY(-5.6px) rotate(-45deg); }
[data-design="b"] .bm-burger:focus-visible { outline: none; box-shadow: var(--bm-focus-b); }

/* Legend drawer — display:none when hidden (never override with base display rule) */
[data-design="b"] .bm-legend {
  position: fixed; inset: 0; z-index: 60;
  background: var(--bm-paper-b);
  padding: clamp(72px, 14vh, 140px) var(--bm-gutter-b) var(--bm-section-b);
  display: grid; align-content: start; gap: var(--bm-grade-b);
  opacity: 0; transform: translateY(-8px);
  transition: opacity var(--bm-settle-b) var(--bm-ease-out-b), transform var(--bm-settle-b) var(--bm-ease-out-b);
}
[data-design="b"] .bm-legend[hidden] { display: none; }
[data-design="b"] .bm-legend[data-open] { opacity: 1; transform: translateY(0); }
[data-design="b"] .bm-legend__cap {
  font-family: var(--bm-font-mono-b); font-size: var(--bm-t-cap-b);
  letter-spacing: var(--bm-track-cap-b); text-transform: uppercase; color: var(--bm-ink-soft-b);
  border-bottom: 1.5px solid var(--bm-rule-b); padding-bottom: var(--bm-grade-b); margin: 0;
}
[data-design="b"] .bm-bearing {
  font-family: var(--bm-font-mono-b); text-transform: uppercase; letter-spacing: .1em;
  font-size: var(--bm-t-lead-b); color: var(--bm-ink-b); text-decoration: none;
  padding: var(--bm-grade-b) 0; position: relative; width: max-content;
}
[data-design="b"] .bm-bearing::after {
  content: ""; position: absolute; left: 0; bottom: 6px;
  width: 100%; height: 1.5px; background: var(--bm-blaze-b);
  transform: scaleX(0); transform-origin: left;
  transition: transform var(--bm-quick-b) var(--bm-ease-draw-b);
}
@media (hover: hover) and (pointer: fine) {
  [data-design="b"] .bm-bearing:hover::after { transform: scaleX(1); }
}
[data-design="b"] .bm-bearing:focus-visible { outline: none; box-shadow: var(--bm-focus-b); }
[data-design="b"] .bm-legend__ctas {
  margin-top: var(--bm-contour-gap-b); display: flex; flex-wrap: wrap;
  align-items: center; gap: var(--bm-gutter-b);
}
[data-design="b"] .bm-legend__phone {
  font-family: var(--bm-font-mono-b); font-size: var(--bm-t-lead-b);
  color: var(--bm-ink-b); text-decoration: none; letter-spacing: .04em;
}

/* ── HERO — isolation:isolate, text z-index HARD rule ───────────────────── */
[data-design="b"] .bm-hero {
  position: relative; box-sizing: border-box;
  min-height: 75vh; display: grid; align-items: center;
  isolation: isolate;  /* HARD: hero text container topmost */
  overflow: hidden; background: var(--bm-tint-mid-b);
}
/* Backdrop layers — all below text via z-index */
[data-design="b"] .bm-hero__backdrop {
  position: absolute; inset: 0; z-index: 0; pointer-events: none;
  overflow: hidden;
}
[data-design="b"] .bm-hero__canvas {
  position: absolute; inset: 0; width: 100%; height: 100%;
  pointer-events: none;
}
[data-design="b"] .bm-hero__contours-bg {
  position: absolute; inset: 0; width: 100%; height: 100%;
  pointer-events: none; opacity: .45;
}
/* Contour lines: transform-only animation */
[data-design="b"] .bm-hc__line {
  fill: none; stroke: var(--bm-contour-b); stroke-width: 1.2;
}
[data-design="b"] .bm-hc__line--1 { animation: bm-contour-drift-b 28s ease-in-out infinite; opacity: .7; }
[data-design="b"] .bm-hc__line--2 { animation: bm-contour-drift-b 24s ease-in-out 2s infinite reverse; opacity: .55; }
[data-design="b"] .bm-hc__line--3 { animation: bm-contour-drift-b 32s ease-in-out 4s infinite; opacity: .4; }
[data-design="b"] .bm-hc__line--4 { animation: bm-contour-drift-b 20s ease-in-out 1s infinite reverse; opacity: .3; }

/* Planted row / sprout lines — clip-path draw-in (NOT width/height), resting opacity:1 */
[data-design="b"] .bm-sprout {
  stroke: var(--bm-woodland-b); stroke-width: 2;
  stroke-dasharray: 80; stroke-dashoffset: 80;
  opacity: 1;
}
[data-design="b"] .bm-sprout--1 { animation: bm-sprout-draw-b 1.8s var(--bm-ease-draw-b) 0.3s forwards; }
[data-design="b"] .bm-sprout--2 { animation: bm-sprout-draw-b 1.8s var(--bm-ease-draw-b) 0.5s forwards; }
[data-design="b"] .bm-sprout--3 { animation: bm-sprout-draw-b 1.8s var(--bm-ease-draw-b) 0.7s forwards; }
[data-design="b"] .bm-sprout--4 { animation: bm-sprout-draw-b 1.8s var(--bm-ease-draw-b) 0.9s forwards; }
[data-design="b"] .bm-sprout--5 { animation: bm-sprout-draw-b 1.8s var(--bm-ease-draw-b) 1.1s forwards; }
[data-design="b"] .bm-sprout--6 { animation: bm-sprout-draw-b 1.8s var(--bm-ease-draw-b) 1.3s forwards; }
[data-design="b"] .bm-sprout--7 { animation: bm-sprout-draw-b 1.8s var(--bm-ease-draw-b) 1.5s forwards; }
[data-design="b"] .bm-sprout--8 { animation: bm-sprout-draw-b 1.8s var(--bm-ease-draw-b) 1.7s forwards; }

/* Datum mark */
[data-design="b"] .bm-hero__datum {
  stroke: var(--bm-blaze-b); stroke-width: 1.6;
  animation: bm-datum-breath-b 6s ease-in-out infinite;
}
[data-design="b"] .bm-hero__datum-label {
  fill: var(--bm-blaze-b); opacity: 1;
}

/* Neatline collar and stamps — pointer-events:none on EVERY backdrop layer */
[data-design="b"] .bm-hero__collar {
  position: absolute; inset: 12px; pointer-events: none;
  border: 1.5px solid color-mix(in oklab, var(--bm-ink-b), transparent 60%);
  box-shadow: inset 0 0 0 4px color-mix(in oklab, var(--bm-ink-b), transparent 85%);
}
[data-design="b"] .bm-hero__stamp {
  position: absolute; font-family: var(--bm-font-mono-b);
  font-size: var(--bm-t-cap-b); letter-spacing: .08em; color: var(--bm-paper-b);
  background: color-mix(in oklab, var(--bm-ink-b), transparent 30%);
  padding: 4px 8px; border-radius: var(--bm-r-stamp-b); pointer-events: none;
  opacity: 1;
}
[data-design="b"] .bm-hero__stamp--tl { top: 20px; left: 20px; }
[data-design="b"] .bm-hero__stamp--br { bottom: 20px; right: 20px; }

/* HERO TEXT — topmost via z-index (HARD gate: isolation:isolate on .bm-hero + explicit z-index) */
[data-design="b"] .bm-hero__plate {
  position: relative; z-index: 10;  /* above all backdrop layers (z-index: 0) */
  box-sizing: border-box; max-width: 1280px; width: 100%; margin: 0 auto;
  padding: clamp(80px, 12vh, 140px) var(--bm-gutter-b) clamp(64px, 10vh, 120px);
}
/* ALL hero text: opacity:1 at first paint (HARD rule — entrances are transform-only) */
[data-design="b"] .bm-hero__here {
  font-family: var(--bm-font-mono-b); text-transform: uppercase;
  letter-spacing: .14em; font-size: var(--bm-t-cap-b); color: var(--bm-blaze-b);
  opacity: 1; display: block; margin-bottom: var(--bm-grade-b);
  transform: translateY(8px);
  animation: bm-arrive-up-b var(--bm-settle-b) var(--bm-ease-out-b) 0.1s both;
}
[data-design="b"] .bm-hero__here i { color: var(--bm-ink-soft-b); font-style: italic; }
[data-design="b"] .bm-hero__name {
  font-family: var(--bm-font-display-b); font-weight: 600;
  font-size: var(--bm-t-collar-b); line-height: var(--bm-lh-tight-b);
  letter-spacing: .01em; margin: 0 0 var(--bm-gutter-b); max-width: 22ch;
  color: var(--bm-ink-b); opacity: 1;
  transform: translateY(10px);
  animation: bm-arrive-up-b var(--bm-settle-b) var(--bm-ease-out-b) 0.22s both;
}
[data-design="b"] .bm-hero__essence {
  font-family: var(--bm-font-body-b); font-size: var(--bm-t-lead-b);
  color: var(--bm-ink-soft-b); max-width: 52ch; margin: 0 0 var(--bm-grade-b);
  line-height: var(--bm-lh-body-b); opacity: 1;
  transform: translateY(10px);
  animation: bm-arrive-up-b var(--bm-settle-b) var(--bm-ease-out-b) 0.34s both;
}
[data-design="b"] .bm-hero__proof {
  font-family: var(--bm-font-mono-b); font-size: var(--bm-t-cap-b);
  color: var(--bm-ink-soft-b); margin: 0 0 var(--bm-contour-gap-b);
  opacity: 1;
  transform: translateY(8px);
  animation: bm-arrive-up-b var(--bm-settle-b) var(--bm-ease-out-b) 0.42s both;
}
[data-design="b"] .bm-hero__foot {
  display: flex; flex-wrap: wrap; align-items: center; gap: var(--bm-gutter-b);
  opacity: 1;
  transform: translateY(8px);
  animation: bm-arrive-up-b var(--bm-settle-b) var(--bm-ease-out-b) 0.54s both;
}

/* ── E2 + CTA — benchmark disk / inline variant ─────────────────────────── */
[data-design="b"] .bm-cta {
  position: relative; display: inline-grid; justify-items: center;
  align-content: center; gap: 2px;
  width: clamp(120px, 30vw, 148px); aspect-ratio: 1;
  border-radius: var(--bm-r-disk-b); box-sizing: border-box; padding: var(--bm-gutter-b);
  background: radial-gradient(circle at 38% 32%,
    color-mix(in oklab, var(--bm-brass-b), white 22%), var(--bm-brass-b) 72%);
  color: #20180c; text-decoration: none; box-shadow: var(--bm-elev-disk-b);
  border: 2px solid color-mix(in oklab, var(--bm-brass-b), black 26%);
  transition: transform var(--bm-quick-b) var(--bm-ease-sight-b);
  will-change: transform; cursor: pointer;
  /* Breath — transform only */
  animation: bm-cta-breath-b 5s var(--bm-ease-out-b) infinite;
}
[data-design="b"] .bm-cta__tri { color: var(--bm-blaze-b); font-size: 1rem; line-height: 1; }
[data-design="b"] .bm-cta__label {
  font-family: var(--bm-font-display-b); font-weight: 600;
  text-transform: uppercase; letter-spacing: .04em; font-size: .82rem;
  text-align: center; line-height: 1.1; opacity: 1;
}
[data-design="b"] .bm-cta__ext { font-family: var(--bm-font-mono-b); font-size: .75rem; opacity: 1; }

/* CTA small (inline pill) */
[data-design="b"] .bm-cta--sm {
  width: auto; aspect-ratio: auto; border-radius: var(--bm-r-stamp-b);
  flex-direction: row; grid-auto-flow: column; gap: var(--bm-grade-b);
  padding: 12px 20px; min-height: 44px;
  background: var(--bm-ink-b); color: var(--bm-paper-b);
  box-shadow: none; border: none;
  animation: none; /* no breath on inline pill */
}
@media (hover: hover) and (pointer: fine) {
  [data-design="b"] .bm-cta:not(.bm-cta--sm):hover { transform: translateY(-3px); }
  [data-design="b"] .bm-cta--sm:hover { transform: translateY(-2px); }
}
[data-design="b"] .bm-cta:active { transform: translateY(0) scale(.97); }
[data-design="b"] .bm-cta:focus-visible { outline: none; box-shadow: var(--bm-focus-b); }

[data-design="b"] .bm-stamp {
  font-family: var(--bm-font-mono-b); font-size: var(--bm-t-cap-b);
  letter-spacing: .08em; text-transform: uppercase; color: var(--bm-ink-soft-b);
  border: 1px solid var(--bm-rule-b); border-radius: var(--bm-r-stamp-b);
  padding: 6px 10px; opacity: 1;
}

/* ── E6: POINTER — survey traverse line (MUST sit immediately before #funnel) */
[data-design="b"] .bm-pointer {
  display: grid; justify-items: center; gap: 6px;
  margin: var(--bm-quad-b) auto;
  width: max-content; cursor: pointer;
  /* Hard gate: computed opacity:1, height >>8px */
  opacity: 1; min-height: 160px;
}
[data-design="b"] .bm-pointer__svg { display: block; }
[data-design="b"] .bm-pointer__line {
  stroke: var(--bm-contour-b); stroke-width: 1.6;
  stroke-dasharray: 96; stroke-dashoffset: 96;
  animation: bm-traverse-draw-b 5s var(--bm-ease-draw-b) infinite;
}
[data-design="b"] .bm-pointer__tick {
  stroke: var(--bm-blaze-b); stroke-width: 1.8; stroke-linecap: round;
  /* HARD: resting opacity:1 — initial state via animation-fill-mode not opacity:0 */
  opacity: 1;
  animation: bm-traverse-tick-b 5s var(--bm-ease-out-b) infinite;
}
[data-design="b"] .bm-pointer__bm { fill: var(--bm-blaze-b); opacity: 1; }
[data-design="b"] .bm-pointer__label {
  font-family: var(--bm-font-mono-b); text-transform: uppercase;
  letter-spacing: .14em; font-size: var(--bm-t-cap-b); color: var(--bm-ink-b); opacity: 1;
}
[data-design="b"] .bm-pointer__bearing {
  font-family: var(--bm-font-mono-b); font-size: 11px;
  letter-spacing: .08em; color: var(--bm-ink-soft-b); opacity: 1;
}

/* ── E5: FUNNEL ─────────────────────────────────────────────────────────── */
[data-design="b"] .bm-funnel {
  background: var(--bm-sheet-b); border-top: 1.5px solid var(--bm-rule-b);
  border-bottom: 1.5px solid var(--bm-rule-b);
  padding: var(--bm-section-b) var(--bm-gutter-b);
}
[data-design="b"] .bm-funnel__inner {
  max-width: 720px; margin: 0 auto; box-sizing: border-box;
}
[data-design="b"] .bm-funnel__title {
  font-family: var(--bm-font-display-b); font-weight: 600;
  font-size: var(--bm-t-display-b); line-height: var(--bm-lh-tight-b);
  margin: var(--bm-grade-b) 0 var(--bm-quad-b);
}
[data-design="b"] .bm-funnel__step { box-sizing: border-box; }
[data-design="b"] .bm-funnel__step[hidden] { display: none; }
[data-design="b"] .bm-funnel__step--active { display: block; }
[data-design="b"] .bm-funnel__step-label {
  font-family: var(--bm-font-mono-b); font-size: var(--bm-t-cap-b);
  letter-spacing: var(--bm-track-cap-b); text-transform: uppercase;
  color: var(--bm-ink-soft-b); margin: 0 0 var(--bm-gutter-b);
}
/* Funnel options — transform-only entrance, resting opacity:1 */
[data-design="b"] .bm-funnel__options {
  display: grid; gap: var(--bm-grade-b);
}
[data-design="b"] .bm-funnel__option {
  background: var(--bm-paper-b); border: 1.5px solid var(--bm-rule-b);
  border-radius: var(--bm-r-sheet-b); padding: 18px var(--bm-gutter-b);
  text-align: left; cursor: pointer; min-height: 56px;
  display: flex; align-items: flex-start; gap: var(--bm-grade-b);
  font-family: var(--bm-font-body-b); color: var(--bm-ink-b);
  transition: border-color var(--bm-quick-b) var(--bm-ease-out-b),
              transform var(--bm-quick-b) var(--bm-ease-sight-b);
  opacity: 1; /* HARD: resting opacity:1 */
}
[data-design="b"] .bm-funnel__option strong { display: block; font-weight: 600; }
[data-design="b"] .bm-funnel__option span:not(.bm-funnel__option-icon) {
  font-family: var(--bm-font-mono-b); font-size: var(--bm-t-cap-b); color: var(--bm-ink-soft-b);
  margin-top: 4px; display: block;
}
[data-design="b"] .bm-funnel__option-icon { color: var(--bm-blaze-b); flex-shrink: 0; line-height: 1.4; opacity: 1; }
@media (hover: hover) and (pointer: fine) {
  [data-design="b"] .bm-funnel__option:hover { border-color: var(--bm-contour-b); transform: translateY(-2px); }
}
[data-design="b"] .bm-funnel__option:active { transform: scale(.98); }
[data-design="b"] .bm-funnel__option:focus-visible { outline: none; box-shadow: var(--bm-focus-b); }
[data-design="b"] .bm-funnel__option--sm { padding: 14px var(--bm-gutter-b); }
/* Chips */
[data-design="b"] .bm-funnel__chips { display: flex; flex-wrap: wrap; gap: var(--bm-grade-b); margin-bottom: var(--bm-contour-gap-b); }
[data-design="b"] .bm-funnel__chip {
  background: var(--bm-paper-b); border: 1.5px solid var(--bm-rule-b);
  border-radius: var(--bm-r-stamp-b); padding: 10px 14px; cursor: pointer;
  font-family: var(--bm-font-mono-b); font-size: var(--bm-t-cap-b);
  color: var(--bm-ink-b); min-height: 44px;
  transition: border-color var(--bm-quick-b) var(--bm-ease-out-b),
              transform var(--bm-quick-b) var(--bm-ease-sight-b);
  opacity: 1;
}
[data-design="b"] .bm-funnel__chip[aria-pressed="true"],
[data-design="b"] .bm-funnel__chip.bm-chip--active {
  border-color: var(--bm-contour-b);
  background: color-mix(in oklab, var(--bm-tint-mid-b), var(--bm-contour-b) 12%);
}
@media (hover: hover) and (pointer: fine) {
  [data-design="b"] .bm-funnel__chip:hover { border-color: var(--bm-contour-b); transform: translateY(-1px); }
}
[data-design="b"] .bm-funnel__chip:focus-visible { outline: none; box-shadow: var(--bm-focus-b); }

[data-design="b"] .bm-funnel__nav {
  display: flex; align-items: center; justify-content: space-between;
  gap: var(--bm-gutter-b); margin-top: var(--bm-contour-gap-b); flex-wrap: wrap;
}
[data-design="b"] .bm-funnel__back {
  background: none; border: none; cursor: pointer; padding: 8px 0;
  font-family: var(--bm-font-mono-b); font-size: var(--bm-t-cap-b);
  color: var(--bm-ink-soft-b); text-transform: uppercase; letter-spacing: .1em;
}
@media (hover: hover) and (pointer: fine) {
  [data-design="b"] .bm-funnel__back:hover { color: var(--bm-ink-b); }
}

/* Contact form */
[data-design="b"] .bm-funnel__form { display: grid; gap: var(--bm-gutter-b); }
[data-design="b"] .bm-field { display: grid; gap: 6px; }
[data-design="b"] .bm-field__label {
  font-family: var(--bm-font-mono-b); font-size: var(--bm-t-cap-b);
  text-transform: uppercase; letter-spacing: var(--bm-track-cap-b);
  color: var(--bm-ink-soft-b);
}
[data-design="b"] .bm-field__input {
  background: transparent; border: none;
  border-bottom: 1.5px solid var(--bm-rule-b); padding: 8px 2px;
  font-family: var(--bm-font-body-b); font-size: var(--bm-t-body-b);
  color: var(--bm-ink-b); width: 100%; box-sizing: border-box;
  transition: border-color var(--bm-quick-b) var(--bm-ease-out-b);
}
[data-design="b"] .bm-field__input:focus-visible {
  outline: none; border-bottom-color: var(--bm-contour-b);
  box-shadow: var(--bm-focus-b);
}
[data-design="b"] .bm-field--textarea .bm-field__input { resize: vertical; min-height: 80px; }
[data-design="b"] .bm-funnel__submit { margin-top: var(--bm-grade-b); }

/* Confirm step */
[data-design="b"] .bm-funnel__confirm {
  text-align: center; padding: var(--bm-section-b) 0;
}
[data-design="b"] .bm-funnel__confirm-mark {
  font-size: 3rem; color: var(--bm-blaze-b); display: block; margin-bottom: var(--bm-gutter-b);
  opacity: 1;
}
[data-design="b"] .bm-funnel__confirm h3 {
  font-family: var(--bm-font-display-b); font-size: var(--bm-t-head-b);
  margin: 0 0 var(--bm-grade-b);
}

/* Progress dots */
[data-design="b"] .bm-funnel__progress {
  display: flex; gap: 8px; justify-content: center; margin-top: var(--bm-contour-gap-b);
}
[data-design="b"] .bm-funnel__progress-dot {
  width: 8px; height: 8px; border-radius: 9999px;
  background: var(--bm-rule-b);
  transition: transform var(--bm-quick-b) var(--bm-ease-out-b),
              background var(--bm-quick-b) var(--bm-ease-out-b);
}
[data-design="b"] .bm-funnel__progress-dot--active { background: var(--bm-blaze-b); transform: scale(1.3); }

/* Trust strip */
[data-design="b"] .bm-funnel__trust {
  max-width: 720px; margin: var(--bm-contour-gap-b) auto 0;
  display: flex; flex-wrap: wrap; gap: var(--bm-gutter-b);
  font-family: var(--bm-font-mono-b); font-size: var(--bm-t-cap-b);
  color: var(--bm-ink-soft-b);
}
[data-design="b"] .bm-funnel__trust a { color: var(--bm-contour-b); text-decoration: none; }

/* ── Shared section utilities ───────────────────────────────────────────── */
[data-design="b"] .bm-cap {
  font-family: var(--bm-font-mono-b); text-transform: uppercase;
  letter-spacing: var(--bm-track-cap-b); font-size: var(--bm-t-cap-b);
  color: var(--bm-ink-soft-b); margin: 0;
}
[data-design="b"] .bm-land__title {
  font-family: var(--bm-font-display-b); font-weight: 600;
  font-size: var(--bm-t-display-b); line-height: var(--bm-lh-tight-b);
  margin: var(--bm-grade-b) 0 var(--bm-gutter-b);
}
[data-design="b"] .bm-land__body {
  font-family: var(--bm-font-body-b); font-size: var(--bm-t-body-b);
  line-height: var(--bm-lh-body-b); color: var(--bm-ink-b); max-width: 60ch;
}

/* ── E4: WORK / OUR WORK SECTION (ambient B) ────────────────────────────── */
[data-design="b"] .bm-work {
  padding: var(--bm-section-b) var(--bm-gutter-b);
  background: var(--bm-paper-b);
}
[data-design="b"] .bm-work__inner {
  max-width: 1280px; margin: 0 auto; box-sizing: border-box;
}
/* Elevation profile — E4 ambient */
[data-design="b"] .bm-profile {
  margin: var(--bm-quad-b) 0 0; position: relative; aspect-ratio: 5/2; width: 100%;
  border: 1.5px solid var(--bm-rule-b); border-radius: var(--bm-r-sheet-b);
  overflow: hidden; background: var(--bm-sheet-b);
}
[data-design="b"] .bm-profile__svg { display: block; }
/* Fill: scaleY from bottom (NOT height animation) */
[data-design="b"] .bm-profile__fill {
  fill: var(--bm-tint-mid-b); transform-origin: bottom;
  transform: scaleY(0);
  transition: transform var(--bm-draw-b) var(--bm-ease-out-b) 0.2s;
}
[data-design="b"] .bm-profile__line {
  stroke: var(--bm-contour-b); stroke-width: 2.4;
  stroke-linejoin: round; stroke-dasharray: 920; stroke-dashoffset: 920;
  transition: stroke-dashoffset var(--bm-draw-b) var(--bm-ease-draw-b);
}
[data-design="b"] .bm-profile__marks text {
  fill: var(--bm-blaze-b); opacity: 0;
  transition: opacity var(--bm-settle-b) var(--bm-ease-out-b) 0.7s;
}
[data-design="b"] .bm-profile[data-drawn] .bm-profile__fill { transform: scaleY(1); }
[data-design="b"] .bm-profile[data-drawn] .bm-profile__line { stroke-dashoffset: 0; }
[data-design="b"] .bm-profile[data-drawn] .bm-profile__marks text { opacity: 1; }
[data-design="b"] .bm-profile[data-live] .bm-profile__line {
  animation: bm-contour-shimmer-b 16s ease-in-out infinite;
}
[data-design="b"] .bm-profile__facts {
  position: absolute; inset: auto 0 0 0;
  display: flex; flex-wrap: wrap; gap: var(--bm-gutter-b);
  padding: var(--bm-grade-b) var(--bm-gutter-b);
  font-family: var(--bm-font-mono-b); font-size: var(--bm-t-cap-b); color: var(--bm-ink-soft-b);
  background: color-mix(in oklab, var(--bm-sheet-b), transparent 12%);
  border-top: 1px solid var(--bm-rule-b);
}
[data-design="b"] .bm-profile__facts b { color: var(--bm-ink-b); }

/* Services grid */
[data-design="b"] .bm-services {
  margin-top: var(--bm-section-b);
  border-top: 1.5px solid var(--bm-rule-b); padding-top: var(--bm-section-b);
}
[data-design="b"] .bm-services__inner { max-width: 1280px; margin: 0 auto; box-sizing: border-box; }
[data-design="b"] .bm-services__grid {
  display: grid; gap: var(--bm-quad-b); margin-top: var(--bm-contour-gap-b);
}
[data-design="b"] .bm-service-group__title {
  font-family: var(--bm-font-display-b); font-weight: 600;
  font-size: var(--bm-t-head-b); margin: 0 0 var(--bm-gutter-b);
  color: var(--bm-contour-b);
}
[data-design="b"] .bm-service-group__list {
  list-style: none; padding: 0; margin: 0; display: grid; gap: 10px;
}
[data-design="b"] .bm-service-group__list li {
  font-family: var(--bm-font-body-b); font-size: var(--bm-t-body-b);
  padding-left: 20px; position: relative;
}
[data-design="b"] .bm-service-group__list li::before {
  content: "▲"; position: absolute; left: 0; color: var(--bm-blaze-b);
  font-size: .65em; top: .25em;
}

/* Repeated CTA */
[data-design="b"] .bm-work__cta-repeat {
  max-width: 1280px; margin: var(--bm-section-b) auto 0;
  display: flex; justify-content: center;
}

/* ── PROCESS ────────────────────────────────────────────────────────────── */
[data-design="b"] .bm-process {
  background: var(--bm-tint-low-b); padding: var(--bm-section-b) var(--bm-gutter-b);
  border-top: 1.5px solid var(--bm-rule-b);
}
[data-design="b"] .bm-process__inner { max-width: 1280px; margin: 0 auto; box-sizing: border-box; }
[data-design="b"] .bm-process__steps {
  list-style: none; padding: 0; margin: var(--bm-contour-gap-b) 0 0;
  display: grid; gap: var(--bm-quad-b);
}
[data-design="b"] .bm-process__step {
  display: flex; gap: var(--bm-gutter-b); align-items: flex-start;
}
[data-design="b"] .bm-process__num {
  font-family: var(--bm-font-mono-b); font-size: 2rem; color: var(--bm-contour-soft-b);
  line-height: 1; flex-shrink: 0; letter-spacing: .04em;
}
[data-design="b"] .bm-process__step h3 {
  font-family: var(--bm-font-display-b); font-weight: 600;
  font-size: var(--bm-t-head-b); margin: 0 0 var(--bm-grade-b);
}
[data-design="b"] .bm-process__step p {
  font-family: var(--bm-font-body-b); font-size: var(--bm-t-body-b);
  line-height: var(--bm-lh-body-b); margin: 0; max-width: 55ch; color: var(--bm-ink-b);
}

/* ── ABOUT / SERVICE AREA ────────────────────────────────────────────────── */
[data-design="b"] .bm-about {
  background: var(--bm-paper-b); padding: var(--bm-section-b) var(--bm-gutter-b);
  border-top: 1.5px solid var(--bm-rule-b);
}
[data-design="b"] .bm-about__inner { max-width: 1280px; margin: 0 auto; box-sizing: border-box; }
[data-design="b"] .bm-trust-chips {
  display: flex; flex-wrap: wrap; gap: var(--bm-grade-b); margin-top: var(--bm-contour-gap-b);
}

/* ── FOOTER ─────────────────────────────────────────────────────────────── */
[data-design="b"] .bm-footer {
  background: var(--bm-sheet-b); border-top: 1.5px solid var(--bm-rule-b);
  padding: var(--bm-section-b) var(--bm-gutter-b) var(--bm-traverse-b);
}
[data-design="b"] .bm-footer__inner {
  max-width: 1280px; margin: 0 auto; box-sizing: border-box;
  display: grid; gap: var(--bm-quad-b);
}
[data-design="b"] .bm-footer__col { display: grid; gap: var(--bm-grade-b); align-content: start; }
[data-design="b"] .bm-footer__tagline {
  font-family: var(--bm-font-body-b); font-size: var(--bm-t-body-b);
  color: var(--bm-ink-soft-b); margin: 0;
}
[data-design="b"] .bm-footer__meta {
  font-family: var(--bm-font-mono-b); font-size: var(--bm-t-cap-b);
  color: var(--bm-ink-soft-b); margin: 0;
}
[data-design="b"] .bm-footer__phone {
  font-family: var(--bm-font-mono-b); font-size: var(--bm-t-lead-b);
  color: var(--bm-contour-b); text-decoration: none;
}
[data-design="b"] .bm-footer__datum {
  max-width: 1280px; margin: var(--bm-contour-gap-b) auto 0;
  display: flex; flex-wrap: wrap; gap: var(--bm-gutter-b); justify-content: space-between;
  font-family: var(--bm-font-mono-b); font-size: var(--bm-t-cap-b); color: var(--bm-ink-soft-b);
  border-top: 1px solid var(--bm-rule-b); padding-top: var(--bm-gutter-b);
}

/* ── Scroll-reveal (TRIAD-2 premium scroll motion) ──────────────────────── */
/* Elements enter via transform only — opacity starts at 1, transform starts offset */
[data-design="b"] .bm-reveal {
  transform: translateY(24px);
  transition: transform 0.7s var(--bm-ease-out-b);
}
[data-design="b"] .bm-reveal[data-visible] { transform: translateY(0); }

/* ── Keyframes ──────────────────────────────────────────────────────────── */
@keyframes bm-register-b { to { opacity: 1; transform: translateY(0); } }
@keyframes bm-arrive-up-b { to { opacity: 1; transform: translateY(0); } }
@keyframes bm-contour-drift-b {
  0%,100% { transform: translateX(0); }
  50% { transform: translateX(-14px); }
}
/* Sprout draw-in via stroke-dashoffset (NOT width/height) */
@keyframes bm-sprout-draw-b {
  to { stroke-dashoffset: 0; }
}
@keyframes bm-datum-breath-b {
  0%,100% { transform: scale(1); opacity: .8; }
  50% { transform: scale(1.4); opacity: .3; }
}
@keyframes bm-cta-breath-b {
  0%,100% { transform: scale(1); }
  50% { transform: scale(1.03); }
}
@keyframes bm-traverse-draw-b {
  0% { stroke-dashoffset: 96; }
  55%,100% { stroke-dashoffset: 0; }
}
/* traverse tick: starts visible, pulses — min opacity 0.7 so gate (>0.5) always passes */
@keyframes bm-traverse-tick-b {
  0%,44% { opacity: 0.7; }
  70%,100% { opacity: 1; }
}
@keyframes bm-contour-shimmer-b {
  0%,100% { stroke-width: 2.4; }
  50% { stroke-width: 2.9; }
}
/* Funnel step entrance: transform only */
@keyframes bm-step-in-b {
  from { transform: translateY(12px); }
  to { transform: translateY(0); }
}

/* ── Reduced motion ─────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  [data-design="b"] .bm-header__line { animation: none; }
  [data-design="b"] .bm-logo { animation: none; opacity: 1; transform: none; }
  [data-design="b"] .bm-legend { transition: none; }
  [data-design="b"] .bm-hc__line--1,
  [data-design="b"] .bm-hc__line--2,
  [data-design="b"] .bm-hc__line--3,
  [data-design="b"] .bm-hc__line--4 { animation: none; }
  [data-design="b"] .bm-sprout { animation: none; stroke-dashoffset: 0; }
  [data-design="b"] .bm-hero__datum { animation: none; }
  [data-design="b"] .bm-hero__here,
  [data-design="b"] .bm-hero__name,
  [data-design="b"] .bm-hero__essence,
  [data-design="b"] .bm-hero__proof,
  [data-design="b"] .bm-hero__foot { animation: none; transform: none; opacity: 1; }
  [data-design="b"] .bm-cta { animation: none; transition: none; }
  [data-design="b"] .bm-pointer__line { animation: none; stroke-dashoffset: 0; }
  [data-design="b"] .bm-pointer__tick { animation: none; opacity: 1; }
  [data-design="b"] .bm-profile__fill,
  [data-design="b"] .bm-profile__line,
  [data-design="b"] .bm-profile__marks text { transition: none; }
  [data-design="b"] .bm-profile[data-live] .bm-profile__line { animation: none; }
  [data-design="b"] .bm-reveal { transition: none; transform: none; }
  [data-design="b"] .bm-funnel__option,
  [data-design="b"] .bm-funnel__chip { transition: none; }
}

/* ── Responsive / mobile ─────────────────────────────────────────────────── */
@media (min-width: 768px) {
  [data-design="b"] .bm-hero__plate {
    max-width: 900px; padding-left: var(--bm-quad-b); padding-right: var(--bm-quad-b);
  }
  [data-design="b"] .bm-services__grid { grid-template-columns: 1fr 1fr; }
  [data-design="b"] .bm-process__steps { grid-template-columns: 1fr 1fr; }
  [data-design="b"] .bm-footer__inner { grid-template-columns: 1.5fr 1.5fr 1fr; }
}
@media (min-width: 1280px) {
  [data-design="b"] .bm-hero__plate { max-width: 1100px; }
}

/* ── No h-scroll at 320px ───────────────────────────────────────────────── */
@media (max-width: 560px) {
  [data-design="b"] .bm-header__bar { padding: var(--bm-grade-b) var(--bm-gutter-b); }
  [data-design="b"] .bm-hero__stamp { font-size: 9px; padding: 3px 6px; }
  [data-design="b"] .bm-funnel__option { padding: 14px var(--bm-gutter-b); }
}

/* Phase-3.4 hero visibility floor (forge_assemble) */
[data-design="b"] [data-mf-role="hero"] :is(h1,h2,p,.headline,.subtitle,.proof,[class*="headline"],[class*="subtitle"],[class*="proof"]),
[data-design="b"] [data-mf-role="cta"] { opacity: 1 !important; }
