[data-design="a"] {
  --design-a-primary: #2F6FAE;
  --fs-plaster: #F5F2EB;
  --fs-plaster-shade: #EAE5D9;
  --fs-ink: #26231C;
  --fs-muted: #6F6858;
  --fs-tape: #2F6FAE;
  --fs-tape-lift: #4A86BE;
  --fs-oxide: #A34527;
  --fs-shadowline: rgba(38, 35, 28, 0.16);
  --fs-line: #CFC8B8;
  --fs-critical: #8E2B2B;
  --fs-success: #3E6E4E;

  --fs-size-caption: 0.875rem;
  --fs-size-body: 1.0625rem;
  --fs-size-lead: 1.275rem;
  --fs-size-h3: 1.53rem;
  --fs-size-h2: 1.84rem;
  --fs-size-h1: clamp(2.25rem, 5.2vw, 3.5rem);
  --fs-size-logo: 1.25rem;
  --fs-size-logo-sm: 1.05rem;

  --fs-blade: 4px;
  --fs-band: 8px;
  --fs-cut: 16px;
  --fs-panel: 32px;
  --fs-reach: 48px;
  --fs-wall: 64px;
  --fs-elevation: 96px;

  --fs-press: 140ms;
  --fs-snap: 420ms;
  --fs-peel: 560ms;
  --fs-settle: 900ms;

  --fs-ease-steady: cubic-bezier(0.32, 0, 0.18, 1);
  --fs-ease-peel: cubic-bezier(0.42, 0, 0.16, 1);
  --fs-ease-press: cubic-bezier(0.2, 0, 0.4, 1);

  --fs-r-0: 0;
  --fs-r-chip: 2px;

  --fs-edge: 0 1px 0 var(--fs-shadowline), inset 0 0 0 1px var(--fs-line);
  --fs-edge-lift: 0 2px 0 var(--fs-shadowline), inset 0 0 0 1px var(--fs-line);
  --fs-edge-mask: 0 4px 0 var(--fs-shadowline);
}

[data-design="a"].dq-design {
  background: var(--fs-plaster);
  color: var(--fs-ink);
  font-family: "Archivo", "Helvetica Neue", Arial, sans-serif;
  isolation: isolate;
}

/* ============ Header (Element 1) ============ */
[data-design="a"] .fs-header {
  position: sticky; top: 0; z-index: 40;
  background: var(--fs-plaster);
  border-bottom: 1px solid var(--fs-line);
}
[data-design="a"] .fs-header__bar {
  max-width: 1320px; margin-inline: auto;
  padding: 12px clamp(20px, 5vw, 48px);
  display: flex; align-items: center; justify-content: space-between;
  position: relative; z-index: 41;
}
[data-design="a"] .fs-logo { text-decoration: none; }
[data-design="a"] .fs-logo__mark {
  font-family: "Archivo", "Helvetica Neue", Arial, sans-serif;
  font-weight: 800; font-size: var(--fs-size-logo); color: var(--fs-ink);
  letter-spacing: 0.02em;
}
[data-design="a"] .fs-header__band {
  position: absolute; inset: auto 0 0 0; height: 4px; overflow: hidden;
  pointer-events: none;
}
[data-design="a"] .fs-header__bandEdge {
  position: absolute; inset: 0;
  background: linear-gradient(90deg, var(--fs-tape) 0 60%, var(--fs-tape-lift) 60% 62%, transparent 62%);
  transform: translateX(-100%);
  animation: fs-header-lay 28s var(--fs-ease-steady) infinite alternate;
  opacity: 0.55;
}
@keyframes fs-header-lay {
  from { transform: translateX(-100%); }
  to   { transform: translateX(38%); }
}
[data-design="a"] .fs-burger {
  min-width: 44px; min-height: 44px; display: grid; place-content: center;
  gap: 6px; background: none; border: 0; cursor: pointer; padding: 8px;
}
[data-design="a"] .fs-burger__strip {
  width: 26px; height: 5px; background: var(--fs-tape);
  box-shadow: 0 1px 0 var(--fs-shadowline);
  transition: transform var(--fs-press) var(--fs-ease-press);
}
[data-design="a"] .fs-burger[aria-expanded="true"] .fs-burger__strip:first-child { transform: translateY(5.5px) rotate(45deg); }
[data-design="a"] .fs-burger[aria-expanded="true"] .fs-burger__strip:last-child { transform: translateY(-5.5px) rotate(-45deg); }
[data-design="a"] .fs-burger:focus-visible { outline: 2px solid var(--fs-tape); outline-offset: 2px; }

/* the Mask — full-screen drawer, peels in from the top */
[data-design="a"] .fs-drawer {
  position: fixed; inset: 0; z-index: 39;
  background: var(--fs-plaster-shade);
  box-shadow: var(--fs-edge-mask);
  padding: 96px clamp(20px, 5vw, 48px) 48px;
  clip-path: inset(0 0 100% 0);
  overflow-y: auto; overscroll-behavior: contain;
}
/* HARD: closed drawer must never sit invisibly over content — collapse fully */
[data-design="a"] .fs-drawer[hidden] { display: none; }
[data-design="a"] .fs-drawer.is-open {
  clip-path: inset(0 0 0% 0);
  transition: clip-path var(--fs-peel) var(--fs-ease-peel);
}
[data-design="a"] .fs-drawer__nav { display: grid; gap: 8px; margin-bottom: var(--fs-panel); }
[data-design="a"] .fs-drawer__link {
  font-family: "Space Mono", "Courier New", monospace;
  font-size: var(--fs-size-lead); text-transform: uppercase;
  letter-spacing: 0.06em; color: var(--fs-ink); text-decoration: none;
  padding: 12px 0; min-height: 44px; display: block;
  border-bottom: 1px solid var(--fs-line);
  opacity: 0; transform: translateY(-6px);
}
[data-design="a"] .fs-drawer.is-open .fs-drawer__link {
  opacity: 1; transform: translateY(0);
  transition: opacity var(--fs-snap) var(--fs-ease-press),
              transform var(--fs-snap) var(--fs-ease-press);
  transition-delay: calc(var(--fs-i, 0) * 60ms);
}
[data-design="a"] .fs-drawer__ctas { display: grid; gap: 16px; max-width: 360px; }
@media (max-width: 560px) {
  [data-design="a"] .fs-logo__mark { font-size: var(--fs-size-logo-sm); }
}

/* ============ Strip (button/chip) base ============ */
[data-design="a"] .fs-strip {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 44px; padding: 12px 20px;
  font-family: "Archivo", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700; font-size: var(--fs-size-body); text-decoration: none;
  border-radius: var(--fs-r-chip); cursor: pointer; border: 0;
  transition: transform var(--fs-press) var(--fs-ease-press);
}
[data-design="a"] .fs-strip--tape { background: var(--fs-tape); color: var(--fs-plaster); box-shadow: var(--fs-edge); }
[data-design="a"] .fs-strip--bare { background: var(--fs-plaster); color: var(--fs-ink); box-shadow: var(--fs-edge); }
@media (hover: hover) and (pointer: fine) {
  [data-design="a"] .fs-strip--tape:hover,
  [data-design="a"] .fs-strip--bare:hover { transform: translateY(-1px); }
}
[data-design="a"] .fs-strip:active { transform: translateY(1px); }

/* ============ CTA (Element 2) ============ */
[data-design="a"] .fs-cta {
  position: relative; display: inline-flex; align-items: center;
  min-height: 56px; padding: 16px 28px 16px 24px;
  background: var(--fs-plaster); color: var(--fs-ink);
  font-family: "Archivo", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700; font-size: var(--fs-size-body); text-decoration: none;
  border-radius: var(--fs-r-chip);
  box-shadow: var(--fs-edge), inset 4px 0 0 var(--fs-oxide);
  overflow: hidden; touch-action: manipulation;
  transition: transform var(--fs-press) var(--fs-ease-press),
              color var(--fs-press) var(--fs-ease-press);
}
[data-design="a"] .fs-cta__label { position: relative; z-index: 2; }
[data-design="a"] .fs-cta__fill {
  position: absolute; inset: 0; z-index: 1;
  background: var(--fs-oxide);
  clip-path: inset(0 100% 0 0);
  transition: clip-path 260ms var(--fs-ease-steady);
}
[data-design="a"] .fs-cta::after {
  content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px;
  background: var(--fs-tape-lift); z-index: 3; opacity: 0;
  animation: fs-cta-sheen 5s var(--fs-ease-steady) infinite;
}
@keyframes fs-cta-sheen {
  0%, 70%, 100% { opacity: 0; }
  82% { opacity: 0.7; }
}
@media (hover: hover) and (pointer: fine) {
  [data-design="a"] .fs-cta:hover { color: var(--fs-plaster); }
  [data-design="a"] .fs-cta:hover .fs-cta__fill { clip-path: inset(0 0% 0 0); }
}
[data-design="a"] .fs-cta:focus-visible {
  outline: 2px solid var(--fs-tape); outline-offset: 2px;
  color: var(--fs-plaster);
}
[data-design="a"] .fs-cta:focus-visible .fs-cta__fill { clip-path: inset(0 0% 0 0); }
[data-design="a"] .fs-cta:active { transform: translateY(1px); }

/* ============ Hero (Element 3) ============ */
[data-design="a"] .fs-hero {
  position: relative; overflow: hidden;
  min-height: min(78vh, 720px);
  display: flex; align-items: center;
  background: var(--fs-plaster);
  isolation: isolate;
}
[data-design="a"] .fs-hero__wall {
  position: absolute; inset: 0; pointer-events: none; z-index: 0;
}
[data-design="a"] .fs-hero__shade {
  position: absolute; left: 0; right: 0; top: 0; height: 22%;
  background: var(--fs-plaster-shade);
  border-bottom: 1px solid var(--fs-line);
}
[data-design="a"] .fs-hero__reveal {
  position: absolute; left: 0; right: 0; bottom: 0; height: 34%;
  background: var(--fs-oxide); opacity: 0.92;
  clip-path: inset(0 12% 0 0);
  animation: fs-hero-walk 16s var(--fs-ease-steady) infinite alternate;
}
[data-design="a"] .fs-hero__revealEdge {
  position: absolute; top: 0; bottom: 0; right: 0; width: 2px;
  background: var(--fs-plaster);
}
[data-design="a"] .fs-hero__tape {
  position: absolute; left: 0; right: 0; bottom: 34%; height: 18px;
  background: var(--fs-tape); opacity: 0.38;
  box-shadow: 0 1px 0 var(--fs-shadowline);
  clip-path: inset(0 12% 0 0);
  animation: fs-hero-walk 16s var(--fs-ease-steady) infinite alternate;
}
@keyframes fs-hero-walk {
  from { clip-path: inset(0 12% 0 0); }
  to   { clip-path: inset(0 2% 0 0); }
}
[data-design="a"] .fs-hero__snapline {
  position: absolute; left: 0; right: 0; top: 22%; height: 1px;
  background: var(--fs-ink); opacity: 0.35;
  transform: scaleX(0); transform-origin: left;
  animation: fs-hero-snap 1.1s var(--fs-ease-steady) 0.15s forwards;
}
@keyframes fs-hero-snap {
  to { transform: scaleX(1); }
}
[data-design="a"] .fs-hero__content {
  position: relative; z-index: 2; width: 100%;
  max-width: 1320px; margin-inline: auto;
  padding: var(--fs-wall) clamp(20px, 5vw, 48px);
}
[data-design="a"] .fs-hero__title {
  font-family: "Archivo", "Helvetica Neue", Arial, sans-serif;
  font-weight: 800; font-size: var(--fs-size-h1); line-height: 1.1;
  color: var(--fs-ink); margin: 0 0 var(--fs-cut); max-width: 18ch;
  text-wrap: balance; opacity: 1;
}
[data-design="a"] .fs-hero__subtitle {
  font-size: var(--fs-size-lead); line-height: 1.5; color: var(--fs-ink);
  margin: 0 0 var(--fs-band); max-width: 46ch; opacity: 1;
}
[data-design="a"] .fs-hero__subtitle:empty { display: none; }
[data-design="a"] .fs-hero__proof {
  font-family: "Space Mono", "Courier New", monospace;
  font-size: var(--fs-size-caption); line-height: 1.6; color: var(--fs-muted);
  margin: 0 0 var(--fs-panel); padding-top: var(--fs-band);
  border-top: 1px solid var(--fs-line); max-width: 60ch; opacity: 1;
}
[data-design="a"] .fs-hero__proof:empty { display: none; border: 0; }
[data-design="a"] .fs-hero .fs-cta { opacity: 1; }
@media (max-width: 560px) {
  [data-design="a"] .fs-hero { min-height: 92vh; }
  [data-design="a"] .fs-hero__reveal,
  [data-design="a"] .fs-hero__tape { opacity: 0.85; }
}

/* ============ Pointer (Element 6) ============ */
[data-design="a"] .fs-pointer {
  display: grid; justify-items: center; gap: 8px;
  padding-block: var(--fs-panel);
  background: var(--fs-plaster);
  opacity: 1;
}
[data-design="a"] .fs-pointer__strip {
  width: 18px; height: 72px;
  background: var(--fs-tape);
  box-shadow: 0 1px 0 var(--fs-shadowline);
  clip-path: inset(0 0 100% 0);
  animation: fs-plumb 5.5s var(--fs-ease-peel) infinite;
}
@keyframes fs-plumb {
  0%   { clip-path: inset(0 0 100% 0); opacity: 1; }
  36%  { clip-path: inset(0 0 0% 0); opacity: 1; }
  74%  { clip-path: inset(0 0 0% 0); opacity: 1; }
  92%  { clip-path: inset(0 0 0% 0); opacity: 0; }
  100% { clip-path: inset(0 0 100% 0); opacity: 0; }
}
[data-design="a"] .fs-pointer__label {
  font-family: "Space Mono", "Courier New", monospace;
  font-size: var(--fs-size-caption); letter-spacing: 0.08em;
  text-transform: uppercase; color: var(--fs-muted);
  max-width: 14ch; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
  opacity: 1;
}
[data-design="a"] .fs-pointer__label:empty { display: none; }

/* ============ Funnel (Element 5) ============ */
[data-design="a"] .fs-funnel {
  padding-block: var(--fs-wall); background: var(--fs-plaster);
}
@media (min-width: 768px) {
  [data-design="a"] .fs-funnel { padding-block: var(--fs-elevation); }
}
[data-design="a"] .fs-funnel__inner {
  max-width: 1320px; margin-inline: auto; padding-inline: clamp(20px, 5vw, 48px);
}
[data-design="a"] .fs-funnel__title {
  font-family: "Archivo", "Helvetica Neue", Arial, sans-serif;
  font-weight: 800; font-size: var(--fs-size-h2); color: var(--fs-ink);
  margin: 0 0 var(--fs-cut);
}
[data-design="a"] .fs-funnel__rail {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 4px;
  max-width: 420px; margin-bottom: var(--fs-panel);
}
[data-design="a"] .fs-funnel__length {
  height: 8px; background: var(--fs-plaster-shade);
  box-shadow: inset 0 0 0 1px var(--fs-line);
  position: relative; overflow: hidden;
}
[data-design="a"] .fs-funnel__length::after {
  content: ""; position: absolute; inset: 0; background: var(--fs-tape);
  transform: translateY(-100%);
}
[data-design="a"] .fs-funnel__length.is-pressed::after {
  transform: translateY(0);
  transition: transform var(--fs-press) var(--fs-ease-press);
}
[data-design="a"] .fs-funnel__stack { position: relative; }
[data-design="a"] .fs-fstep { border: 0; padding: 0; margin: 0; }
[data-design="a"] .fs-fstep.is-peeling {
  position: absolute; inset: 0; z-index: 2;
  background: var(--fs-plaster);
  animation: fs-pull 560ms var(--fs-ease-peel) forwards;
  pointer-events: none;
}
@keyframes fs-pull {
  0%   { clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); transform: translate(0, 0) rotate(0deg); opacity: 1; }
  60%  { clip-path: polygon(0 0, 100% 0, 100% 30%, 0 85%); }
  100% { clip-path: polygon(0 0, 12% 0, 12% 4%, 0 10%); transform: translate(6%, -4%) rotate(-3deg); opacity: 0; }
}
[data-design="a"] .fs-fstep__q {
  font-size: var(--fs-size-lead); font-weight: 700; color: var(--fs-ink);
  padding: 0; margin-bottom: 24px;
}
[data-design="a"] .fs-fstep__strips {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 16px;
}
[data-design="a"] .fs-astrip {
  position: relative; min-height: 56px; padding: 16px 20px;
  text-align: left; cursor: pointer; touch-action: manipulation;
  background: var(--fs-plaster); color: var(--fs-ink);
  border: 0; border-radius: var(--fs-r-chip);
  box-shadow: var(--fs-edge-lift);
  font-family: "Archivo", "Helvetica Neue", Arial, sans-serif;
  font-size: var(--fs-size-body); font-weight: 500;
  opacity: 1;
  transition: transform var(--fs-press) var(--fs-ease-press),
              box-shadow var(--fs-press) var(--fs-ease-press),
              background-color var(--fs-press) var(--fs-ease-press),
              color var(--fs-press) var(--fs-ease-press);
}
[data-design="a"] .fs-astrip__corner {
  position: absolute; top: 0; right: 0; width: 14px; height: 14px;
  background: var(--fs-tape-lift); opacity: 0.6;
  clip-path: polygon(100% 0, 0 0, 100% 100%);
  transform-origin: top right;
  transition: transform var(--fs-press) var(--fs-ease-press),
              opacity var(--fs-press) var(--fs-ease-press);
}
@media (hover: hover) and (pointer: fine) {
  [data-design="a"] .fs-astrip:hover { transform: translateY(-1px); }
}
[data-design="a"] .fs-astrip:focus-visible {
  outline: 2px solid var(--fs-tape); outline-offset: 2px;
}
[data-design="a"] .fs-astrip:active { transform: translateY(1px); }
[data-design="a"] .fs-astrip.is-laid {
  background: var(--fs-tape); color: var(--fs-plaster);
  box-shadow: var(--fs-edge); transform: translateY(1px);
}
[data-design="a"] .fs-astrip.is-laid .fs-astrip__corner {
  transform: scale(0.95); opacity: 0;
}
[data-design="a"] .fs-lineField { margin-bottom: 16px; max-width: 480px; }
[data-design="a"] .fs-lineField__label {
  display: block; font-family: "Space Mono", "Courier New", monospace;
  font-size: var(--fs-size-caption); color: var(--fs-muted); margin-bottom: 4px;
}
[data-design="a"] .fs-lineField__input {
  width: 100%; box-sizing: border-box; min-height: 44px; padding: 12px;
  background: var(--fs-plaster-shade); border: 0;
  border-bottom: 1px solid var(--fs-line);
  border-radius: var(--fs-r-chip) var(--fs-r-chip) 0 0;
  font: inherit; color: var(--fs-ink);
}
[data-design="a"] .fs-lineField__input:focus {
  outline: none; border-bottom: 2px solid var(--fs-tape);
}
[data-design="a"] .fs-funnel__error {
  color: var(--fs-critical); font-size: var(--fs-size-caption);
  font-family: "Space Mono", "Courier New", monospace;
}
[data-design="a"] .fs-funnel__submit { margin-top: 8px; }
[data-design="a"] .fs-funnel__doneTitle {
  font-size: var(--fs-size-h3); font-weight: 800; color: var(--fs-success);
  margin: 0 0 8px;
}
[data-design="a"] .fs-funnel__doneBody {
  font-size: var(--fs-size-body); line-height: 1.6; color: var(--fs-ink);
  margin: 0; max-width: 52ch;
}
[data-design="a"] .fs-funnel__note {
  font-family: "Space Mono", "Courier New", monospace;
  font-size: var(--fs-size-caption); line-height: 1.6; color: var(--fs-muted);
  border-top: 1px solid var(--fs-line); padding-top: 16px;
  margin-top: var(--fs-panel); max-width: 65ch;
}
[data-design="a"] .fs-funnel__note:empty { display: none; }

/* ============ Scroll handoff (Element 7) ============ */
@supports (animation-timeline: view()) {
  [data-design="a"] .fs-hero__reveal,
  [data-design="a"] .fs-hero__tape {
    animation-name: fs-hero-walk, fs-band-lift;
    animation-duration: 16s, auto;
    animation-timing-function: var(--fs-ease-steady), linear;
    animation-iteration-count: infinite, 1;
    animation-direction: alternate, normal;
    animation-timeline: auto, view();
    animation-range: normal, exit 0% exit 100%;
  }
  @keyframes fs-band-lift {
    to { transform: translateY(-48px); opacity: 0.4; }
  }
  [data-design="a"] .fs-handoff__title {
    animation: fs-handoff-press both var(--fs-ease-press);
    animation-timeline: view();
    animation-range: entry 10% entry 45%;
  }
  [data-design="a"] .fs-handoff__rule {
    animation: fs-handoff-snap both var(--fs-ease-steady);
    animation-timeline: view();
    animation-range: entry 20% entry 60%;
  }
}
@keyframes fs-handoff-press {
  from { opacity: 0; transform: translateY(-10px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes fs-handoff-snap {
  from { transform: scaleX(0); }
  to   { transform: scaleX(1); }
}
[data-design="a"] .fs-handoff {
  padding-block: var(--fs-wall) var(--fs-cut);
  background: var(--fs-plaster);
}
@media (min-width: 768px) {
  [data-design="a"] .fs-handoff { padding-block: var(--fs-elevation) var(--fs-panel); }
}
[data-design="a"] .fs-handoff__inner {
  max-width: 1320px; margin-inline: auto; padding-inline: clamp(20px, 5vw, 48px);
}
[data-design="a"] .fs-handoff__title {
  font-family: "Archivo", "Helvetica Neue", Arial, sans-serif;
  font-weight: 800; font-size: var(--fs-size-h2); color: var(--fs-ink);
  margin: 0 0 var(--fs-cut);
}
[data-design="a"] .fs-handoff__rule {
  display: block; height: 1px; background: var(--fs-ink); opacity: 0.3;
  transform-origin: left;
}
[data-design="a"] .fs-handoff.is-set .fs-handoff__title { opacity: 1; transform: none; }

/* ============ Record / Process (Element 4) ============ */
[data-design="a"] .fs-record {
  padding-block: var(--fs-wall);
  background: var(--fs-plaster-shade);
  border-block: 1px solid var(--fs-line);
}
@media (min-width: 768px) {
  [data-design="a"] .fs-record { padding-block: var(--fs-elevation); }
}
[data-design="a"] .fs-record__inner {
  max-width: 1320px; margin-inline: auto;
  padding-inline: clamp(20px, 5vw, 48px); position: relative;
}
[data-design="a"] .fs-record__title {
  font-family: "Archivo", "Helvetica Neue", Arial, sans-serif;
  font-weight: 800; font-size: var(--fs-size-h2); color: var(--fs-ink);
  margin: 0 0 var(--fs-reach);
}
[data-design="a"] .fs-record__row {
  list-style: none; margin: 0; padding: 0;
  display: flex; flex-wrap: wrap; gap: 16px;
}
[data-design="a"] .fs-record__strip {
  display: inline-flex; align-items: center; gap: 12px;
  min-height: 48px; padding: 12px 20px;
  background: var(--fs-tape); color: var(--fs-plaster);
  border-radius: var(--fs-r-chip);
  box-shadow: var(--fs-edge-lift);
  opacity: 0; transform: translateY(-6px);
}
[data-design="a"] .fs-record.is-laid .fs-record__strip {
  opacity: 1; transform: translateY(0);
  box-shadow: var(--fs-edge);
  transition: opacity var(--fs-snap) var(--fs-ease-press),
              transform var(--fs-snap) var(--fs-ease-press),
              box-shadow var(--fs-snap) var(--fs-ease-press);
  transition-delay: calc(var(--fs-i, 0) * 120ms);
}
[data-design="a"] .fs-record__num {
  font-family: "Space Mono", "Courier New", monospace;
  font-size: var(--fs-size-caption); opacity: 0.75;
}
[data-design="a"] .fs-record__label {
  font-family: "Archivo", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700; font-size: var(--fs-size-body);
}
[data-design="a"] .fs-record__rule {
  display: block; height: 1px; background: var(--fs-ink); opacity: 0.3;
  margin-top: var(--fs-panel);
  transform: scaleX(0); transform-origin: left;
}
[data-design="a"] .fs-record.is-laid .fs-record__rule {
  transform: scaleX(1);
  transition: transform var(--fs-snap) var(--fs-ease-steady) 0.7s;
}
[data-design="a"] .fs-toyTab {
  position: absolute; right: clamp(20px, 5vw, 48px); top: -10px;
  width: 44px; height: 44px; padding: 12px 4px;
  background: none; border: 0; cursor: pointer;
}
[data-design="a"] .fs-toyTab::before {
  content: ""; display: block; width: 100%; height: 12px;
  background: var(--fs-tape); opacity: 0.5;
  box-shadow: 0 1px 0 var(--fs-shadowline);
  transform-origin: left bottom;
  transition: transform var(--fs-settle) var(--fs-ease-peel);
}
[data-design="a"] .fs-toyTab.is-peeled::before {
  transform: rotate(-24deg) translateY(-4px);
}

/* ============ Work / Before-After gallery ============ */
[data-design="a"] .fs-work {
  padding-block: var(--fs-wall); background: var(--fs-plaster);
}
@media (min-width: 768px) {
  [data-design="a"] .fs-work { padding-block: var(--fs-elevation); }
}
[data-design="a"] .fs-work__inner {
  max-width: 1320px; margin-inline: auto; padding-inline: clamp(20px, 5vw, 48px);
}
[data-design="a"] .fs-work__title {
  font-family: "Archivo", "Helvetica Neue", Arial, sans-serif;
  font-weight: 800; font-size: var(--fs-size-h2); color: var(--fs-ink);
  margin: 0 0 var(--fs-cut);
}
[data-design="a"] .fs-work__lede {
  font-size: var(--fs-size-lead); line-height: 1.5; color: var(--fs-muted);
  max-width: 60ch; margin: 0 0 var(--fs-reach);
}
[data-design="a"] .fs-work__grid {
  display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--fs-panel);
  margin-bottom: var(--fs-reach);
}
[data-design="a"] .fs-work__panel {
  margin: 0; box-shadow: var(--fs-edge); background: var(--fs-plaster-shade);
  border-radius: var(--fs-r-0); overflow: hidden;
}
[data-design="a"] .fs-work__panel img {
  display: block; width: 100%; height: 260px; object-fit: cover;
}
@media (max-width: 767px) {
  [data-design="a"] .fs-work__grid { grid-template-columns: 1fr; }
}
[data-design="a"] .fs-noPhoto {
  background: linear-gradient(180deg, var(--fs-plaster-shade) 0 60%, var(--fs-oxide) 60% 100%);
  min-height: 220px; position: relative;
}
[data-design="a"] .fs-noPhoto::after {
  content: ""; position: absolute; left: 0; right: 0; top: 60%; height: 1px;
  background: var(--fs-line);
}

/* ============ Services ============ */
[data-design="a"] .fs-services {
  padding-block: var(--fs-wall); background: var(--fs-plaster-shade);
  border-block: 1px solid var(--fs-line);
}
@media (min-width: 768px) {
  [data-design="a"] .fs-services { padding-block: var(--fs-elevation); }
}
[data-design="a"] .fs-services__inner {
  max-width: 1320px; margin-inline: auto; padding-inline: clamp(20px, 5vw, 48px);
}
[data-design="a"] .fs-services__title {
  font-family: "Archivo", "Helvetica Neue", Arial, sans-serif;
  font-weight: 800; font-size: var(--fs-size-h2); color: var(--fs-ink);
  margin: 0 0 var(--fs-reach);
}
[data-design="a"] .fs-services__grid {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: var(--fs-panel);
}
[data-design="a"] .fs-panel {
  background: var(--fs-plaster); box-shadow: var(--fs-edge);
  border-radius: var(--fs-r-0); padding: var(--fs-panel) var(--fs-cut) var(--fs-cut);
  position: relative;
}
[data-design="a"] .fs-panel--flat p {
  font-size: var(--fs-size-body); line-height: 1.6; color: var(--fs-ink);
  margin: var(--fs-cut) 0 0;
}
[data-design="a"] .fs-tab {
  display: inline-flex; align-items: center;
  font-family: "Space Mono", "Courier New", monospace;
  font-size: var(--fs-size-caption); text-transform: uppercase;
  letter-spacing: 0.06em; color: var(--fs-plaster);
  background: var(--fs-tape); padding: 4px 10px;
  border-radius: var(--fs-r-chip);
}

/* ============ About / Crew ============ */
[data-design="a"] .fs-about {
  padding-block: var(--fs-wall); background: var(--fs-plaster);
}
@media (min-width: 768px) {
  [data-design="a"] .fs-about { padding-block: var(--fs-elevation); }
}
[data-design="a"] .fs-about__inner {
  max-width: 1320px; margin-inline: auto; padding-inline: clamp(20px, 5vw, 48px);
}
[data-design="a"] .fs-panel--record.fs-about__panel {
  display: grid; grid-template-columns: 280px 1fr; gap: var(--fs-panel);
  padding: 0; overflow: hidden;
}
[data-design="a"] .fs-about__panel .fs-noPhoto { min-height: 100%; }
[data-design="a"] .fs-about__body { padding: var(--fs-panel) var(--fs-cut) var(--fs-panel) 0; }
[data-design="a"] .fs-about__title {
  font-family: "Archivo", "Helvetica Neue", Arial, sans-serif;
  font-weight: 800; font-size: var(--fs-size-h2); color: var(--fs-ink);
  margin: var(--fs-cut) 0 var(--fs-cut);
}
[data-design="a"] .fs-about__body p {
  font-size: var(--fs-size-body); line-height: 1.6; color: var(--fs-ink);
  max-width: 65ch; margin: 0;
}
@media (max-width: 767px) {
  [data-design="a"] .fs-panel--record.fs-about__panel { grid-template-columns: 1fr; }
  [data-design="a"] .fs-about__body { padding: 0 var(--fs-cut) var(--fs-panel); }
}

/* ============ Service area ============ */
[data-design="a"] .fs-area {
  padding-block: var(--fs-wall); background: var(--fs-plaster-shade);
  border-block: 1px solid var(--fs-line);
}
@media (min-width: 768px) {
  [data-design="a"] .fs-area { padding-block: var(--fs-elevation); }
}
[data-design="a"] .fs-area__inner {
  max-width: 1320px; margin-inline: auto; padding-inline: clamp(20px, 5vw, 48px);
}
[data-design="a"] .fs-area__title {
  font-family: "Archivo", "Helvetica Neue", Arial, sans-serif;
  font-weight: 800; font-size: var(--fs-size-h2); color: var(--fs-ink);
  margin: 0 0 var(--fs-cut);
}
[data-design="a"] .fs-area__body {
  font-size: var(--fs-size-lead); line-height: 1.5; color: var(--fs-ink);
  max-width: 60ch; margin: 0 0 var(--fs-reach);
}
[data-design="a"] .fs-area__list {
  list-style: none; margin: 0; padding: 0;
  display: flex; flex-wrap: wrap; gap: 12px;
}

/* ============ FAQ (Lap / accordion) ============ */
[data-design="a"] .fs-faq {
  padding-block: var(--fs-wall); background: var(--fs-plaster);
}
@media (min-width: 768px) {
  [data-design="a"] .fs-faq { padding-block: var(--fs-elevation); }
}
[data-design="a"] .fs-faq__inner {
  max-width: 1320px; margin-inline: auto; padding-inline: clamp(20px, 5vw, 48px);
  max-width: 860px;
}
[data-design="a"] .fs-faq__title {
  font-family: "Archivo", "Helvetica Neue", Arial, sans-serif;
  font-weight: 800; font-size: var(--fs-size-h2); color: var(--fs-ink);
  margin: 0 0 var(--fs-reach);
}
[data-design="a"] .fs-lap {
  border-bottom: 1px solid var(--fs-line);
}
[data-design="a"] .fs-lap__summary {
  width: 100%; display: flex; align-items: center; gap: var(--fs-cut);
  min-height: 56px; padding: var(--fs-cut) 0;
  background: none; border: 0; cursor: pointer; text-align: left;
  font-family: "Archivo", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700; font-size: var(--fs-size-lead); color: var(--fs-ink);
}
[data-design="a"] .fs-lap__tab {
  display: inline-block; width: 20px; height: 8px; flex-shrink: 0;
  background: var(--fs-tape); box-shadow: 0 1px 0 var(--fs-shadowline);
  transition: transform var(--fs-press) var(--fs-ease-press);
}
[data-design="a"] .fs-lap__summary[aria-expanded="true"] .fs-lap__tab { transform: rotate(90deg); }
[data-design="a"] .fs-lap__content { padding: 0 0 var(--fs-cut); }
[data-design="a"] .fs-lap__content[hidden] { display: none; }
[data-design="a"] .fs-lap__content p {
  font-size: var(--fs-size-body); line-height: 1.6; color: var(--fs-ink);
  margin: 0; max-width: 65ch;
}

/* ============ Footer ============ */
[data-design="a"] .fs-footer {
  padding-block: var(--fs-wall); background: var(--fs-plaster-shade);
  border-top: 1px solid var(--fs-line);
}
@media (min-width: 768px) {
  [data-design="a"] .fs-footer { padding-block: var(--fs-elevation); }
}
[data-design="a"] .fs-footer__inner {
  max-width: 1320px; margin-inline: auto; padding-inline: clamp(20px, 5vw, 48px);
}
[data-design="a"] .fs-footer__title {
  font-family: "Archivo", "Helvetica Neue", Arial, sans-serif;
  font-weight: 800; font-size: var(--fs-size-h2); color: var(--fs-ink);
  margin: 0 0 var(--fs-reach);
}
[data-design="a"] .fs-footer__cols {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--fs-panel);
  margin-bottom: var(--fs-reach);
}
[data-design="a"] .fs-footer__col p {
  font-family: "Space Mono", "Courier New", monospace;
  font-size: var(--fs-size-caption); line-height: 1.7; color: var(--fs-muted);
  margin: var(--fs-band) 0 0;
}
[data-design="a"] .fs-footer__col a { color: var(--fs-ink); }
@media (max-width: 767px) {
  [data-design="a"] .fs-footer__cols { grid-template-columns: 1fr; }
}
[data-design="a"] .fs-footer__copyright {
  font-family: "Space Mono", "Courier New", monospace;
  font-size: var(--fs-size-caption); color: var(--fs-muted);
  border-top: 1px solid var(--fs-line); padding-top: var(--fs-cut); margin: 0;
}

/* ============ Reduced motion ============ */
@media (prefers-reduced-motion: reduce) {
  [data-design="a"] .fs-header__bandEdge { animation: none; transform: translateX(0); }
  [data-design="a"] .fs-drawer.is-open { transition: none; }
  [data-design="a"] .fs-drawer.is-open .fs-drawer__link { transition: none; opacity: 1; transform: none; }
  [data-design="a"] .fs-cta::after { animation: none; }
  [data-design="a"] .fs-cta__fill { transition: none; }
  [data-design="a"] .fs-hero__reveal,
  [data-design="a"] .fs-hero__tape { animation: none; clip-path: inset(0 8% 0 0); }
  [data-design="a"] .fs-hero__snapline { animation: none; transform: scaleX(1); }
  [data-design="a"] .fs-pointer__strip { animation: none; clip-path: inset(0 0 0 0); opacity: 1; }
  [data-design="a"] .fs-fstep.is-peeling { animation: none; opacity: 0; }
  [data-design="a"] .fs-astrip,
  [data-design="a"] .fs-astrip__corner,
  [data-design="a"] .fs-funnel__length.is-pressed::after { transition: none; }
  [data-design="a"] .fs-record__strip { opacity: 1; transform: none; transition: none; box-shadow: var(--fs-edge); }
  [data-design="a"] .fs-record__rule { transform: scaleX(1); transition: none; }
  [data-design="a"] .fs-toyTab::before { transition: none; }
  [data-design="a"] .fs-hero__reveal,
  [data-design="a"] .fs-hero__tape,
  [data-design="a"] .fs-handoff__title,
  [data-design="a"] .fs-handoff__rule { animation: none; opacity: 1; transform: none; }
}

/* ============ Mobile safety (bottom-appended, per contract) ============ */
[data-design="a"].dq-design,
[data-design="a"] .dq-design { max-width: 100%; overflow-x: clip; }
[data-design="a"].dq-design * { min-width: 0; }
[data-design="a"].dq-design img,
[data-design="a"].dq-design 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; }
