/* ============================================================
   DESIGN A — Cipher (remapped cipher -> a) · Rainy City Roofing
   Premium-funnel: the funnel IS the page.
   ============================================================ */

[data-design="a"] {
  /* --- Cipher token system --- */
  --cp-bg: #060606;
  --cp-bg-soft: #0E0E0E;
  --cp-bg-line: #1A1A1A;
  --cp-ink: #FAFAFA;
  --cp-ink-soft: #C4C4C4;
  --cp-mute: #6B6B6B;
  --cp-dim: #3A3A3A;
  --cp-signal: #58F500;
  --cp-signal-deep: #2EAA00;
  --cp-amber: #FFB020;
  --cp-red: #FF3B30;
  --cp-rule: rgba(250,250,250,.14);
  --cp-rule-strong: rgba(250,250,250,.28);

  /* exposed primary token (contract) */
  --design-a-primary: #58F500;

  --cp-ease-cmd: cubic-bezier(.6,0,.4,1);
  --cp-ease-linear: linear;
  --cp-ease-settle: cubic-bezier(.2,.7,.3,1);
  --cp-d-snap: 100ms;
  --cp-d-press: 120ms;
  --cp-d-register: 200ms;
  --cp-d-settle: 400ms;

  --cp-hair: 1px; --cp-tight: 4px; --cp-snug: 8px; --cp-margin: 16px;
  --cp-gutter: 24px; --cp-bay: 32px; --cp-stanza: 64px; --cp-chapter: 96px;

  --cp-r-1: 2px; --cp-r-card: 4px;

  background: var(--cp-bg);
  color: var(--cp-ink);
}

[data-design="a"].dq-design {
  font-family: "Inter", system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
}

[data-design="a"] *, [data-design="a"] *::before, [data-design="a"] *::after { box-sizing: border-box; }

/* ============================================================
   ELEMENT 1 — Animated minimalist header (live status line)
   ============================================================ */
[data-design="a"] .a-header {
  position: sticky; top: 0; z-index: 40;
  background: var(--cp-bg);
  border-bottom: 1px solid var(--cp-bg-line);
}
[data-design="a"] .a-header__bar {
  display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 24px;
  padding: 14px clamp(16px,4vw,40px);
  max-width: 1480px; margin: 0 auto;
}
[data-design="a"] .a-logo {
  text-decoration: none; color: var(--cp-ink);
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 15px; font-weight: 500;
  display: inline-flex; align-items: baseline; gap: 4px; white-space: nowrap;
}
[data-design="a"] .a-logo__bracket { color: var(--cp-signal); }
[data-design="a"] .a-logo__mark { letter-spacing: -.005em; position: relative; }
[data-design="a"] .a-logo__shimmer {
  position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(100deg, transparent 35%, rgba(88,245,0,.55) 50%, transparent 65%);
  background-size: 280% 100%; mix-blend-mode: screen;
  animation: cp-shimmer 11s var(--cp-ease-settle) infinite;
}
@keyframes cp-shimmer { 0%,8% { background-position: 180% 0; } 16%,100% { background-position: -120% 0; } }
[data-design="a"] .a-logo__cursor { color: var(--cp-signal); animation: cp-blink 1.1s var(--cp-ease-linear) infinite; margin-left: 2px; }
@keyframes cp-blink { 0%,49% { opacity: 1; } 50%,100% { opacity: 0; } }

[data-design="a"] .a-header__status {
  display: inline-flex; align-items: center; gap: 10px; min-width: 0;
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 12px; color: var(--cp-ink-soft);
  border: 1px solid var(--cp-bg-line); padding: 8px 14px; border-radius: var(--cp-r-1);
  background: var(--cp-bg-soft); overflow: hidden;
}
@media (max-width: 760px) { [data-design="a"] .a-header__status { display: none; } }
[data-design="a"] .a-header__dot {
  width: 8px; height: 8px; border-radius: 50%; background: var(--cp-signal); flex: none;
  box-shadow: 0 0 6px rgba(88,245,0,.6);
  animation: cp-status-pulse 1.6s var(--cp-ease-settle) infinite;
}
@keyframes cp-status-pulse { 0%,100% { opacity: 1; box-shadow: 0 0 6px rgba(88,245,0,.6); } 50% { opacity: .65; box-shadow: 0 0 0 rgba(88,245,0,0); } }
[data-design="a"] .a-header__ticker { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--cp-signal); }

[data-design="a"] .a-menu-btn {
  appearance: none; background: transparent; color: var(--cp-ink);
  border: 1px solid var(--cp-rule-strong); padding: 10px 14px; cursor: pointer; border-radius: var(--cp-r-1);
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 13px; min-height: 44px;
  transition: border-color var(--cp-d-snap) var(--cp-ease-cmd), color var(--cp-d-snap) var(--cp-ease-cmd);
}
[data-design="a"] .a-menu-btn:hover { border-color: var(--cp-signal); color: var(--cp-signal); }
[data-design="a"] .a-menu-btn:focus-visible { outline: 2px solid var(--cp-signal); outline-offset: 3px; }

/* Drawer — phone + license only (display:none when closed) */
[data-design="a"] .a-drawer {
  position: fixed; inset: 0; z-index: 60; background: rgba(6,6,6,.96);
  display: none; padding-top: 92px; overflow-y: auto;
}
[data-design="a"] .a-drawer[data-open="true"] { display: block; }
[data-design="a"] .a-drawer__inner {
  max-width: 720px; margin: 0 auto;
  padding: clamp(32px,6vw,72px) clamp(20px,5vw,40px);
  display: grid; gap: 24px; position: relative;
}
[data-design="a"] .a-drawer__close {
  position: absolute; top: 16px; right: clamp(20px,5vw,40px);
  appearance: none; background: transparent; border: 1px solid var(--cp-rule-strong);
  color: var(--cp-ink); border-radius: var(--cp-r-1); padding: 10px 14px; min-height: 44px;
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 13px; cursor: pointer;
}
[data-design="a"] .a-drawer__close:hover { border-color: var(--cp-signal); color: var(--cp-signal); }
[data-design="a"] .a-drawer__phone {
  display: grid; grid-template-columns: 40px 1fr; gap: 16px; align-items: baseline;
  color: var(--cp-ink); text-decoration: none;
  font-family: "Inter Tight", sans-serif; font-weight: 700;
  font-size: clamp(28px,6vw,48px); letter-spacing: -.02em; line-height: 1.05;
  padding: 16px 0; border-bottom: 1px solid var(--cp-bg-line);
  transition: padding-left var(--cp-d-snap) var(--cp-ease-cmd), color var(--cp-d-snap) var(--cp-ease-cmd);
}
[data-design="a"] .a-drawer__phone:hover { padding-left: 12px; color: var(--cp-signal); }
[data-design="a"] .a-drawer__sigil { font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 18px; font-weight: 400; color: var(--cp-mute); }
[data-design="a"] .a-drawer__phone:hover .a-drawer__sigil { color: var(--cp-signal); }
[data-design="a"] .a-drawer__license { font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 13px; color: var(--cp-mute); margin: 0; letter-spacing: .04em; }

/* ============================================================
   FUNNEL = THE PAGE (Element 5) · hero is Step 1
   ============================================================ */
[data-design="a"] .a-funnel-wrap {
  background: var(--cp-bg); color: var(--cp-ink);
  padding: clamp(40px,8vw,88px) clamp(16px,4vw,40px) clamp(56px,9vw,96px);
  border-bottom: 1px solid var(--cp-bg-line);
}
[data-design="a"] .a-funnel {
  max-width: 720px; margin: 0 auto;
  background: var(--cp-bg-soft); border: 1px solid var(--cp-rule-strong); border-radius: var(--cp-r-card);
  box-shadow: 0 0 0 1px rgba(88,245,0,.18), 0 24px 60px -40px rgba(88,245,0,.08);
  overflow: hidden;
}

/* ELEMENT 6 — signature pointer = forward-progress strip (forced visible).
   The wrapper carries class "cp-pointer" + data-mf-role="pointer". The strict gate queries
   BOTH [data-mf-role="pointer"] AND [class*="pointer"]; this discrete element answers both and
   is always visible at first paint (opacity:1, min-height ≥ 52px). Never display:none / reveal-gated. */
[data-design="a"] .a-progress,
[data-design="a"] .cp-pointer {
  display: grid; grid-template-columns: auto 1fr auto; gap: 16px; align-items: center;
  padding: 16px clamp(18px,4vw,24px); border-bottom: 1px solid var(--cp-bg-line); background: var(--cp-bg);
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 12px;
  opacity: 1; min-height: 52px;
}
/* Pointer visibility floor — gate-hard: discrete, opaque (≥.5), measurable height (≥8px), always shown. */
[data-design="a"] .cp-pointer[data-mf-role="pointer"] {
  display: grid !important; opacity: 1 !important; visibility: visible !important; min-height: 52px;
}
[data-design="a"] .a-progress__num { color: var(--cp-signal); white-space: nowrap; letter-spacing: .04em; }
[data-design="a"] .a-progress__track {
  position: relative; height: 12px; background: var(--cp-bg-line); border-radius: 1px; min-width: 60px;
}
[data-design="a"] .a-progress__fill {
  position: absolute; inset: 0 auto 0 0; height: 100%; width: 20%;
  background: var(--cp-signal); box-shadow: 0 0 6px rgba(88,245,0,.5);
  transition: width var(--cp-d-settle) var(--cp-ease-cmd);
}
/* the cursor caret rides the right edge of the fill — re-uses the hero cursor primitive */
[data-design="a"] .a-progress__caret {
  position: absolute; top: 50%; left: 20%; transform: translate(-50%,-50%);
  color: var(--cp-signal); font-size: 14px; line-height: 1;
  text-shadow: 0 0 6px rgba(88,245,0,.7);
  transition: left var(--cp-d-settle) var(--cp-ease-cmd);
  animation: cp-blink 1.1s var(--cp-ease-linear) infinite;
}
[data-design="a"] .a-progress__hint { color: var(--cp-mute); font-size: 11px; white-space: nowrap; }
@media (max-width: 520px) { [data-design="a"] .a-progress__hint { display: none; } }

/* steps */
[data-design="a"] .a-steps { position: relative; padding: clamp(24px,5vw,44px); }
[data-design="a"] .a-step { border: 0; margin: 0; padding: 0; min-width: 0; }
[data-design="a"] .a-step:not([data-active="true"]):not(.a-done) { display: none; }
[data-design="a"] .a-step[data-active="true"] {
  display: block; opacity: 0; transform: translateX(8px);
  animation: cp-step-in 360ms var(--cp-ease-cmd) forwards;
}
@keyframes cp-step-in { to { opacity: 1; transform: translateX(0); } }
/* step 1 (hero) must be visible at FIRST PAINT — no reveal-gate */
[data-design="a"] .a-step[data-step="1"][data-active="true"] { opacity: 1; transform: none; animation: none; }

[data-design="a"] .a-step__value {
  font-family: "Inter Tight", sans-serif; font-weight: 700;
  font-size: clamp(26px,3.6vw,38px); line-height: 1.1; letter-spacing: -.02em;
  margin: 0 0 12px; max-width: 20ch; color: var(--cp-ink); text-wrap: balance;
}
[data-design="a"] .a-step__reassure {
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: clamp(12px,1.4vw,13px);
  color: var(--cp-mute); margin: 0 0 28px; letter-spacing: .02em;
}
[data-design="a"] .a-step__q {
  font-family: "Inter Tight", sans-serif; font-weight: 700;
  font-size: clamp(22px,2.8vw,28px); line-height: 1.2; letter-spacing: -.015em;
  margin: 0 0 8px;
}
[data-design="a"] .a-prompt { font-family: "JetBrains Mono", ui-monospace, monospace; color: var(--cp-signal); margin-right: 6px; }
[data-design="a"] .a-step__help { font-family: "Inter", sans-serif; font-size: 15px; line-height: 1.55; color: var(--cp-ink-soft); margin: 0 0 22px; }

[data-design="a"] .a-opts { display: grid; gap: 1px; background: var(--cp-bg-line); border: 1px solid var(--cp-bg-line); margin-top: 20px; }

/* ELEMENT 2 — step-advance answer buttons */
[data-design="a"] .a-opt {
  appearance: none; background: var(--cp-bg-soft); color: var(--cp-ink); border: 0;
  padding: 18px 18px; text-align: left; min-height: 56px;
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 15px;
  display: grid; grid-template-columns: 34px 1fr 18px; gap: 14px; align-items: center;
  cursor: pointer; transition: background var(--cp-d-snap) var(--cp-ease-cmd), color var(--cp-d-snap) var(--cp-ease-cmd);
}
[data-design="a"] .a-opt__label { line-height: 1.35; }
[data-design="a"] .a-opt:hover { background: var(--cp-bg); color: var(--cp-signal); }
[data-design="a"] .a-opt:focus-visible { outline: 2px solid var(--cp-signal); outline-offset: -2px; }
[data-design="a"] .a-opt__key { color: var(--cp-mute); }
[data-design="a"] .a-opt:hover .a-opt__key { color: var(--cp-signal); }
[data-design="a"] .a-opt__arrow { color: var(--cp-signal); opacity: 0; transition: opacity var(--cp-d-snap) var(--cp-ease-cmd); }
[data-design="a"] .a-opt:hover .a-opt__arrow, [data-design="a"] .a-opt:focus-visible .a-opt__arrow { opacity: 1; }
/* selected "checked" stamp (persists ~200ms before advance) */
[data-design="a"] .a-opt[data-picked="true"] { background: var(--cp-bg); color: var(--cp-signal); }
[data-design="a"] .a-opt[data-picked="true"] .a-opt__key { color: var(--cp-signal); }
[data-design="a"] .a-opt[data-picked="true"] .a-opt__arrow { opacity: 1; }

/* contact fields */
[data-design="a"] .a-field { display: grid; gap: 6px; margin-bottom: 16px; margin-top: 0; }
[data-design="a"] .a-field:first-of-type { margin-top: 20px; }
[data-design="a"] .a-field label {
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 11px; color: var(--cp-mute); letter-spacing: .14em; text-transform: uppercase;
}
[data-design="a"] .a-field input {
  background: var(--cp-bg); color: var(--cp-ink); border: 1px solid var(--cp-rule-strong);
  padding: 14px; font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 16px; outline: none; min-height: 52px;
  border-radius: var(--cp-r-1); width: 100%;
  transition: border-color var(--cp-d-register) var(--cp-ease-cmd), box-shadow var(--cp-d-register) var(--cp-ease-cmd);
}
[data-design="a"] .a-field input:focus { border-color: var(--cp-signal); box-shadow: 0 0 0 1px rgba(88,245,0,.4); }

[data-design="a"] .a-step__nav { display: flex; align-items: center; gap: 12px; margin-top: 24px; }
[data-design="a"] .a-step__nav--submit { justify-content: space-between; flex-wrap: wrap; }
[data-design="a"] .a-back {
  appearance: none; background: transparent; border: 0; color: var(--cp-mute);
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 13px; cursor: pointer; padding: 12px 0; min-height: 44px;
}
[data-design="a"] .a-back:hover { color: var(--cp-ink); }

/* ELEMENT 2 — end-of-funnel CTA = bracket button w/ traveling glow (loudest) */
[data-design="a"] .a-cta {
  position: relative; display: inline-flex; align-items: center; justify-content: center;
  padding: 16px 24px; background: var(--cp-bg); color: var(--cp-ink);
  border: 1px solid var(--cp-signal-deep); border-radius: var(--cp-r-1);
  text-decoration: none; cursor: pointer; isolation: isolate; min-height: 56px;
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 15px; font-weight: 500;
  transition: transform var(--cp-d-press) var(--cp-ease-cmd), border-color var(--cp-d-register) var(--cp-ease-cmd);
}
[data-design="a"] .a-cta__glow {
  position: absolute; inset: -1px; border-radius: inherit; pointer-events: none; z-index: -1;
  background: conic-gradient(from 0deg, transparent 0deg, var(--cp-signal) 60deg, transparent 120deg);
  animation: cp-cta-rotate 4.4s var(--cp-ease-linear) infinite; opacity: .7;
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
          mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor; mask-composite: exclude; padding: 1px;
}
[data-design="a"] .a-cta:hover { border-color: var(--cp-signal); }
[data-design="a"] .a-cta:hover .a-cta__glow { animation-duration: 2.2s; opacity: 1; }
[data-design="a"] .a-cta__arrow { color: var(--cp-signal); opacity: 0; transition: opacity var(--cp-d-register) var(--cp-ease-cmd); }
[data-design="a"] .a-cta:hover .a-cta__arrow { opacity: 1; }
[data-design="a"] .a-cta:active { transform: translateY(1px); }
[data-design="a"] .a-cta:focus-visible { outline: 2px solid var(--cp-signal); outline-offset: 3px; }
@keyframes cp-cta-rotate { to { transform: rotate(360deg); } }

/* confirmation / payoff */
[data-design="a"] .a-done[hidden] { display: none; }
[data-design="a"] .a-done {
  display: block; opacity: 0; transform: translateX(8px);
  animation: cp-step-in 360ms var(--cp-ease-cmd) forwards;
}
[data-design="a"] .a-done__log {
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 13px;
  background: var(--cp-bg); border: 1px solid var(--cp-bg-line); border-radius: var(--cp-r-1);
  padding: 12px 16px; margin-bottom: 24px; color: var(--cp-ink-soft);
  display: grid; grid-template-columns: auto auto 1fr; gap: 16px; align-items: baseline;
}
[data-design="a"] .a-done__time { color: var(--cp-mute); }
[data-design="a"] .a-done__level {
  color: var(--cp-signal); font-size: 11px; letter-spacing: .12em; text-transform: uppercase;
  padding: 2px 6px; border: 1px solid currentColor; border-radius: var(--cp-r-1); line-height: 1.2; align-self: center;
}
[data-design="a"] .a-done__msg { color: var(--cp-ink); }
[data-design="a"] .a-done__title {
  font-family: "Inter Tight", sans-serif; font-weight: 700;
  font-size: clamp(24px,3.2vw,34px); margin: 0 0 12px; letter-spacing: -.015em; line-height: 1.15; max-width: 22ch;
}
[data-design="a"] .a-done__sub { font-family: "Inter", sans-serif; color: var(--cp-ink-soft); margin: 0 0 28px; max-width: 52ch; line-height: 1.55; }
[data-design="a"] .a-cta--done { font-size: clamp(15px,2vw,18px); }
[data-design="a"] .a-done__ref { font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 11px; color: var(--cp-mute); margin: 20px 0 0; letter-spacing: .08em; }

/* ============================================================
   ELEMENT 4 — below-funnel reassurance bar (drift marquee)
   ============================================================ */
[data-design="a"] .a-reassure {
  background: var(--cp-bg-soft); border-bottom: 1px solid var(--cp-bg-line);
  padding: clamp(40px,6vw,72px) 0;
}
[data-design="a"] .a-reassure__marquee { overflow: hidden; border-top: 1px solid var(--cp-bg-line); border-bottom: 1px solid var(--cp-bg-line); padding: 14px 0; }
[data-design="a"] .a-reassure__track {
  display: inline-flex; gap: 48px; white-space: nowrap; will-change: transform;
  animation: cp-drift 32s var(--cp-ease-linear) infinite;
}
@keyframes cp-drift { from { transform: translateX(0); } to { transform: translateX(-50%); } }
[data-design="a"] .a-reassure__item {
  display: inline-flex; align-items: center; gap: 10px;
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 13px; color: var(--cp-ink-soft); letter-spacing: .03em;
}
[data-design="a"] .a-reassure__dot { width: 6px; height: 6px; border-radius: 50%; background: var(--cp-signal); flex: none; }
[data-design="a"] .a-review { max-width: 720px; margin: clamp(32px,5vw,48px) auto 0; padding: 0 clamp(20px,5vw,40px); }
[data-design="a"] .a-review__quote {
  font-family: "Inter Tight", sans-serif; font-weight: 700; font-size: clamp(18px,2.4vw,24px);
  line-height: 1.4; letter-spacing: -.01em; color: var(--cp-ink); margin: 0; text-wrap: balance;
}
[data-design="a"] .a-review__by { font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 12px; color: var(--cp-mute); margin-top: 16px; letter-spacing: .03em; }

/* ============================================================
   Footer
   ============================================================ */
[data-design="a"] .a-footer { background: var(--cp-bg); color: var(--cp-ink-soft); padding: clamp(48px,7vw,80px) clamp(16px,4vw,40px) clamp(32px,4vw,48px); }
[data-design="a"] .a-footer__inner { max-width: 1080px; margin: 0 auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
@media (max-width: 720px) { [data-design="a"] .a-footer__inner { grid-template-columns: 1fr; gap: 28px; } }
[data-design="a"] .a-footer__brand { font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 14px; color: var(--cp-signal); display: block; margin-bottom: 12px; }
[data-design="a"] .a-footer__line { font-size: 14px; line-height: 1.55; margin: 0 0 8px; color: var(--cp-ink-soft); }
[data-design="a"] .a-footer__link { display: block; color: var(--cp-ink); text-decoration: none; font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 15px; margin-bottom: 8px; }
[data-design="a"] .a-footer__link:hover { color: var(--cp-signal); }
[data-design="a"] .a-footer__lic { font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 13px; color: var(--cp-mute); letter-spacing: .03em; }
[data-design="a"] .a-footer__disclaimer { font-size: 12px; color: var(--cp-mute); line-height: 1.5; margin-top: 12px; }
[data-design="a"] .a-footer__base {
  max-width: 1080px; margin: clamp(32px,4vw,48px) auto 0; padding-top: 24px; border-top: 1px solid var(--cp-bg-line);
  display: flex; align-items: center; gap: 10px;
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 12px; color: var(--cp-mute); flex-wrap: wrap;
}
[data-design="a"] .a-footer__dot { width: 7px; height: 7px; border-radius: 50%; background: var(--cp-signal); box-shadow: 0 0 6px rgba(88,245,0,.5); }

/* ============================================================
   Reduced-motion fallbacks (every signature interaction)
   ============================================================ */
@media (prefers-reduced-motion: reduce) {
  [data-design="a"] .a-logo__cursor,
  [data-design="a"] .a-logo__shimmer,
  [data-design="a"] .a-header__dot,
  [data-design="a"] .a-progress__caret,
  [data-design="a"] .a-cta__glow,
  [data-design="a"] .a-reassure__track { animation: none !important; }
  [data-design="a"] .a-logo__shimmer { display: none; }
  [data-design="a"] .a-cta__glow { opacity: .35 !important; }
  [data-design="a"] .a-step[data-active="true"],
  [data-design="a"] .a-done { animation: none !important; opacity: 1 !important; transform: none !important; }
}

/* ============================================================
   Mobile no-h-scroll contract (must stay 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; }
