/* ================================================================
   Santana Concrete Inc — Design A
   Base design: Bazalgette — Main Drainage (civic-cathedral,
   hand-engraved, drafted). REMAPPED from [data-design="bazalgette-
   drainage"] to slot [data-design="a"]. Keyframes prefixed bz-.
   Trade: construction. Hero: themed-movement v0.2.1 (one animated
   layer, arrival THEN sustained perceptible ambient motion).
   Photo substrate LOW — visual weight is drafted line-work + type.
   No drop shadows (depth = inscribed hairlines). No framework.
   ================================================================ */

/* ---- Design tokens (Bazalgette palette, concrete register) ---- */
[data-design="a"] {
  --bz-vellum:   #f3ead4;  /* surface — engraving paper / cured-concrete cream */
  --bz-brick:    #c4a062;  /* secondary accent — yellow-brick warmth */
  --bz-iron:     #1c2528;  /* ink — oxidized iron; primary type */
  --bz-indigo:   #1d2848;  /* primary brand — Prussian indigo (conviction) */
  --bz-glaze:    #245c5e;  /* tertiary — De Morgan tile glaze */
  --bz-brass:    #8b6a2f;  /* highlight — oxidized brass plate */
  --bz-rule:     #c8b88a;  /* hairline — chart-paper rule */
  --bz-muted:    #6b6557;  /* muted text — captions, metadata */
  --bz-critical: #a82e1e;  /* critical — sealing-wax red (sparingly) */
  --bz-success:  #4a6b3a;  /* success — verdigris bronze */

  /* exposed primary for the slot */
  --design-a-primary: var(--bz-indigo);

  /* spacing — 6px base unit (drafted, not modular) */
  --bz-course: 6px;
  --bz-row: 12px;
  --bz-band: 24px;
  --bz-bay: 48px;
  --bz-vault: 96px;
  --bz-nave: 144px;

  /* motion */
  --bz-ease-engine: cubic-bezier(0.4, 0, 0.2, 1);
  --bz-ease-inscribe: cubic-bezier(0.65, 0, 0.35, 1);
  --bz-ease-settle: cubic-bezier(0.16, 1, 0.3, 1);
  --bz-pulse: 4600ms;
  --bz-inscribe: 1400ms;
  --bz-settle: 280ms;
  --bz-fast: 140ms;

  /* radius */
  --bz-radius-1: 2px;
  --bz-radius-cartouche: 4px;

  /* type families */
  --bz-display: 'Cormorant SC', 'Trajan Pro', 'Cinzel', Georgia, serif;
  --bz-headline: 'Roboto Slab', 'Rockwell', 'Clarendon', Georgia, serif;
  --bz-body: 'Source Serif Pro', 'Charter', Georgia, serif;
  --bz-mono: ui-monospace, 'JetBrains Mono', 'IBM Plex Mono', Menlo, monospace;
}

/* ---- Base ---- */
[data-design="a"].dq-design,
[data-design="a"] .dq-design {
  background: var(--bz-vellum);
  color: var(--bz-iron);
  font-family: var(--bz-body);
  font-size: 17px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}
[data-design="a"] *,
[data-design="a"] *::before,
[data-design="a"] *::after { box-sizing: border-box; }

[data-design="a"] h1,
[data-design="a"] h2,
[data-design="a"] h3 { margin: 0; }
[data-design="a"] p { margin: 0; }
[data-design="a"] a { color: var(--bz-indigo); }

[data-design="a"] .bz-eyebrow {
  font-family: var(--bz-display);
  text-transform: uppercase;
  letter-spacing: 0.18em;
  font-size: 13px;
  color: var(--bz-brass);
  display: inline-block;
}

/* ================================================================
   ELEMENT 1 — Animated minimalist header
   ================================================================ */
[data-design="a"] .bz-header {
  position: relative;
  background: var(--bz-vellum);
  border-bottom: 1px solid var(--bz-rule);
  overflow: hidden;
  isolation: isolate;
}
[data-design="a"] .bz-header__sweep {
  position: absolute; inset: 0;
  background: linear-gradient(90deg,
    transparent 0%,
    color-mix(in oklab, var(--bz-brass), transparent 88%) 40%,
    color-mix(in oklab, var(--bz-brass), transparent 60%) 50%,
    color-mix(in oklab, var(--bz-brass), transparent 88%) 60%,
    transparent 100%);
  background-size: 220% 100%;
  animation: bz-header-sweep 26s linear infinite;
  pointer-events: none; z-index: 0;
}
[data-design="a"] .bz-header__crosshatch {
  position: absolute; inset: 0;
  background-image:
    repeating-linear-gradient(45deg,
      color-mix(in oklab, var(--bz-rule), transparent 75%) 0 1px,
      transparent 1px 11px),
    repeating-linear-gradient(-45deg,
      color-mix(in oklab, var(--bz-rule), transparent 80%) 0 1px,
      transparent 1px 14px);
  opacity: 0.4;
  animation: bz-header-breathe 19s ease-in-out infinite;
  pointer-events: none; z-index: 0;
}
[data-design="a"] .bz-header__bar {
  position: relative; z-index: 1;
  display: flex; align-items: center; justify-content: space-between;
  max-width: 1200px; margin: 0 auto;
  padding: clamp(12px, 2vw, 22px) clamp(16px, 4vw, 40px);
  gap: 16px;
}
[data-design="a"] .bz-logo { text-decoration: none; color: var(--bz-iron); }
[data-design="a"] .bz-logo__mark {
  font-family: var(--bz-display);
  font-weight: 600;
  letter-spacing: 0.16em;
  font-size: clamp(18px, 2.2vw, 26px);
  text-transform: uppercase;
}
[data-design="a"] .bz-hamburger {
  background: transparent; border: 1px solid var(--bz-rule);
  width: 44px; height: 44px;
  display: inline-flex; flex-direction: column;
  align-items: center; justify-content: center; gap: 5px;
  cursor: pointer;
  border-radius: var(--bz-radius-1);
  transition: border-color var(--bz-fast) var(--bz-ease-settle);
}
[data-design="a"] .bz-hamburger:hover,
[data-design="a"] .bz-hamburger:focus-visible { border-color: var(--bz-brass); outline: none; }
[data-design="a"] .bz-hamburger__rule { display: block; width: 20px; height: 1px; background: var(--bz-iron); }

/* Drawer */
[data-design="a"] .bz-drawer[hidden] { display: none; }
[data-design="a"] .bz-drawer {
  position: fixed; inset: 0; z-index: 60;
  background: color-mix(in oklab, var(--bz-iron), transparent 30%);
  display: flex; justify-content: flex-end;
}
[data-design="a"] .bz-drawer__plate {
  background: var(--bz-vellum);
  width: min(420px, 88vw); height: 100%;
  padding: 48px 32px;
  border-left: 1px solid var(--bz-rule);
  display: flex; flex-direction: column; gap: 24px;
  overflow-y: auto;
  animation: bz-drawer-tip-in 320ms var(--bz-ease-settle) forwards;
}
[data-design="a"] .bz-drawer__eyebrow {
  font-family: var(--bz-display);
  text-transform: uppercase; letter-spacing: 0.18em;
  font-size: 13px; color: var(--bz-muted);
}
[data-design="a"] .bz-drawer__nav { display: flex; flex-direction: column; gap: 14px; }
[data-design="a"] .bz-drawer__link {
  font-family: var(--bz-display);
  font-size: clamp(22px, 5vw, 28px); letter-spacing: 0.08em; text-transform: uppercase;
  color: var(--bz-iron); text-decoration: none;
  display: flex; align-items: baseline; gap: 14px;
  padding-bottom: 8px; border-bottom: 1px solid var(--bz-rule);
}
[data-design="a"] .bz-drawer__link:hover { color: var(--bz-indigo); border-bottom-color: var(--bz-brass); }
[data-design="a"] .bz-drawer__num { font-family: var(--bz-mono); font-size: 14px; color: var(--bz-brass); min-width: 28px; }
[data-design="a"] .bz-drawer__cta-row { display: flex; flex-direction: column; gap: 18px; }
[data-design="a"] .bz-drawer__phone {
  display: flex; flex-direction: column; gap: 4px; text-decoration: none; color: var(--bz-iron);
}
[data-design="a"] .bz-drawer__phone-num { font-family: var(--bz-mono); font-size: 20px; color: var(--bz-iron); }
[data-design="a"] .bz-drawer__lic { font-family: var(--bz-mono); font-size: 13px; color: var(--bz-muted); }
[data-design="a"] .bz-drawer__close {
  margin-top: auto; align-self: flex-start;
  background: transparent; border: 1px solid var(--bz-rule);
  padding: 12px 18px; cursor: pointer; min-height: 44px;
  font-family: var(--bz-display); letter-spacing: 0.14em;
  text-transform: uppercase; font-size: 13px; color: var(--bz-iron);
}
[data-design="a"] .bz-drawer__close:hover { border-color: var(--bz-brass); }

@keyframes bz-header-sweep { from { background-position: -110% 0; } to { background-position: 110% 0; } }
@keyframes bz-header-breathe { 0%, 100% { opacity: 0.28; } 50% { opacity: 0.46; } }
@keyframes bz-drawer-tip-in { from { transform: translateX(40px); opacity: 0; } to { transform: translateX(0); opacity: 1; } }

/* ================================================================
   ELEMENT 2 — Animated CTA (brass cartouche, funnel anchor)
   ================================================================ */
[data-design="a"] .bz-cta {
  position: relative; isolation: isolate;
  display: inline-flex; align-items: center; gap: 14px;
  padding: 16px 28px; min-height: 44px;
  border-radius: var(--bz-radius-cartouche);
  background: var(--bz-indigo); color: var(--bz-vellum);
  font-family: var(--bz-display);
  font-size: 16px; letter-spacing: 0.18em; text-transform: uppercase;
  text-decoration: none; cursor: pointer; overflow: hidden;
  transition: transform 220ms var(--bz-ease-settle), background 200ms ease;
  will-change: transform;
}
[data-design="a"] .bz-cta__inset {
  position: absolute; inset: 4px; pointer-events: none;
  border: 1px solid var(--bz-brass); border-radius: 2px;
  animation: bz-cta-pulse 4600ms var(--bz-ease-engine) infinite;
}
[data-design="a"] .bz-cta__arrow { display: inline-flex; transition: transform 220ms var(--bz-ease-settle); }
[data-design="a"] .bz-cta:hover .bz-cta__arrow,
[data-design="a"] .bz-cta:focus-visible .bz-cta__arrow { transform: translateX(4px); }
[data-design="a"] .bz-cta:hover .bz-cta__inset,
[data-design="a"] .bz-cta:focus-visible .bz-cta__inset {
  border-color: color-mix(in oklab, var(--bz-brass), white 25%);
  animation-duration: 2400ms;
}
[data-design="a"] .bz-cta:focus-visible { outline: 2px solid var(--bz-brass); outline-offset: 4px; }
[data-design="a"] .bz-cta:active { transform: translateY(2px) scale(0.99); }
[data-design="a"] .bz-cta__ink {
  position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(circle at var(--ink-x, 50%) var(--ink-y, 50%),
    color-mix(in oklab, var(--bz-vellum), transparent 70%) 0%, transparent 60%);
  opacity: 0;
}
[data-design="a"] .bz-cta.bz-stamping .bz-cta__ink { animation: bz-cta-ink 480ms var(--bz-ease-settle) 1; }
[data-design="a"] .bz-cta__stamp { display: none; }

@keyframes bz-cta-pulse { 0%, 100% { transform: scale(1); opacity: 0.8; } 50% { transform: scale(1.012); opacity: 1; } }
@keyframes bz-cta-ink { 0% { opacity: 0.8; transform: scale(0.4); } 100% { opacity: 0; transform: scale(2.2); } }

/* ================================================================
   HERO — Element 3 backdrop (drafted concrete section) + 3 text + CTA
   themed-movement v0.2.1: one animated layer, arrival then sustained
   ambient (datum sweep + breathing crosshatch fill).
   ================================================================ */
[data-design="a"] .bz-hero {
  position: relative; isolation: isolate;
  overflow: hidden;
  min-height: clamp(560px, 82vh, 760px);
  display: flex; align-items: center;
  padding: clamp(64px, 9vw, 120px) clamp(16px, 4vw, 40px) clamp(56px, 8vw, 96px);
  border-bottom: 1px solid var(--bz-rule);
}
[data-design="a"] .bz-hero__backdrop { position: absolute; inset: 0; z-index: 0; pointer-events: none; }
/* static low-chroma color field beneath the animated layer */
[data-design="a"] .bz-hero__field {
  position: absolute; inset: 0;
  background:
    radial-gradient(120% 90% at 78% 18%, color-mix(in oklab, var(--bz-brick), transparent 78%) 0%, transparent 55%),
    linear-gradient(180deg, color-mix(in oklab, var(--bz-indigo), transparent 92%) 0%, transparent 60%),
    var(--bz-vellum);
}
/* wet-cure sheen — a brass leveling band sweeps across the slab forever.
   background-position animation (same reliable technique as the header
   sweep). This is the primary, guaranteed sustained-ambient motion. */
/* screed pass — a raked band of parallel datum lines travels across the slab
   like a bull-float drawing texture into a fresh pour. ONE animated layer (one
   background-position sweep on one element); the internal repetition means any
   horizontal shift moves many edges, so the ambient motion is unmistakably
   perceptible at every sample interval — not a faint wash, not a phase-fragile
   single edge. High-contrast indigo/brass against the cream. One motif. */
[data-design="a"] .bz-hero__sheen {
  position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background:
    /* the bright leading screed edge — one strong band */
    linear-gradient(100deg,
      transparent 44%,
      color-mix(in oklab, var(--bz-brass), transparent 12%) 49.5%,
      color-mix(in oklab, var(--bz-brass), transparent 12%) 50.5%,
      transparent 56%),
    /* the raked texture trailing it — repeating fine datum lines */
    repeating-linear-gradient(100deg,
      color-mix(in oklab, var(--bz-indigo), transparent 55%) 0 2px,
      transparent 2px 22px);
  background-size: 320% 100%, 320% 100%;
  background-repeat: no-repeat, no-repeat;
  animation: bz-hero-sheen 7s linear infinite;
  opacity: 0.8;
}
[data-design="a"] .bz-hero__plate {
  position: absolute; inset: 0; width: 100%; height: 100%;
  z-index: 0;
  color: var(--bz-iron);
}
[data-design="a"] .bz-hero__grid-fill { opacity: 0.5; }
[data-design="a"] .bz-hero__grid-stroke { stroke: color-mix(in oklab, var(--bz-rule), transparent 35%); }
[data-design="a"] .bz-hero__hatch-stroke {
  stroke: color-mix(in oklab, var(--bz-iron), transparent 55%);
  /* breathing fill — sustained ambient #1 */
  animation: bz-hero-hatch 7s ease-in-out infinite;
}
[data-design="a"] .bz-hero__concrete { opacity: 0.5; }

/* section line-work draws in once over ~2s */
[data-design="a"] .bz-bp {
  fill: none; stroke: var(--bz-iron); stroke-width: 1.4;
  stroke-dasharray: 1400; stroke-dashoffset: 1400;
  animation: bz-hero-draw 1.9s var(--bz-ease-inscribe) forwards;
}
[data-design="a"] .bz-bp--grade   { stroke: var(--bz-brass); animation-delay: 0ms; }
[data-design="a"] .bz-bp--subbase { animation-delay: 120ms; }
[data-design="a"] .bz-bp--slab    { stroke: var(--design-a-primary); stroke-width: 1.8; animation-delay: 240ms; }
[data-design="a"] .bz-bp--rebar   { stroke: var(--design-a-primary); stroke-width: 1; animation-delay: 420ms; }
[data-design="a"] .bz-bp--frame   { animation-delay: 620ms; }
[data-design="a"] .bz-hero__dims .bz-dim,
[data-design="a"] .bz-hero__dims .bz-dim-tick,
[data-design="a"] .bz-hero__dims .bz-dim-cross {
  stroke: var(--bz-muted); stroke-width: 0.8;
  stroke-dasharray: 1400; stroke-dashoffset: 1400;
  animation: bz-hero-draw 1.4s var(--bz-ease-inscribe) 900ms forwards;
}
[data-design="a"] .bz-dim-label {
  fill: var(--bz-muted); font-family: var(--bz-mono); font-size: 13px;
  text-anchor: middle; letter-spacing: 0.06em;
  opacity: 0; animation: bz-hero-fade 600ms ease 1500ms forwards;
}
[data-design="a"] .bz-dim-label--v { text-anchor: middle; }

/* datum/level line drifting continuously — secondary ambient.
   transform-box:fill-box makes the SVG transform-origin/translate reliable. */
[data-design="a"] .bz-hero__datum {
  stroke: var(--bz-brass); stroke-width: 1.4; stroke-dasharray: 10 8;
  opacity: 0.85;
  transform-box: view-box; transform-origin: center;
  animation: bz-hero-datum 5.5s ease-in-out infinite, bz-hero-dash 3s linear infinite;
}
[data-design="a"] .bz-hero__bug {
  fill: var(--bz-brass);
  transform-box: view-box; transform-origin: center;
  animation: bz-hero-bug 5.5s ease-in-out infinite;
}

[data-design="a"] .bz-hero__content {
  position: relative; z-index: 1;
  max-width: min(680px, 100%);
  display: flex; flex-direction: column; gap: clamp(14px, 2vw, 22px);
}
[data-design="a"] .bz-hero__eyebrow { color: var(--bz-brass); }
[data-design="a"] .bz-hero__headline {
  font-family: var(--bz-display);
  font-size: clamp(34px, 6.4vw, 68px);
  line-height: 1.05; letter-spacing: 0.01em;
  color: var(--bz-iron);
  text-wrap: balance;
  max-width: 16ch;
}
[data-design="a"] .bz-hero__subtitle {
  font-family: var(--bz-body);
  font-size: clamp(17px, 2.2vw, 21px);
  line-height: 1.5; color: var(--bz-iron);
  max-width: 52ch;
}
[data-design="a"] .bz-hero__proof {
  font-family: var(--bz-mono);
  font-size: clamp(13px, 1.6vw, 15px);
  letter-spacing: 0.02em; color: var(--bz-muted);
}
[data-design="a"] .bz-hero__actions {
  display: flex; flex-wrap: wrap; align-items: center; gap: 16px 20px;
  margin-top: var(--bz-course);
}
[data-design="a"] .bz-hero__chip {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--bz-mono); font-size: 13px; color: var(--bz-iron);
  padding: 9px 14px; border: 1px solid var(--bz-rule); border-radius: 2px;
  background: color-mix(in oklab, var(--bz-vellum), white 30%);
}
[data-design="a"] .bz-hero__chip-dot {
  width: 7px; height: 7px; border-radius: 50%;
  background: var(--bz-success); flex: none;
}

@keyframes bz-hero-draw { to { stroke-dashoffset: 0; } }
@keyframes bz-hero-fade { to { opacity: 1; } }
@keyframes bz-hero-hatch { 0%, 100% { opacity: 0.30; } 50% { opacity: 0.62; } }
@keyframes bz-hero-sheen {
  0%   { background-position: 130% 0; }
  100% { background-position: -130% 0; }
}
/* datum traverses the full section width and back, continuously */
@keyframes bz-hero-datum {
  0%   { transform: translateY(0px);   opacity: 0.4; }
  50%  { transform: translateY(168px); opacity: 0.95; }
  100% { transform: translateY(0px);   opacity: 0.4; }
}
@keyframes bz-hero-bug {
  0%   { transform: translate(0px, 0px); }
  50%  { transform: translate(940px, 168px); }
  100% { transform: translate(0px, 0px); }
}
@keyframes bz-hero-dash { to { stroke-dashoffset: -36; } }

/* ================================================================
   ELEMENT 6 — Pointer (drafted dimension descent). Always visible.
   ================================================================ */
[data-design="a"] .bz-pointer {
  position: relative; z-index: 1;
  display: flex; flex-direction: column; align-items: center; gap: 14px;
  padding: clamp(32px, 6vw, 64px) 16px clamp(40px, 7vw, 72px);
  background: var(--bz-vellum);
}
[data-design="a"] .bz-pointer__hit {
  position: relative; display: inline-block;
  width: 2px; height: 84px; text-decoration: none; color: var(--bz-brass);
}
[data-design="a"] .bz-pointer__pipe {
  position: absolute; inset: 0;
  background: linear-gradient(to bottom, transparent 0%, currentColor 100%);
  transform-origin: top center;
  animation: bz-pointer-fill 5s ease-in-out infinite;
  opacity: 0.75;
}
[data-design="a"] .bz-pointer__drop {
  position: absolute; left: 50%; bottom: -4px;
  width: 9px; height: 9px; margin-left: -4.5px;
  background: currentColor;
  border-radius: 50% 50% 50% 50% / 60% 60% 40% 40%;
  transform: translateY(-64px) scale(0.4); opacity: 0;
  animation: bz-pointer-drip 5s ease-in infinite;
}
[data-design="a"] .bz-pointer__label {
  font-family: var(--bz-display); text-transform: uppercase;
  letter-spacing: 0.18em; font-size: 12px; color: var(--bz-muted);
}
@keyframes bz-pointer-fill {
  0%, 100% { transform: scaleY(0.4); opacity: 0.45; }
  60%      { transform: scaleY(1);   opacity: 0.85; }
}
@keyframes bz-pointer-drip {
  0%, 55%  { transform: translateY(-64px) scale(0.4); opacity: 0; }
  70%      { transform: translateY(-64px) scale(1);   opacity: 1; }
  92%      { transform: translateY(0)     scale(1);   opacity: 1; }
  100%     { transform: translateY(0)     scale(0.2); opacity: 0; }
}

/* ================================================================
   ELEMENT 5 — Funnel (Job Ticket grammar, 5-step intake)
   ================================================================ */
[data-design="a"] .bz-ticket {
  max-width: 1080px; margin: 0 auto;
  padding: clamp(64px, 9vw, 96px) clamp(16px, 4vw, 40px);
  display: flex; flex-direction: column; gap: 28px;
}
[data-design="a"] .bz-ticket__head { display: flex; flex-direction: column; gap: 12px; max-width: 64ch; }
[data-design="a"] .bz-ticket__counter { color: var(--bz-brass); }
[data-design="a"] .bz-ticket__title {
  font-family: var(--bz-display);
  font-size: clamp(28px, 3.8vw, 44px); letter-spacing: 0.03em;
  line-height: 1.1; color: var(--bz-iron);
}
[data-design="a"] .bz-ticket__lede { font-size: 17px; line-height: 1.55; color: var(--bz-iron); }
[data-design="a"] .bz-ticket__progress {
  list-style: none; display: flex; flex-wrap: wrap; gap: 14px; padding: 0 0 14px; margin: 0;
  border-bottom: 1px solid var(--bz-rule);
}
[data-design="a"] .bz-ticket__pip {
  display: inline-flex; align-items: center; justify-content: center;
  font-family: var(--bz-mono); font-size: 12px;
  width: 32px; height: 32px;
  border: 1px solid var(--bz-rule); border-radius: 2px;
  color: var(--bz-muted); background: var(--bz-vellum);
  transition: border-color 200ms, color 200ms, background 200ms;
}
[data-design="a"] .bz-ticket__pip.is-active { border-color: var(--bz-brass); color: var(--bz-iron); }
[data-design="a"] .bz-ticket__pip.is-done { background: var(--bz-indigo); color: var(--bz-vellum); border-color: var(--bz-indigo); }

[data-design="a"] .bz-ticket__form {
  display: grid; grid-template-columns: 1.6fr 1fr; gap: clamp(20px, 3vw, 40px);
  align-items: start;
}
[data-design="a"] .bz-ticket__pane {
  border: 1px solid var(--bz-rule); padding: clamp(20px, 3vw, 36px); background: var(--bz-vellum);
}
[data-design="a"] .bz-folio { border: 0; padding: 0; margin: 0; min-inline-size: 0; }
[data-design="a"] .bz-folio[hidden] { display: none; }
[data-design="a"] .bz-folio.is-active { animation: bz-folio-in 320ms var(--bz-ease-settle) forwards; }
[data-design="a"] .bz-folio__legend {
  font-family: var(--bz-display); text-transform: uppercase;
  letter-spacing: 0.12em; font-size: clamp(17px, 2.4vw, 20px); color: var(--bz-iron);
  margin-bottom: 18px; padding: 0;
}
[data-design="a"] .bz-folio__note { font-size: 14px; color: var(--bz-muted); margin-bottom: 14px; }
[data-design="a"] .bz-folio__choices {
  display: grid; gap: 10px; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}
[data-design="a"] .bz-choice {
  display: flex; align-items: center; gap: 12px;
  border: 1px solid var(--bz-rule); padding: 14px 16px; min-height: 44px;
  cursor: pointer; background: var(--bz-vellum);
  font-family: var(--bz-body); font-size: 16px; color: var(--bz-iron);
  transition: border-color 80ms ease, background 80ms ease, transform 80ms ease;
}
[data-design="a"] .bz-choice span { display: flex; flex-direction: column; gap: 2px; }
[data-design="a"] .bz-choice small { font-family: var(--bz-mono); font-size: 11px; color: var(--bz-muted); letter-spacing: 0.02em; }
[data-design="a"] .bz-choice input { accent-color: var(--bz-indigo); width: 16px; height: 16px; flex: none; }
[data-design="a"] .bz-choice:hover { border-color: var(--bz-brass); }
[data-design="a"] .bz-choice:has(input:checked) {
  border-color: var(--bz-indigo);
  background: color-mix(in oklab, var(--bz-indigo), var(--bz-vellum) 90%);
}
[data-design="a"] .bz-field { display: flex; flex-direction: column; gap: 6px; margin-bottom: 16px; }
[data-design="a"] .bz-field__label {
  font-family: var(--bz-display); text-transform: uppercase;
  letter-spacing: 0.12em; font-size: 12px; color: var(--bz-muted);
  display: flex; flex-wrap: wrap; gap: 8px; align-items: baseline;
}
[data-design="a"] .bz-field__label small { font-family: var(--bz-body); text-transform: none; letter-spacing: 0; font-size: 12px; }
[data-design="a"] .bz-input {
  border: 0; border-bottom: 1px solid var(--bz-rule);
  background: transparent; padding: 10px 0; font-size: 17px;
  font-family: var(--bz-body); color: var(--bz-iron);
  outline: none; transition: border-color 200ms; width: 100%;
}
[data-design="a"] .bz-input--area { resize: vertical; min-height: 72px; }
[data-design="a"] .bz-input:focus { border-bottom: 2px solid var(--bz-glaze); }

[data-design="a"] .bz-ticket__nav { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
[data-design="a"] .bz-stamp-btn {
  font-family: var(--bz-display); text-transform: uppercase;
  letter-spacing: 0.14em; font-size: 13px;
  padding: 13px 24px; min-height: 44px; cursor: pointer; border-radius: 2px;
  transition: background 160ms ease, transform 80ms ease, border-color 160ms ease;
}
[data-design="a"] .bz-stamp-btn--primary { background: var(--bz-indigo); color: var(--bz-vellum); border: 1px solid var(--bz-indigo); }
[data-design="a"] .bz-stamp-btn--primary:hover { background: color-mix(in oklab, var(--bz-indigo), black 10%); }
[data-design="a"] .bz-stamp-btn--primary:active { transform: translateY(1px); }
[data-design="a"] .bz-stamp-btn--secondary { background: var(--bz-vellum); color: var(--bz-iron); border: 1px solid var(--bz-rule); }
[data-design="a"] .bz-stamp-btn--secondary:hover { border-color: var(--bz-brass); }

/* Done plate */
[data-design="a"] .bz-folio--done { display: flex; flex-direction: column; gap: 14px; text-align: left; }
[data-design="a"] .bz-folio--done.is-active { animation: bz-receipt-stamp 460ms var(--bz-ease-settle) forwards; }
[data-design="a"] .bz-stamp {
  align-self: flex-start;
  font-family: var(--bz-display); text-transform: uppercase; letter-spacing: 0.2em;
  font-size: 13px; color: var(--bz-brass);
  padding: 10px 22px; border: 1.5px solid var(--bz-brass); border-radius: 3px;
  background: color-mix(in oklab, var(--bz-brass), var(--bz-vellum) 88%);
  transform: rotate(-2deg);
}
[data-design="a"] .bz-spec {
  margin: 0; display: grid; grid-template-columns: 130px 1fr; gap: 6px 16px;
  border-left: 2px solid var(--bz-brass); padding: 8px 16px;
  font-family: var(--bz-body); font-size: 16px; color: var(--bz-iron);
}
[data-design="a"] .bz-spec dt {
  font-family: var(--bz-display); text-transform: uppercase;
  letter-spacing: 0.12em; font-size: 12px; color: var(--bz-muted);
}
[data-design="a"] .bz-spec dd { margin: 0; }
[data-design="a"] .bz-folio__small { font-family: var(--bz-body); font-size: 14px; color: var(--bz-muted); line-height: 1.5; }

/* Right pane — live spec log */
[data-design="a"] .bz-ticket__log {
  border: 1px solid var(--bz-rule); border-top: 3px solid var(--bz-brass);
  padding: clamp(20px, 3vw, 28px); background: color-mix(in oklab, var(--bz-vellum), white 22%);
  display: flex; flex-direction: column; gap: 16px;
  position: sticky; top: 24px;
}
[data-design="a"] .bz-log { margin: 0; display: flex; flex-direction: column; gap: 0; }
[data-design="a"] .bz-log__row {
  display: flex; justify-content: space-between; gap: 12px; align-items: baseline;
  padding: 10px 0; border-bottom: 1px solid var(--bz-rule);
}
[data-design="a"] .bz-log__row dt {
  font-family: var(--bz-display); text-transform: uppercase;
  letter-spacing: 0.12em; font-size: 12px; color: var(--bz-muted);
}
[data-design="a"] .bz-log__row dd { margin: 0; font-family: var(--bz-mono); font-size: 14px; color: var(--bz-iron); text-align: right; }
[data-design="a"] .bz-log__row.is-set dd { color: var(--bz-indigo); }
[data-design="a"] .bz-coursebars { display: flex; gap: 6px; }
[data-design="a"] .bz-coursebars__bar {
  flex: 1; height: 8px; background: var(--bz-rule);
  animation: bz-coursebar 2.4s ease-in-out infinite;
}
[data-design="a"] .bz-coursebars__bar:nth-child(2) { animation-delay: 0.3s; }
[data-design="a"] .bz-coursebars__bar:nth-child(3) { animation-delay: 0.6s; }
[data-design="a"] .bz-coursebars__bar:nth-child(4) { animation-delay: 0.9s; }
[data-design="a"] .bz-coursebars__bar:nth-child(5) { animation-delay: 1.2s; }
[data-design="a"] .bz-folio__small--log { margin-top: auto; }

/* Below-funnel trust rail */
[data-design="a"] .bz-ticket__trust { border-top: 1px solid var(--bz-rule); padding-top: 20px; display: flex; flex-direction: column; gap: 6px; }
[data-design="a"] .bz-ticket__trust-line { font-family: var(--bz-mono); font-size: 13px; color: var(--bz-muted); }
[data-design="a"] .bz-ticket__trust-sub { font-size: 15px; color: var(--bz-iron); }

@keyframes bz-folio-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@keyframes bz-receipt-stamp { 0% { opacity: 0; transform: scale(0.96); } 60% { opacity: 1; transform: scale(1.01); } 100% { opacity: 1; transform: scale(1); } }
@keyframes bz-coursebar { 0%, 100% { opacity: 0.4; } 50% { opacity: 1; } }

/* ================================================================
   ELEMENT 4 — Sectional Plate (mid-page, inscribes on scroll)
   ================================================================ */
[data-design="a"] .bz-section {
  max-width: 1080px; margin: 0 auto;
  padding: clamp(64px, 9vw, 96px) clamp(16px, 4vw, 40px);
  display: grid; grid-template-columns: 1fr; gap: 32px;
}
[data-design="a"] .bz-section__head { display: flex; flex-direction: column; gap: 12px; max-width: 64ch; }
[data-design="a"] .bz-section__eyebrow { font-family: var(--bz-display); text-transform: uppercase; letter-spacing: 0.18em; font-size: 13px; color: var(--bz-brass); }
[data-design="a"] .bz-section__title {
  font-family: var(--bz-display);
  font-size: clamp(28px, 3.6vw, 44px); letter-spacing: 0.03em;
  line-height: 1.1; color: var(--bz-iron);
}
[data-design="a"] .bz-section__lede { font-size: 17px; line-height: 1.55; color: var(--bz-iron); }
[data-design="a"] .bz-section__plate {
  border: 1px solid var(--bz-rule); background: var(--bz-vellum);
  padding: clamp(16px, 3vw, 28px); color: var(--bz-iron);
}
[data-design="a"] .bz-section__svg { width: 100%; height: auto; display: block; }
[data-design="a"] .bz-line { stroke-dasharray: 100; stroke-dashoffset: 100; }
[data-design="a"] .bz-callout { opacity: 0; }
[data-design="a"] .bz-section.is-drawn .bz-line { animation: bz-inscribe 1400ms var(--bz-ease-inscribe) forwards; }
[data-design="a"] .bz-section.is-drawn .bz-line:nth-of-type(2) { animation-delay: 180ms; }
[data-design="a"] .bz-section.is-drawn .bz-line:nth-of-type(3) { animation-delay: 320ms; }
[data-design="a"] .bz-section.is-drawn .bz-line:nth-of-type(4) { animation-delay: 460ms; }
[data-design="a"] .bz-section.is-drawn .bz-line:nth-of-type(5) { animation-delay: 600ms; }
[data-design="a"] .bz-section.is-drawn .bz-line:nth-of-type(6) { animation-delay: 740ms; }
[data-design="a"] .bz-section.is-drawn .bz-line:nth-of-type(7) { animation-delay: 880ms; }
[data-design="a"] .bz-section.is-drawn .bz-line:nth-of-type(8) { animation-delay: 1020ms; }
[data-design="a"] .bz-section.is-drawn .bz-line:nth-of-type(9) { animation-delay: 1160ms; }
[data-design="a"] .bz-section.is-drawn .bz-callout { animation: bz-callout-pop 380ms var(--bz-ease-settle) forwards; }
[data-design="a"] .bz-section.is-drawn .bz-callout:nth-of-type(1) { animation-delay: 1500ms; }
[data-design="a"] .bz-section.is-drawn .bz-callout:nth-of-type(2) { animation-delay: 1650ms; }
[data-design="a"] .bz-section.is-drawn .bz-callout:nth-of-type(3) { animation-delay: 1800ms; }
@keyframes bz-inscribe { to { stroke-dashoffset: 0; } }
@keyframes bz-callout-pop { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: translateY(0); } }

/* Process phases under the plate */
[data-design="a"] .bz-process { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; }
[data-design="a"] .bz-process__phase {
  display: flex; gap: 20px; align-items: baseline;
  padding: 20px 0; border-bottom: 1px solid var(--bz-rule);
}
[data-design="a"] .bz-process__idx { font-family: var(--bz-mono); font-size: 14px; color: var(--bz-brass); min-width: 32px; }
[data-design="a"] .bz-process__text { display: flex; flex-direction: column; gap: 4px; }
[data-design="a"] .bz-process__text h3 { font-family: var(--bz-headline); font-size: 20px; color: var(--bz-iron); }
[data-design="a"] .bz-process__text p { font-size: 16px; color: var(--bz-iron); max-width: 60ch; }
[data-design="a"] .bz-section__repeat { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; padding-top: 8px; }
[data-design="a"] .bz-section__repeat-prompt { font-family: var(--bz-display); text-transform: uppercase; letter-spacing: 0.1em; font-size: 16px; color: var(--bz-iron); }

/* ================================================================
   SERVICES (roman index, not a grid)
   ================================================================ */
[data-design="a"] .bz-services {
  max-width: 1080px; margin: 0 auto;
  padding: clamp(64px, 9vw, 96px) clamp(16px, 4vw, 40px);
  display: flex; flex-direction: column; gap: 28px;
}
[data-design="a"] .bz-services__head { display: flex; flex-direction: column; gap: 12px; max-width: 64ch; }
[data-design="a"] .bz-services__title { font-family: var(--bz-display); font-size: clamp(28px, 3.6vw, 44px); letter-spacing: 0.03em; color: var(--bz-iron); }
[data-design="a"] .bz-services__lede { font-size: 17px; line-height: 1.55; color: var(--bz-iron); }
[data-design="a"] .bz-index { list-style: none; margin: 0; padding: 0; }
[data-design="a"] .bz-index__row {
  display: grid; grid-template-columns: 44px 1fr auto; gap: 16px 24px; align-items: baseline;
  padding: 22px 0; border-bottom: 1px solid var(--bz-rule);
}
[data-design="a"] .bz-index__num { font-family: var(--bz-mono); font-size: 14px; color: var(--bz-brass); }
[data-design="a"] .bz-index__title { display: flex; flex-direction: column; gap: 4px; }
[data-design="a"] .bz-index__name { font-family: var(--bz-headline); font-size: clamp(19px, 2.4vw, 22px); color: var(--bz-iron); }
[data-design="a"] .bz-index__desc { font-size: 16px; color: var(--bz-iron); max-width: 56ch; }
[data-design="a"] .bz-index__spec { font-family: var(--bz-mono); font-size: 12px; color: var(--bz-muted); letter-spacing: 0.04em; text-align: right; }

/* ================================================================
   PORTFOLIO (typographic plan-set under LOW-photo constraint)
   ================================================================ */
[data-design="a"] .bz-portfolio {
  max-width: 1080px; margin: 0 auto;
  padding: clamp(64px, 9vw, 96px) clamp(16px, 4vw, 40px);
  display: flex; flex-direction: column; gap: 32px;
}
[data-design="a"] .bz-portfolio__head { display: flex; flex-direction: column; gap: 12px; max-width: 64ch; }
[data-design="a"] .bz-portfolio__title { font-family: var(--bz-display); font-size: clamp(28px, 3.6vw, 44px); letter-spacing: 0.03em; color: var(--bz-iron); }
[data-design="a"] .bz-portfolio__lede { font-size: 17px; line-height: 1.55; color: var(--bz-iron); }
[data-design="a"] .bz-plan-set { list-style: none; margin: 0; padding: 0; display: grid; gap: 32px; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
[data-design="a"] .bz-plan-set__sheet {
  position: relative; border: 1px solid var(--bz-rule); background: var(--bz-vellum);
  padding: 28px 24px; display: flex; flex-direction: column; gap: 8px; min-height: 150px;
}
[data-design="a"] .bz-plan-set__tag { font-family: var(--bz-display); text-transform: uppercase; letter-spacing: 0.16em; font-size: 13px; color: var(--bz-brass); }
[data-design="a"] .bz-plan-set__line { font-family: var(--bz-headline); font-size: 19px; color: var(--bz-iron); }
[data-design="a"] .bz-plan-set__corner {
  position: absolute; right: 0; bottom: 0; width: 28px; height: 28px;
  border-right: 1px solid var(--bz-rule); border-bottom: 1px solid var(--bz-rule);
  background: linear-gradient(135deg, transparent 50%, color-mix(in oklab, var(--bz-brick), transparent 70%) 50%);
}

/* ================================================================
   ABOUT
   ================================================================ */
[data-design="a"] .bz-about {
  max-width: 1080px; margin: 0 auto;
  padding: clamp(64px, 9vw, 96px) clamp(16px, 4vw, 40px);
  display: flex; flex-direction: column; gap: 28px;
}
[data-design="a"] .bz-about__head { display: flex; flex-direction: column; gap: 12px; max-width: 64ch; }
[data-design="a"] .bz-about__title { font-family: var(--bz-display); font-size: clamp(26px, 3.4vw, 42px); letter-spacing: 0.03em; line-height: 1.12; color: var(--bz-iron); max-width: 22ch; }
[data-design="a"] .bz-about__body { display: grid; grid-template-columns: 1.6fr 1fr; gap: clamp(24px, 4vw, 48px); align-items: start; }
[data-design="a"] .bz-about__text { display: flex; flex-direction: column; gap: 16px; }
[data-design="a"] .bz-about__text p { font-size: 17px; line-height: 1.6; color: var(--bz-iron); max-width: 62ch; }
[data-design="a"] .bz-about__credential { }
[data-design="a"] .bz-credential {
  border: 1px solid var(--bz-rule); border-top: 3px solid var(--bz-brass);
  padding: 24px; background: color-mix(in oklab, var(--bz-vellum), white 22%);
  display: flex; flex-direction: column; gap: 8px;
}
[data-design="a"] .bz-credential__number { font-family: var(--bz-mono); font-size: 20px; color: var(--bz-iron); }
[data-design="a"] .bz-credential__state { font-size: 14px; color: var(--bz-muted); }
[data-design="a"] .bz-credential__verify { font-family: var(--bz-display); text-transform: uppercase; letter-spacing: 0.12em; font-size: 12px; color: var(--bz-indigo); text-decoration: none; margin-top: 6px; }
[data-design="a"] .bz-credential__verify:hover { color: var(--bz-glaze); }

/* ================================================================
   SERVICE AREA
   ================================================================ */
[data-design="a"] .bz-area {
  max-width: 1080px; margin: 0 auto;
  padding: clamp(64px, 9vw, 96px) clamp(16px, 4vw, 40px);
  display: flex; flex-direction: column; gap: 20px;
}
[data-design="a"] .bz-area__head { display: flex; flex-direction: column; gap: 12px; }
[data-design="a"] .bz-area__title { font-family: var(--bz-display); font-size: clamp(26px, 3.4vw, 42px); letter-spacing: 0.03em; color: var(--bz-iron); }
[data-design="a"] .bz-area__body { display: flex; flex-direction: column; gap: 12px; max-width: 64ch; }
[data-design="a"] .bz-area__lead { font-size: 18px; line-height: 1.55; color: var(--bz-iron); }
[data-design="a"] .bz-area__note { font-size: 16px; color: var(--bz-iron); }
[data-design="a"] .bz-area__addr { font-family: var(--bz-mono); font-size: 14px; color: var(--bz-muted); }

/* ================================================================
   CONTACT
   ================================================================ */
[data-design="a"] .bz-contact {
  border-top: 1px solid var(--bz-rule);
  background: color-mix(in oklab, var(--bz-vellum), white 16%);
}
[data-design="a"] .bz-contact__inner {
  max-width: 1080px; margin: 0 auto;
  padding: clamp(64px, 9vw, 96px) clamp(16px, 4vw, 40px);
  display: flex; flex-direction: column; gap: 28px;
}
[data-design="a"] .bz-contact__head { display: flex; flex-direction: column; gap: 12px; max-width: 60ch; }
[data-design="a"] .bz-contact__title { font-family: var(--bz-display); font-size: clamp(28px, 3.6vw, 44px); letter-spacing: 0.03em; color: var(--bz-iron); }
[data-design="a"] .bz-contact__lede { font-size: 17px; color: var(--bz-iron); }
[data-design="a"] .bz-contact__rows { display: grid; gap: 16px; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
[data-design="a"] .bz-contact__row {
  display: flex; flex-direction: column; gap: 6px;
  border: 1px solid var(--bz-rule); padding: 18px 20px; min-height: 44px;
  text-decoration: none; background: var(--bz-vellum);
  transition: border-color 160ms ease;
}
[data-design="a"] a.bz-contact__row:hover { border-color: var(--bz-brass); }
[data-design="a"] .bz-contact__val { font-family: var(--bz-mono); font-size: 17px; color: var(--bz-iron); }
[data-design="a"] .bz-contact__cta { align-self: flex-start; }

/* ================================================================
   FOOTER
   ================================================================ */
[data-design="a"] .bz-footer {
  background: var(--bz-vellum); border-top: 1px solid var(--bz-rule);
  padding: 0 clamp(16px, 4vw, 40px) clamp(40px, 6vw, 64px);
}
[data-design="a"] .bz-footer__course {
  height: 6px; margin: 0 calc(-1 * clamp(16px, 4vw, 40px)) clamp(32px, 5vw, 56px);
  background-image: repeating-linear-gradient(90deg, var(--bz-brick) 0 6px, transparent 6px 12px);
  background-size: 12px 6px; opacity: 0.7;
}
[data-design="a"] .bz-footer__row { max-width: 1080px; margin: 0 auto; }
[data-design="a"] .bz-footer__row--top {
  display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 28px 40px;
  padding-bottom: 32px; border-bottom: 1px solid var(--bz-rule);
}
[data-design="a"] .bz-footer__name { font-family: var(--bz-display); text-transform: uppercase; letter-spacing: 0.12em; font-size: 20px; color: var(--bz-iron); }
[data-design="a"] .bz-footer__tag { font-size: 14px; color: var(--bz-muted); margin-top: 6px; }
[data-design="a"] .bz-footer__nav { display: flex; flex-direction: column; gap: 10px; }
[data-design="a"] .bz-footer__nav a { font-family: var(--bz-headline); font-size: 15px; color: var(--bz-iron); text-decoration: none; }
[data-design="a"] .bz-footer__nav a:hover { color: var(--bz-indigo); }
[data-design="a"] .bz-footer__meta { display: flex; flex-direction: column; gap: 8px; }
[data-design="a"] .bz-footer__lic { font-family: var(--bz-mono); font-size: 13px; color: var(--bz-iron); }
[data-design="a"] .bz-footer__phone { font-family: var(--bz-mono); font-size: 17px; color: var(--bz-indigo); text-decoration: none; }
[data-design="a"] .bz-footer__addr { font-family: var(--bz-mono); font-size: 13px; color: var(--bz-muted); }
[data-design="a"] .bz-footer__row--base {
  display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px 24px;
  padding-top: 24px;
}
[data-design="a"] .bz-footer__legal { font-family: var(--bz-mono); font-size: 12px; color: var(--bz-muted); }
[data-design="a"] .bz-footer__copy { font-family: var(--bz-mono); font-size: 12px; color: var(--bz-muted); display: inline-flex; align-items: center; gap: 8px; }
[data-design="a"] .bz-footer__dot { width: 5px; height: 5px; border-radius: 50%; background: var(--bz-brass); display: inline-block; }

/* ================================================================
   Responsive
   ================================================================ */
@media (max-width: 880px) {
  [data-design="a"] .bz-ticket__form { grid-template-columns: 1fr; }
  [data-design="a"] .bz-ticket__log { position: static; order: -1; }
  [data-design="a"] .bz-about__body { grid-template-columns: 1fr; }
  [data-design="a"] .bz-footer__row--top { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
  [data-design="a"] .bz-folio__choices { grid-template-columns: 1fr; }
  [data-design="a"] .bz-spec { grid-template-columns: 1fr; }
  [data-design="a"] .bz-index__row { grid-template-columns: 28px 1fr; }
  [data-design="a"] .bz-index__spec { grid-column: 2; text-align: left; }
  [data-design="a"] .bz-footer__row--top { grid-template-columns: 1fr; }
  [data-design="a"] .bz-logo__mark { letter-spacing: 0.12em; }
  [data-design="a"] .bz-hero__headline { max-width: 100%; }
}

/* ================================================================
   Reduced motion — pause/settle, never break
   ================================================================ */
@media (prefers-reduced-motion: reduce) {
  [data-design="a"] .bz-header__sweep,
  [data-design="a"] .bz-header__crosshatch { animation: none; opacity: 0.34; }
  [data-design="a"] .bz-drawer__plate { animation: none; transform: none; }
  [data-design="a"] .bz-cta__inset { animation: none; }
  [data-design="a"] .bz-cta__arrow { transition: none; }
  [data-design="a"] .bz-cta.bz-stamping .bz-cta__ink { animation: none; opacity: 0; }
  [data-design="a"] .bz-bp,
  [data-design="a"] .bz-hero__dims .bz-dim,
  [data-design="a"] .bz-hero__dims .bz-dim-tick,
  [data-design="a"] .bz-hero__dims .bz-dim-cross { stroke-dashoffset: 0; animation: none; }
  [data-design="a"] .bz-dim-label { opacity: 1; animation: none; }
  [data-design="a"] .bz-hero__hatch-stroke { animation: none; opacity: 0.42; }
  [data-design="a"] .bz-hero__sheen { animation: none; opacity: 0.5; background-position: 50% 0; }
  [data-design="a"] .bz-hero__datum,
  [data-design="a"] .bz-hero__bug { animation: none; }
  [data-design="a"] .bz-hero__datum { opacity: 0.6; }
  [data-design="a"] .bz-pointer__pipe,
  [data-design="a"] .bz-pointer__drop { animation: none; opacity: 0.6; }
  [data-design="a"] .bz-line { stroke-dashoffset: 0; animation: none !important; }
  [data-design="a"] .bz-callout { opacity: 1; animation: none !important; }
  [data-design="a"] .bz-folio.is-active,
  [data-design="a"] .bz-folio--done.is-active { animation: none; }
  [data-design="a"] .bz-coursebars__bar { animation: none; opacity: 0.6; }
}

/* ================================================================
   Mobile clip guards (MANDATORY — appended at bottom)
   ================================================================ */
[data-design="a"].dq-design,
[data-design="a"] .dq-design { max-width: 100%; overflow-x: clip; }
[data-design="a"] * { min-width: 0; }
[data-design="a"] img,
[data-design="a"] svg:not([data-keep-size]) { max-width: 100%; height: auto; }

/* Phase-3.4 hero visibility floor (forge_assemble) */
[data-design="a"] [data-mf-role="hero"] :is(h1,h2,p,.headline,.subtitle,.proof,[class*="headline"],[class*="subtitle"],[class*="proof"]),
[data-design="a"] [data-mf-role="cta"] { opacity: 1 !important; }
