/* ================================================================
   Almanac Press — Design A
   Scoped: [data-design="a"] — ZERO almanac-press source scope left
   Primary: --design-a-primary exposed on [data-design="a"]
================================================================ */

/* ── Google Fonts ──────────────────────────────────────────────── */
@import url('https://fonts.googleapis.com/css2?family=Old+Standard+TT:ital,wght@0,400;0,700;1,400&family=Crimson+Pro:ital,wght@0,400;0,600;1,400&family=Special+Elite&family=JetBrains+Mono:wght@400;500&display=swap');

/* ── Design tokens ─────────────────────────────────────────────── */
[data-design="a"] {
  --design-a-primary:   #1E5E6E;

  --ap-paper:           #F2EAD6;
  --ap-paper-deep:      #E6DBBE;
  --ap-ink:             #1B1A17;
  --ap-ink-soft:        #3D3A33;
  --ap-muted:           #7A7363;
  --ap-rule:            #2A2722;
  --ap-cyan:            #1E5E6E;
  --ap-brick:           #A53A2A;
  --ap-ochre:           #B98421;
  --ap-moss:            #4D5A2C;
  --ap-critical:        #7A1F14;

  --design-a-brick:     var(--ap-brick);

  --ap-font-display:    "Old Standard TT", "Bodoni 72", Didot, Georgia, serif;
  --ap-font-body:       "Crimson Pro", "Hoefler Text", Georgia, serif;
  --ap-font-stamp:      "Special Elite", "American Typewriter", ui-monospace, monospace;
  --ap-font-mono:       "JetBrains Mono", "SF Mono", Menlo, monospace;

  --ap-text-xs:         12px;
  --ap-text-sm:         14px;
  --ap-text-base:       16px;
  --ap-text-md:         20px;
  --ap-text-lg:         28px;
  --ap-text-xl:         40px;
  --ap-text-2xl:        clamp(48px, 9vw, 80px);
  --ap-text-3xl:        clamp(72px, 14vw, 144px);

  --ap-space-hairline:  2px;
  --ap-space-quad:      4px;
  --ap-space-em:        8px;
  --ap-space-pica:      12px;
  --ap-space-leading:   16px;
  --ap-space-folio:     24px;
  --ap-space-column:    40px;
  --ap-space-signature: 64px;
  --ap-space-gutter:    96px;
  --ap-space-bleed:     144px;

  --ap-dur-blink:       80ms;
  --ap-dur-snap:        160ms;
  --ap-dur-settle:      320ms;
  --ap-dur-unfurl:      640ms;
  --ap-dur-tide:        13000ms;
  --ap-dur-press:       22000ms;

  --ap-ease-paper:      cubic-bezier(.22, .61, .36, 1);
  --ap-ease-press:      cubic-bezier(.7, 0, .84, 0);
  --ap-ease-release:    cubic-bezier(.16, 1, .3, 1);
  --ap-ease-tide:       cubic-bezier(.45, .05, .55, .95);

  --ap-radius-zero:     0;
  --ap-radius-pica:     2px;
  --ap-radius-half:     4px;
  --ap-radius-pin:      50%;

  --ap-shadow-deboss:   inset 0 1px 0 rgba(27,26,23,.06), inset 0 -1px 0 rgba(27,26,23,.12);
  --ap-shadow-misreg-1: 2px 1px 0 rgba(30,94,110,.55), -2px -1px 0 rgba(165,58,42,.55);
  --ap-shadow-misreg-2: 3px 2px 0 rgba(30,94,110,.55), -3px -2px 0 rgba(165,58,42,.55);
  --ap-shadow-plate:    0 1px 0 var(--ap-rule);
  --ap-shadow-bound:    0 12px 0 -8px var(--ap-paper-deep), 0 12px 0 -7px var(--ap-rule);
}

/* ── Base reset / document ─────────────────────────────────────── */
.dq-design[data-design="a"] {
  background: var(--ap-paper);
  color: var(--ap-ink);
  font-family: var(--ap-font-body);
  font-size: var(--ap-text-base);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ── E1 — HEADER ───────────────────────────────────────────────── */
[data-design="a"] .ap-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: var(--ap-paper);
  border-bottom: 1px solid var(--ap-rule);
}

[data-design="a"] .ap-header__bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--ap-space-leading);
  padding: var(--ap-space-leading) var(--ap-space-folio);
  max-width: 1280px;
  margin: 0 auto;
  box-sizing: border-box;
}

[data-design="a"] .ap-logo {
  text-decoration: none;
  color: var(--ap-ink);
  display: flex;
  align-items: baseline;
  gap: var(--ap-space-leading);
  flex-wrap: wrap;
  min-width: 0;
}

[data-design="a"] .ap-logo__mark {
  position: relative;
  font-family: var(--ap-font-display);
  font-weight: 700;
  font-size: clamp(18px, 3vw, 26px);
  letter-spacing: -0.01em;
  isolation: isolate;
  white-space: nowrap;
}

[data-design="a"] .ap-logo__name {
  position: relative;
  z-index: 3;
  color: var(--ap-ink);
}

[data-design="a"] .ap-logo__plate {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  mix-blend-mode: multiply;
  font: inherit;
  white-space: nowrap;
  color: transparent;
}

[data-design="a"] .ap-logo__plate--cyan {
  z-index: 2;
  color: var(--ap-cyan);
  opacity: .55;
  transform: translate(8px, 4px);
  transition: transform 320ms var(--ap-ease-release);
}

[data-design="a"] .ap-logo__plate--brick {
  z-index: 1;
  color: var(--ap-brick);
  opacity: .55;
  transform: translate(-8px, -4px);
  transition: transform 320ms var(--ap-ease-release) 40ms;
}

[data-design="a"] .ap-header--registered .ap-logo__plate--cyan {
  transform: translate(2px, 1px);
}

[data-design="a"] .ap-header--registered .ap-logo__plate--brick {
  transform: translate(-2px, -1px);
}

[data-design="a"] .ap-logo__desc {
  font-family: var(--ap-font-body);
  font-style: italic;
  font-size: var(--ap-text-sm);
  color: var(--ap-muted);
  border-left: 1px solid var(--ap-rule);
  padding-left: var(--ap-space-leading);
}

[data-design="a"] .ap-header__rule {
  height: 1px;
  background: var(--ap-rule);
  animation: a-rule-breath var(--ap-dur-press) var(--ap-ease-tide) infinite;
}

@keyframes a-rule-breath {
  0%,100% { background: var(--ap-rule); }
  25%     { background: var(--ap-cyan); opacity: .55; }
  50%     { background: var(--ap-rule); }
  75%     { background: var(--ap-brick); opacity: .55; }
}

/* ── Hamburger ─────────────────────────────────────────────────── */
[data-design="a"] .ap-hamburger {
  display: flex;
  flex-direction: column;
  gap: 5px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 10px;
  min-width: 44px;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

[data-design="a"] .ap-hamburger__bar {
  display: block;
  width: 24px;
  height: 2px;
  background: var(--ap-ink);
  transition: transform var(--ap-dur-snap) var(--ap-ease-paper),
              opacity var(--ap-dur-snap) var(--ap-ease-paper);
}

[data-design="a"] .ap-hamburger[aria-expanded="true"] .ap-hamburger__bar:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}
[data-design="a"] .ap-hamburger[aria-expanded="true"] .ap-hamburger__bar:nth-child(2) {
  opacity: 0;
}
[data-design="a"] .ap-hamburger[aria-expanded="true"] .ap-hamburger__bar:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

/* ── Drawer ────────────────────────────────────────────────────── */
[data-design="a"] .ap-drawer {
  position: fixed;
  inset: 0;
  z-index: 200;
  display: flex;
}

[data-design="a"] .ap-drawer[hidden] {
  display: none;
}

[data-design="a"] .ap-drawer__overlay {
  position: absolute;
  inset: 0;
  background: rgba(27, 26, 23, .6);
  cursor: pointer;
}

[data-design="a"] .ap-drawer__panel {
  position: relative;
  z-index: 1;
  background: var(--ap-paper);
  width: min(340px, 90vw);
  margin-left: auto;
  padding: var(--ap-space-gutter) var(--ap-space-folio) var(--ap-space-folio);
  display: flex;
  flex-direction: column;
  gap: var(--ap-space-column);
  overflow-y: auto;
  box-shadow: -4px 0 0 var(--ap-rule);
}

[data-design="a"] .ap-drawer__close {
  position: absolute;
  top: var(--ap-space-leading);
  right: var(--ap-space-folio);
  background: none;
  border: none;
  cursor: pointer;
  font-size: var(--ap-text-md);
  color: var(--ap-ink);
  padding: 8px;
  min-width: 44px;
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
}

[data-design="a"] .ap-drawer__nav {
  list-style: none;
  padding: 0;
  margin: 0;
  border-top: 1px solid var(--ap-rule);
  padding-top: var(--ap-space-folio);
  display: flex;
  flex-direction: column;
  gap: 0;
}

[data-design="a"] .ap-drawer__link {
  display: block;
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-sm);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ap-ink);
  text-decoration: none;
  padding: var(--ap-space-pica) 0;
  border-bottom: 1px solid var(--ap-rule);
  min-height: 44px;
  display: flex;
  align-items: center;
}

[data-design="a"] .ap-drawer__link:hover {
  color: var(--ap-brick);
}

[data-design="a"] .ap-drawer__ctas {
  display: flex;
  flex-direction: column;
  gap: var(--ap-space-leading);
}

[data-design="a"] .ap-drawer__phone {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  text-decoration: none;
  color: var(--ap-ink);
  border: 1px solid var(--ap-rule);
  padding: var(--ap-space-pica) var(--ap-space-folio);
  min-height: 44px;
  justify-content: center;
}

[data-design="a"] .ap-drawer__phone-label {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ap-muted);
}

[data-design="a"] .ap-drawer__phone-num {
  font-family: var(--ap-font-mono);
  font-size: var(--ap-text-md);
  color: var(--ap-ink);
}

/* ── E2 — CTA (Plate Button) ───────────────────────────────────── */
[data-design="a"] .ap-cta {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: var(--ap-space-leading);
  padding: 14px 24px;
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-sm);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ap-paper);
  background: var(--ap-ink);
  border: none;
  border-radius: 0;
  text-decoration: none;
  cursor: pointer;
  isolation: isolate;
  transition: transform 120ms var(--ap-ease-release),
              background-color 120ms var(--ap-ease-paper);
  will-change: transform;
  min-height: 44px;
  min-width: 44px;
  box-sizing: border-box;
}

[data-design="a"] .ap-cta--primary {
  /* default already ink-on-paper */
}

[data-design="a"] .ap-cta__plate {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  transition: transform 320ms var(--ap-ease-release);
}

[data-design="a"] .ap-cta__plate--cyan {
  background: var(--ap-cyan);
  opacity: .55;
  transform: translate(var(--ap-cta-cx, 3px), var(--ap-cta-cy, 2px));
  animation: a-cta-breath-cyan 5s var(--ap-ease-tide) infinite;
}

[data-design="a"] .ap-cta__plate--brick {
  background: var(--ap-brick);
  opacity: .55;
  transform: translate(var(--ap-cta-bx, -3px), var(--ap-cta-by, -2px));
  animation: a-cta-breath-brick 5s var(--ap-ease-tide) infinite;
}

@keyframes a-cta-breath-cyan {
  0%,100% { transform: translate(2px, 1px); }
  50%     { transform: translate(4px, 2px); }
}

@keyframes a-cta-breath-brick {
  0%,100% { transform: translate(-2px, -1px); }
  50%     { transform: translate(-4px, -2px); }
}

[data-design="a"] .ap-cta__arrow {
  display: inline-block;
  transition: transform 200ms var(--ap-ease-release);
}

[data-design="a"] .ap-cta:hover .ap-cta__plate--cyan,
[data-design="a"] .ap-cta:focus-visible .ap-cta__plate--cyan {
  animation: none;
  transform: translate(8px, 4px);
}

[data-design="a"] .ap-cta:hover .ap-cta__plate--brick,
[data-design="a"] .ap-cta:focus-visible .ap-cta__plate--brick {
  animation: none;
  transform: translate(-8px, -4px);
}

[data-design="a"] .ap-cta:hover .ap-cta__arrow,
[data-design="a"] .ap-cta:focus-visible .ap-cta__arrow {
  transform: translateX(4px);
}

[data-design="a"] .ap-cta:focus-visible {
  outline: 2px solid var(--ap-cyan);
  outline-offset: 4px;
}

[data-design="a"] .ap-cta:active {
  transform: translate(1px, 1px);
  box-shadow: var(--ap-shadow-deboss);
}

[data-design="a"] .ap-cta:active .ap-cta__plate--cyan,
[data-design="a"] .ap-cta:active .ap-cta__plate--brick {
  animation: none;
  transform: translate(0, 0);
  transition-duration: 80ms;
}

/* ── E3 — HERO + animated course-lay backdrop ──────────────────── */
[data-design="a"] .ap-hero {
  position: relative;
  min-height: clamp(480px, 72vh, 800px);
  display: flex;
  align-items: center;
  overflow: hidden;
  background: var(--ap-ink);
}

/* Backdrop — z-index BELOW text; pointer-events: none */
[data-design="a"] .ap-hero__backdrop {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}

[data-design="a"] .ap-hero__canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
}

[data-design="a"] .ap-hero__wash {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    160deg,
    rgba(27,26,23,.55) 0%,
    rgba(30,94,110,.18) 60%,
    rgba(27,26,23,.72) 100%
  );
  animation: a-hero-wash 8s var(--ap-ease-tide) infinite alternate;
}

@keyframes a-hero-wash {
  0%   { opacity: .85; }
  100% { opacity: 1; }
}

/* Hero text — position:relative + z-index above backdrop */
[data-design="a"] .ap-hero__content {
  position: relative;
  z-index: 10;
  max-width: 820px;
  margin: 0 auto;
  padding: var(--ap-space-bleed) var(--ap-space-folio);
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--ap-space-leading);
  box-sizing: border-box;
}

[data-design="a"] .ap-hero__stamp {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(242,234,214,.65);
  margin: 0;
  /* opacity:1 at first paint — HARD RULE */
  opacity: 1;
}

[data-design="a"] .ap-hero__headline {
  font-family: var(--ap-font-display);
  font-weight: 700;
  font-size: var(--ap-text-2xl);
  line-height: 1.05;
  letter-spacing: -0.01em;
  color: var(--ap-paper);
  margin: 0;
  /* opacity:1 at first paint — HARD RULE */
  opacity: 1;
  text-shadow: var(--ap-shadow-misreg-1);
}

[data-design="a"] .ap-hero__subtitle {
  font-family: var(--ap-font-body);
  font-size: clamp(var(--ap-text-base), 2vw, var(--ap-text-md));
  line-height: 1.5;
  color: rgba(242,234,214,.80);
  margin: 0;
  opacity: 1;
  max-width: 60ch;
}

[data-design="a"] .ap-hero__proof {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(242,234,214,.60);
  margin: 0;
  opacity: 1;
}

[data-design="a"] .ap-hero__ctas {
  margin-top: var(--ap-space-em);
  display: flex;
  flex-wrap: wrap;
  gap: var(--ap-space-leading);
  justify-content: center;
}

[data-design="a"] .ap-cta--hero {
  font-size: var(--ap-text-base);
  padding: 16px 32px;
}

[data-design="a"] .ap-hero__rebate {
  font-family: var(--ap-font-body);
  font-style: italic;
  font-size: var(--ap-text-sm);
  color: rgba(242,234,214,.50);
  margin: 0;
  max-width: 52ch;
  opacity: 1;
}

/* ── PORTFOLIO ─────────────────────────────────────────────────── */
[data-design="a"] .ap-portfolio {
  background: var(--ap-paper);
  padding: var(--ap-space-gutter) var(--ap-space-folio);
  max-width: 1280px;
  margin: 0 auto;
  box-sizing: border-box;
}

[data-design="a"] .ap-portfolio__head {
  margin-bottom: var(--ap-space-column);
}

[data-design="a"] .ap-portfolio__stamp {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.12em;
  color: var(--ap-muted);
  text-transform: uppercase;
  margin: 0 0 var(--ap-space-leading);
}

[data-design="a"] .ap-portfolio__title {
  font-family: var(--ap-font-display);
  font-weight: 700;
  font-size: var(--ap-text-xl);
  line-height: 1.1;
  margin: 0 0 var(--ap-space-leading);
  color: var(--ap-ink);
}

[data-design="a"] .ap-portfolio__deck {
  font-family: var(--ap-font-body);
  font-size: var(--ap-text-base);
  line-height: 1.65;
  color: var(--ap-ink-soft);
  margin: 0;
  max-width: 60ch;
}

[data-design="a"] .ap-portfolio__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--ap-space-folio);
}

[data-design="a"] .ap-portfolio__item {
  margin: 0;
  border: 1px solid var(--ap-rule);
}

[data-design="a"] .ap-portfolio__img-wrap {
  aspect-ratio: 4/3;
  overflow: hidden;
  background: var(--ap-paper-deep);
}

[data-design="a"] .ap-portfolio__img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 6s var(--ap-ease-tide);
}

[data-design="a"] .ap-portfolio__item:hover .ap-portfolio__img-wrap img {
  transform: scale(1.025);
}

[data-design="a"] .ap-portfolio__caption {
  padding: var(--ap-space-leading) var(--ap-space-pica);
  border-top: 1px solid var(--ap-rule);
  display: flex;
  flex-direction: column;
  gap: 2px;
}

[data-design="a"] .ap-portfolio__label {
  font-family: var(--ap-font-display);
  font-size: var(--ap-text-base);
  font-weight: 700;
  color: var(--ap-ink);
}

[data-design="a"] .ap-portfolio__detail {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ap-muted);
}

[data-design="a"] .ap-portfolio__cta-wrap {
  margin-top: var(--ap-space-column);
  display: flex;
  justify-content: flex-start;
}

/* ── E4 — ALMANAC ROLL (Services) ──────────────────────────────── */
[data-design="a"] .ap-roll {
  background: var(--ap-paper-deep);
  padding: var(--ap-space-bleed) var(--ap-space-folio);
  max-width: 1280px;
  margin: 0 auto;
  box-sizing: border-box;
}

[data-design="a"] .ap-roll__stamp {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.12em;
  color: var(--ap-muted);
  text-transform: uppercase;
  margin: 0 0 var(--ap-space-leading);
}

[data-design="a"] .ap-roll__title {
  font-family: var(--ap-font-display);
  font-size: var(--ap-text-2xl);
  line-height: 1.05;
  font-weight: 700;
  letter-spacing: -0.01em;
  margin: 0 0 var(--ap-space-gutter);
  color: var(--ap-ink);
}

[data-design="a"] .ap-roll__list {
  list-style: none;
  padding: 0;
  margin: 0;
  border-top: 1px solid var(--ap-rule);
}

[data-design="a"] .ap-roll__item {
  display: grid;
  grid-template-columns: 7ch 1fr auto;
  gap: var(--ap-space-column);
  align-items: baseline;
  padding: var(--ap-space-folio) 0;
  border-bottom: 1px solid var(--ap-rule);
  position: relative;
  clip-path: inset(0 100% 0 0);
  opacity: 0;
  transition: clip-path var(--ap-dur-unfurl) var(--ap-ease-paper),
              opacity var(--ap-dur-unfurl) var(--ap-ease-paper);
}

[data-design="a"] .ap-roll__item--revealed {
  clip-path: inset(0 0 0 0);
  opacity: 1;
}

[data-design="a"] .ap-roll__item--revealed::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 100%;
  height: 1px;
  background: var(--ap-cyan);
  opacity: 0;
  animation: a-roll-second-pass 800ms var(--ap-ease-paper) 320ms forwards;
}

@keyframes a-roll-second-pass {
  to { opacity: .55; }
}

[data-design="a"] .ap-roll__num {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.12em;
  color: var(--ap-muted);
  text-transform: uppercase;
}

[data-design="a"] .ap-roll__name {
  font-family: var(--ap-font-display);
  font-size: var(--ap-text-md);
  color: var(--ap-ink);
  text-decoration: none;
}

[data-design="a"] .ap-roll__action {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ap-muted);
}

/* ── E4 — BAROMETER (Certifications) ──────────────────────────── */
[data-design="a"] .ap-barometer {
  background: var(--ap-paper);
  padding: var(--ap-space-bleed) var(--ap-space-folio);
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--ap-space-column);
  box-sizing: border-box;
  border-top: 1px solid var(--ap-rule);
  border-bottom: 1px solid var(--ap-rule);
}

@media (min-width: 768px) {
  [data-design="a"] .ap-barometer {
    grid-template-columns: 1.1fr 1fr;
    align-items: center;
    max-width: 1280px;
    margin: 0 auto;
  }
}

[data-design="a"] .ap-barometer__stamp {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.12em;
  color: var(--ap-muted);
  text-transform: uppercase;
  margin: 0 0 var(--ap-space-leading);
}

[data-design="a"] .ap-barometer__title {
  font-family: var(--ap-font-display);
  font-weight: 700;
  font-size: var(--ap-text-xl);
  line-height: 1.15;
  margin: 0 0 var(--ap-space-leading);
  color: var(--ap-ink);
}

[data-design="a"] .ap-barometer__deck {
  font-family: var(--ap-font-body);
  font-size: var(--ap-text-base);
  line-height: 1.65;
  color: var(--ap-ink-soft);
  margin: 0;
  max-width: 52ch;
}

[data-design="a"] .ap-barometer__figure {
  position: relative;
  margin: 0;
  color: var(--ap-rule);
}

[data-design="a"] .ap-barometer__svg {
  width: 100%;
  height: auto;
  max-width: 360px;
  display: block;
  margin: 0 auto;
}

[data-design="a"] .ap-barometer__ticks line {
  stroke: var(--ap-rule);
  stroke-width: 1.5;
}

[data-design="a"] .ap-barometer__needle {
  transform-origin: 120px 132px;
  transform: rotate(calc(var(--ap-needle-deg, -60) * 1deg));
  animation: a-needle-tide var(--ap-dur-tide) var(--ap-ease-tide) infinite;
}

@keyframes a-needle-tide {
  0%,100% { --ap-needle-drift: -2deg; }
  50%     { --ap-needle-drift:  2deg; }
}

@property --ap-needle-drift {
  syntax: '<angle>';
  inherits: true;
  initial-value: 0deg;
}

[data-design="a"] .ap-barometer__reading {
  text-align: center;
  margin-top: var(--ap-space-leading);
  font-family: var(--ap-font-mono);
}

[data-design="a"] .ap-barometer__value {
  font-size: var(--ap-text-lg);
  color: var(--ap-ink);
  display: block;
  font-variant-numeric: tabular-nums;
}

[data-design="a"] .ap-barometer__unit {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ap-muted);
}

/* ── SIDING FEATURE ────────────────────────────────────────────── */
[data-design="a"] .ap-feature {
  background: var(--ap-paper-deep);
  padding: var(--ap-space-gutter) var(--ap-space-folio);
  max-width: 1280px;
  margin: 0 auto;
  box-sizing: border-box;
}

[data-design="a"] .ap-feature__head {
  margin-bottom: var(--ap-space-folio);
}

[data-design="a"] .ap-feature__stamp {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.12em;
  color: var(--ap-muted);
  text-transform: uppercase;
  margin: 0 0 var(--ap-space-leading);
}

[data-design="a"] .ap-feature__title {
  font-family: var(--ap-font-display);
  font-weight: 700;
  font-size: var(--ap-text-xl);
  line-height: 1.1;
  margin: 0;
  color: var(--ap-ink);
}

[data-design="a"] .ap-feature__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--ap-space-folio);
}

@media (min-width: 768px) {
  [data-design="a"] .ap-feature__grid {
    grid-template-columns: 1fr 1fr;
    align-items: start;
  }
}

[data-design="a"] .ap-feature__img-wrap {
  border: 1px solid var(--ap-rule);
  overflow: hidden;
}

[data-design="a"] .ap-feature__img-wrap img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

[data-design="a"] .ap-feature__img-wrap figcaption {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ap-muted);
  padding: var(--ap-space-pica) var(--ap-space-leading);
  border-top: 1px solid var(--ap-rule);
}

[data-design="a"] .ap-feature__body {
  font-family: var(--ap-font-body);
  font-size: var(--ap-text-base);
  line-height: 1.65;
  color: var(--ap-ink-soft);
}

/* ── AFFIDAVITS (Reviews) ──────────────────────────────────────── */
[data-design="a"] .ap-affidavits {
  background: var(--ap-paper);
  padding: var(--ap-space-gutter) var(--ap-space-folio);
  border-top: 1px solid var(--ap-rule);
  border-bottom: 1px solid var(--ap-rule);
}

[data-design="a"] .ap-affidavits__head {
  margin-bottom: var(--ap-space-column);
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
}

[data-design="a"] .ap-affidavits__stamp {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.12em;
  color: var(--ap-muted);
  text-transform: uppercase;
  margin: 0 0 var(--ap-space-leading);
}

[data-design="a"] .ap-affidavits__title {
  font-family: var(--ap-font-display);
  font-weight: 700;
  font-size: var(--ap-text-xl);
  margin: 0;
  color: var(--ap-ink);
}

[data-design="a"] .ap-affidavits__list {
  max-width: 1280px;
  margin: var(--ap-space-column) auto 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--ap-space-folio);
}

@media (min-width: 768px) {
  [data-design="a"] .ap-affidavits__list {
    grid-template-columns: 1fr 1fr;
  }
}

[data-design="a"] .ap-affidavit {
  margin: 0;
  border-left: 2px solid var(--ap-brick);
  padding-left: var(--ap-space-folio);
}

[data-design="a"] .ap-affidavit__quote {
  font-family: var(--ap-font-display);
  font-style: italic;
  font-size: var(--ap-text-md);
  line-height: 1.5;
  color: var(--ap-ink);
  margin: 0 0 var(--ap-space-leading);
}

[data-design="a"] .ap-affidavit__footer {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

[data-design="a"] .ap-affidavit__name {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ap-ink);
}

[data-design="a"] .ap-affidavit__meta {
  font-family: var(--ap-font-mono);
  font-size: var(--ap-text-xs);
  color: var(--ap-muted);
}

/* ── ABOUT / COLOPHON ──────────────────────────────────────────── */
[data-design="a"] .ap-about {
  background: var(--ap-paper-deep);
  padding: var(--ap-space-gutter) var(--ap-space-folio);
  max-width: 1280px;
  margin: 0 auto;
  box-sizing: border-box;
}

[data-design="a"] .ap-about__head {
  margin-bottom: var(--ap-space-column);
}

[data-design="a"] .ap-about__stamp {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.12em;
  color: var(--ap-muted);
  text-transform: uppercase;
  margin: 0 0 var(--ap-space-leading);
}

[data-design="a"] .ap-about__title {
  font-family: var(--ap-font-display);
  font-weight: 700;
  font-size: var(--ap-text-xl);
  line-height: 1.1;
  margin: 0;
  color: var(--ap-ink);
}

[data-design="a"] .ap-about__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--ap-space-column);
}

@media (min-width: 768px) {
  [data-design="a"] .ap-about__grid {
    grid-template-columns: 1.2fr 1fr;
    align-items: start;
  }
}

[data-design="a"] .ap-about__body {
  font-family: var(--ap-font-body);
  font-size: var(--ap-text-base);
  line-height: 1.65;
  color: var(--ap-ink-soft);
  max-width: 50ch;
}

[data-design="a"] .ap-facts {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: var(--ap-space-em) var(--ap-space-folio);
  align-items: baseline;
  border-top: 1px solid var(--ap-rule);
  padding-top: var(--ap-space-folio);
  margin: 0;
}

[data-design="a"] .ap-facts__label {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ap-muted);
}

[data-design="a"] .ap-facts__value {
  font-family: var(--ap-font-body);
  font-size: var(--ap-text-base);
  color: var(--ap-ink);
  margin: 0;
}

[data-design="a"] .ap-facts__phone {
  font-family: var(--ap-font-mono);
  color: var(--ap-ink);
  text-decoration: none;
  border-bottom: 1px solid var(--ap-rule);
}

[data-design="a"] .ap-facts__phone:hover {
  border-bottom-color: var(--ap-brick);
  color: var(--ap-brick);
}

/* ── E6 — POINTER (water-shed wayfinding) ──────────────────────── */
[data-design="a"] .ap-pointer {
  display: flex;
  justify-content: center;
  padding: clamp(48px, 8vw, 80px) 16px clamp(64px, 10vw, 96px);
  background: var(--ap-paper);
  border-top: 1px solid var(--ap-rule);
  /* opacity:1 — hard gate */
  opacity: 1;
}

[data-design="a"] .ap-pointer__hit {
  position: relative;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  color: var(--ap-ink);
}

[data-design="a"] .ap-pointer__tick {
  display: block;
  width: 20px;
  height: 2px;
  background: var(--ap-ink);
  opacity: 0.6;
}

/* Water-shed: the rule drips down like water shedding down a slope */
[data-design="a"] .ap-pointer__shed {
  display: block;
  width: 2px;
  height: 12px;
  background: linear-gradient(to bottom, var(--ap-cyan), var(--ap-brick));
  opacity: 0;
  animation: a-pointer-shed-drop 5s ease-in-out infinite;
}

@keyframes a-pointer-shed-drop {
  0%,30%  { opacity: 0; transform: translateY(-4px); }
  50%,70% { opacity: 0.75; transform: translateY(0px); }
  100%    { opacity: 0; transform: translateY(4px); }
}

[data-design="a"] .ap-pointer__rule {
  display: block;
  width: 1px;
  height: 56px;
  background: var(--ap-ink);
  transform-origin: top center;
  animation: a-pointer-extend 5s ease-in-out infinite;
}

@keyframes a-pointer-extend {
  0%,100% { transform: scaleY(.4); opacity: .35; }
  50%     { transform: scaleY(1);  opacity: .80; }
}

[data-design="a"] .ap-pointer__label {
  font-family: var(--ap-font-stamp);
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ap-ink);
  opacity: 0;
  animation: a-pointer-stamp 5s ease-in-out infinite;
}

@keyframes a-pointer-stamp {
  0%,30%,100% { opacity: 0; }
  50%,70%     { opacity: 0.80; }
}

/* ── E5 — FUNNEL ───────────────────────────────────────────────── */
[data-design="a"] .ap-funnel {
  background: var(--ap-paper-deep);
  padding: var(--ap-space-gutter) var(--ap-space-folio);
  max-width: 1280px;
  margin: 0 auto;
  box-sizing: border-box;
}

[data-design="a"] .ap-funnel__head {
  margin-bottom: var(--ap-space-column);
  max-width: 56ch;
}

[data-design="a"] .ap-funnel__stamp {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.12em;
  color: var(--ap-muted);
  text-transform: uppercase;
  margin: 0 0 var(--ap-space-leading);
}

[data-design="a"] .ap-funnel__title {
  font-family: var(--ap-font-display);
  font-weight: 700;
  font-size: var(--ap-text-xl);
  line-height: 1.1;
  margin: 0 0 var(--ap-space-leading);
  color: var(--ap-ink);
}

[data-design="a"] .ap-funnel__deck {
  font-family: var(--ap-font-body);
  font-size: var(--ap-text-base);
  line-height: 1.65;
  color: var(--ap-ink-soft);
  margin: 0;
}

[data-design="a"] .ap-funnel__body {
  max-width: 680px;
}

/* Step indicator */
[data-design="a"] .ap-funnel__steps {
  display: flex;
  align-items: center;
  gap: 0;
  margin-bottom: var(--ap-space-column);
}

[data-design="a"] .ap-funnel__step {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--ap-paper);
  border: 1px solid var(--ap-rule);
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0;
  color: var(--ap-muted);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: background var(--ap-dur-snap) var(--ap-ease-paper),
              color var(--ap-dur-snap) var(--ap-ease-paper);
}

[data-design="a"] .ap-funnel__step--active {
  background: var(--ap-ink);
  color: var(--ap-paper);
  border-color: var(--ap-ink);
}

[data-design="a"] .ap-funnel__step--done {
  background: var(--ap-moss);
  color: var(--ap-paper);
  border-color: var(--ap-moss);
}

[data-design="a"] .ap-funnel__step-rule {
  flex: 1;
  height: 1px;
  background: var(--ap-rule);
  min-width: 8px;
}

/* Panel / fieldset */
[data-design="a"] .ap-funnel__panel {
  border: none;
  padding: 0;
  margin: 0;
}

[data-design="a"] .ap-funnel__panel[hidden] {
  display: none;
}

[data-design="a"] .ap-funnel__legend {
  font-family: var(--ap-font-display);
  font-weight: 700;
  font-size: var(--ap-text-lg);
  color: var(--ap-ink);
  margin-bottom: var(--ap-space-column);
  padding: 0;
  float: none;
  width: 100%;
}

/* Chips */
[data-design="a"] .ap-funnel__chips {
  display: flex;
  flex-wrap: wrap;
  gap: var(--ap-space-leading);
  margin-bottom: var(--ap-space-column);
}

[data-design="a"] .ap-chip {
  display: inline-flex;
  align-items: center;
  gap: var(--ap-space-em);
  cursor: pointer;
  min-height: 44px;
  min-width: 44px;
}

[data-design="a"] .ap-chip input[type="radio"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}

[data-design="a"] .ap-chip span {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-sm);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ap-ink);
  border: 1px solid var(--ap-rule);
  padding: 10px 16px;
  transition: background var(--ap-dur-snap) var(--ap-ease-paper),
              color var(--ap-dur-snap) var(--ap-ease-paper),
              border-color var(--ap-dur-snap) var(--ap-ease-paper);
  display: block;
  min-height: 44px;
  display: flex;
  align-items: center;
}

[data-design="a"] .ap-chip:hover span {
  background: var(--ap-paper);
  border-color: var(--ap-ink);
}

[data-design="a"] .ap-chip input:checked + span {
  background: var(--ap-ink);
  color: var(--ap-paper);
  border-color: var(--ap-ink);
}

[data-design="a"] .ap-chip input:focus-visible + span {
  outline: 2px solid var(--ap-cyan);
  outline-offset: 2px;
}

/* Error */
[data-design="a"] .ap-funnel__err {
  font-family: var(--ap-font-body);
  font-style: italic;
  font-size: var(--ap-text-sm);
  color: var(--ap-critical);
  margin: 0 0 var(--ap-space-leading);
  border-left: 2px solid var(--ap-critical);
  padding-left: var(--ap-space-leading);
}

[data-design="a"] .ap-funnel__err[hidden] {
  display: none;
}

/* Nav row */
[data-design="a"] .ap-funnel__nav {
  display: flex;
  align-items: center;
  gap: var(--ap-space-leading);
  flex-wrap: wrap;
}

[data-design="a"] .ap-set-btn {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-sm);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  background: none;
  border: none;
  color: var(--ap-muted);
  cursor: pointer;
  padding: 10px 0;
  min-height: 44px;
  min-width: 44px;
}

[data-design="a"] .ap-set-btn:hover {
  color: var(--ap-ink);
}

/* Emergency note */
[data-design="a"] .ap-funnel__emergency {
  background: var(--ap-paper);
  border-left: 2px solid var(--ap-ochre);
  padding: var(--ap-space-pica) var(--ap-space-folio);
  margin-bottom: var(--ap-space-leading);
}

[data-design="a"] .ap-funnel__emergency[hidden] {
  display: none;
}

[data-design="a"] .ap-funnel__emergency-note {
  font-family: var(--ap-font-body);
  font-size: var(--ap-text-base);
  color: var(--ap-ink-soft);
  margin: 0;
}

[data-design="a"] .ap-funnel__emergency-phone {
  font-family: var(--ap-font-mono);
  color: var(--ap-ink);
  text-decoration: none;
  border-bottom: 1px solid var(--ap-rule);
  margin-left: var(--ap-space-em);
}

/* Step 5 fields */
[data-design="a"] .ap-funnel__fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--ap-space-leading);
  margin-bottom: var(--ap-space-column);
}

[data-design="a"] .ap-field {
  display: flex;
  flex-direction: column;
  gap: var(--ap-space-em);
}

[data-design="a"] .ap-field--full {
  grid-column: 1 / -1;
}

[data-design="a"] .ap-field__label {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ap-ink);
}

[data-design="a"] .ap-field__req {
  color: var(--ap-brick);
}

[data-design="a"] .ap-field__input {
  font-family: var(--ap-font-body);
  font-size: var(--ap-text-base);
  color: var(--ap-ink);
  background: var(--ap-paper);
  border: 1px solid var(--ap-rule);
  border-radius: 0;
  padding: 12px;
  width: 100%;
  box-sizing: border-box;
  min-height: 44px;
  transition: border-color 120ms var(--ap-ease-paper),
              box-shadow 120ms var(--ap-ease-paper);
}

[data-design="a"] .ap-field__input:focus {
  outline: none;
  border-color: var(--ap-ink);
  border-width: 2px;
  padding: 11px;
  box-shadow: 2px 1px 0 rgba(30,94,110,.55);
}

[data-design="a"] .ap-field__textarea {
  resize: vertical;
  min-height: 96px;
}

[data-design="a"] .ap-field__hint {
  font-family: var(--ap-font-body);
  font-style: italic;
  font-size: var(--ap-text-sm);
  color: var(--ap-muted);
  margin: 0;
}

/* Confirmation */
[data-design="a"] .ap-funnel__confirm {
  padding: var(--ap-space-folio);
  border: 1px solid var(--ap-moss);
  background: var(--ap-paper);
}

[data-design="a"] .ap-funnel__confirm[hidden] {
  display: none;
}

[data-design="a"] .ap-funnel__confirm-stamp {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-sm);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ap-moss);
  margin: 0 0 var(--ap-space-leading);
}

[data-design="a"] .ap-funnel__confirm-msg {
  font-family: var(--ap-font-body);
  font-size: var(--ap-text-base);
  line-height: 1.65;
  color: var(--ap-ink);
  margin: 0 0 var(--ap-space-leading);
}

[data-design="a"] .ap-funnel__confirm-phone {
  font-family: var(--ap-font-body);
  font-style: italic;
  font-size: var(--ap-text-sm);
  color: var(--ap-ink-soft);
  margin: 0;
}

[data-design="a"] .ap-funnel__confirm-phone a {
  font-family: var(--ap-font-mono);
  color: var(--ap-ink);
}

/* Trust block */
[data-design="a"] .ap-funnel__trust {
  margin-top: var(--ap-space-column);
  border-top: 1px solid var(--ap-rule);
  padding-top: var(--ap-space-folio);
}

[data-design="a"] .ap-funnel__trust-line {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: var(--ap-muted);
  margin: 0 0 var(--ap-space-em);
}

/* ── FOOTER / IMPRINT ──────────────────────────────────────────── */
[data-design="a"] .ap-footer {
  background: var(--ap-ink);
  color: var(--ap-paper);
  padding: var(--ap-space-gutter) var(--ap-space-folio) var(--ap-space-folio);
  border-top: 3px solid var(--ap-rule);
}

[data-design="a"] .ap-footer__inner {
  max-width: 1280px;
  margin: 0 auto var(--ap-space-folio);
  display: grid;
  grid-template-columns: 1fr 1fr auto;
  gap: var(--ap-space-column);
  align-items: start;
}

[data-design="a"] .ap-footer__name {
  font-family: var(--ap-font-display);
  font-weight: 700;
  font-size: var(--ap-text-md);
  color: var(--ap-paper);
  margin: 0 0 var(--ap-space-em);
}

[data-design="a"] .ap-footer__locale {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(242,234,214,.55);
  margin: 0 0 var(--ap-space-leading);
}

[data-design="a"] .ap-footer__phone {
  font-family: var(--ap-font-mono);
  font-size: var(--ap-text-md);
  color: var(--ap-paper);
  text-decoration: none;
  display: block;
}

[data-design="a"] .ap-footer__phone:hover {
  color: var(--ap-ochre);
}

[data-design="a"] .ap-footer__license,
[data-design="a"] .ap-footer__cert {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: rgba(242,234,214,.55);
  margin: 0 0 var(--ap-space-em);
}

[data-design="a"] .ap-footer__copy {
  font-family: var(--ap-font-body);
  font-size: var(--ap-text-sm);
  color: rgba(242,234,214,.40);
  margin: var(--ap-space-folio) 0 0;
}

[data-design="a"] .ap-footer__imprint {
  font-family: var(--ap-font-stamp);
  font-size: var(--ap-text-xs);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(242,234,214,.25);
  text-align: center;
  margin: 0;
  max-width: 1280px;
  margin: 0 auto;
  border-top: 1px solid rgba(242,234,214,.12);
  padding-top: var(--ap-space-folio);
}

/* ── RESPONSIVE ────────────────────────────────────────────────── */
@media (max-width: 768px) {
  [data-design="a"] .ap-logo__desc { display: none; }

  [data-design="a"] .ap-portfolio__grid {
    grid-template-columns: 1fr;
  }

  [data-design="a"] .ap-roll__item {
    grid-template-columns: 6ch 1fr;
    grid-template-rows: auto auto;
    column-gap: var(--ap-space-leading);
    row-gap: var(--ap-space-em);
  }

  [data-design="a"] .ap-roll__action {
    grid-column: 1 / -1;
    text-align: right;
  }

  [data-design="a"] .ap-funnel__fields {
    grid-template-columns: 1fr;
  }

  [data-design="a"] .ap-footer__inner {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  [data-design="a"] .ap-hero__content {
    padding: var(--ap-space-gutter) var(--ap-space-folio);
  }
}

@media (max-width: 380px) {
  [data-design="a"] .ap-header__bar {
    flex-wrap: wrap;
    gap: var(--ap-space-em);
  }
}

/* ── prefers-reduced-motion ────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  [data-design="a"] .ap-logo__plate--cyan { transform: translate(2px, 1px); transition: none; }
  [data-design="a"] .ap-logo__plate--brick { transform: translate(-2px, -1px); transition: none; }
  [data-design="a"] .ap-header__rule { animation: none; }
  [data-design="a"] .ap-cta,
  [data-design="a"] .ap-cta__plate,
  [data-design="a"] .ap-cta__arrow { animation: none !important; transition: none !important; }
  [data-design="a"] .ap-cta__plate--cyan { transform: translate(3px, 2px); }
  [data-design="a"] .ap-cta__plate--brick { transform: translate(-3px, -2px); }
  [data-design="a"] .ap-hero__wash { animation: none; }
  [data-design="a"] .ap-barometer__needle { animation: none; transition: none; transform: rotate(-60deg); }
  [data-design="a"] .ap-roll__item { transition: opacity 200ms linear; clip-path: inset(0 0 0 0); }
  [data-design="a"] .ap-roll__item--revealed::after { animation: none; opacity: .55; }
  [data-design="a"] .ap-pointer__rule { animation: none; opacity: 0.7; }
  [data-design="a"] .ap-pointer__shed { animation: none; opacity: 0.5; }
  [data-design="a"] .ap-pointer__label { animation: none; opacity: 0.7; }
}

/* ================================================================
   HARD CONTRACT — mobile no h-scroll
================================================================ */
[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; }
