/* ===========================================================================
   Design A — On Point Construction (Whatcom County, WA)
   Slot-scoped under [data-design="a"]; construction drafting palette.
   ONE accent (drafting ultramarine) + weathered-wood/steel neutrals.
   =========================================================================== */

[data-design="a"]{
  /* --- color: drafting blueprint x weathered wood (~14 tokens) --- */
  --a-bg:           #F6F4EF;  /* warm bond-paper cream */
  --a-surface:      #FFFFFF;  /* sheets, drawer */
  --a-surface-warm: #EEEAE0;  /* statement plates */
  --a-ink:          #14181E;  /* primary text */
  --a-ink-2:        #2A2F38;  /* dense body */
  --a-muted:        #5E6470;  /* secondary copy */
  --a-meta:         #8A8F9C;  /* mono metadata */
  --a-border:       #E0DCD2;  /* hairline */
  --a-border-soft:  #EDE9DF;  /* row separators */
  --a-accent:       #1B3B8C;  /* drafting ultramarine — CTAs, draw-ins, ONE hero element */
  --design-a-primary: #1B3B8C; /* exposed primary token */
  --a-accent-glow:  #4F7CFF;  /* mesh inner glow only */
  --a-accent-on:    #FFFFFF;
  --a-timber:       #9A6A3C;  /* weathered-wood ornament tick, max once/page */
  --a-success:      #1B7A4A;

  --a-display: "Tiempos Headline", "Iowan Old Style", Georgia, "Times New Roman", serif;
  --a-sans:    "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
  --a-mono:    "JetBrains Mono", "IBM Plex Mono", ui-monospace, Menlo, monospace;

  --a-tick:4px; --a-row:8px; --a-stem:12px; --a-line:16px; --a-block:24px;
  --a-fold:40px; --a-folio:96px; --a-folio-t:64px; --a-folio-p:64px;

  --a-d-fast:180ms; --a-d-base:320ms; --a-d-breath:5200ms;
  --a-d-drift:24s; --a-d-tick:14s;
  --a-ease-register: cubic-bezier(.2,0,0,1);
  --a-ease-drift:    cubic-bezier(.42,0,.58,1);
  --a-ease-press:    cubic-bezier(.4,0,.2,1);

  --a-r-tick:2px; --a-r-edge:6px; --a-r-sheet:10px;
  --a-elev-1: 0 1px 0 var(--a-border), 0 8px 24px -16px rgba(20,24,30,.10);
  --a-elev-drawer: 0 1px 0 var(--a-border), 0 24px 48px -24px rgba(20,24,30,.18);
  --a-focus: 0 0 0 3px color-mix(in oklab, var(--a-accent), transparent 75%);

  background: var(--a-bg);
  color: var(--a-ink);
  font-family: var(--a-sans);
  font-size: 17px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

[data-design="a"] *{ box-sizing: border-box; }
[data-design="a"] a{ color: var(--a-accent); }

/* shared eyebrow / title primitives */
[data-design="a"] .a-eyebrow{
  font-family: var(--a-mono); text-transform: uppercase; letter-spacing:.12em;
  font-size:12px; color: var(--a-meta); margin:0 0 var(--a-stem);
}
[data-design="a"] .a-eyebrow--gold{ color: var(--a-timber); }
[data-design="a"] .a-index__head{ margin-bottom: var(--a-fold); max-width: 62ch; }
[data-design="a"] .a-index__title{
  font-family: var(--a-display); font-size: clamp(28px,4vw,44px);
  letter-spacing:-.02em; line-height:1.12; margin:0 0 var(--a-stem); color: var(--a-ink);
}
[data-design="a"] .a-index__sub{ font-size:17px; line-height:1.6; color: var(--a-ink-2); margin:0; max-width:58ch; }

/* ===================== 1. HEADER ===================== */
[data-design="a"] .a-header{
  position: sticky; top:0; z-index:40;
  background: color-mix(in oklab, var(--a-bg), transparent 8%);
  backdrop-filter: saturate(140%) blur(10px);
  -webkit-backdrop-filter: saturate(140%) blur(10px);
  border-bottom:1px solid var(--a-border);
}
[data-design="a"] .a-mesh{ position:absolute; inset:0; overflow:hidden; pointer-events:none; }
[data-design="a"] .a-mesh__a,[data-design="a"] .a-mesh__b{ position:absolute; inset:-40%; filter:blur(48px); opacity:.40; }
[data-design="a"] .a-mesh__a{
  background: radial-gradient(closest-side at 30% 50%, var(--a-accent-glow) 0%, transparent 60%),
              radial-gradient(closest-side at 70% 60%, var(--a-accent) 0%, transparent 65%);
  animation: a-drift-a var(--a-d-drift) var(--a-ease-drift) infinite;
}
[data-design="a"] .a-mesh__b{
  background: radial-gradient(closest-side at 80% 30%, color-mix(in oklab, var(--a-timber), transparent 45%) 0%, transparent 55%);
  animation: a-drift-b 31s var(--a-ease-drift) infinite; opacity:.18;
}
[data-design="a"] .a-mesh__rule{
  position:absolute; left:0; right:0; bottom:0; height:1px;
  background: linear-gradient(90deg, transparent, var(--a-accent) 40%, var(--a-accent) 60%, transparent);
  background-size:220% 100%; animation: a-sweep 27s linear infinite; opacity:.5;
}
@keyframes a-drift-a{ 0%{transform:translate3d(-6%,-2%,0) scale(1);} 50%{transform:translate3d(8%,3%,0) scale(1.08);} 100%{transform:translate3d(-6%,-2%,0) scale(1);} }
@keyframes a-drift-b{ 0%{transform:translate3d(4%,2%,0) scale(1);} 50%{transform:translate3d(-7%,-4%,0) scale(1.12);} 100%{transform:translate3d(4%,2%,0) scale(1);} }
@keyframes a-sweep{ 0%{background-position:0% 0;} 100%{background-position:220% 0;} }

[data-design="a"] .a-header__bar{
  position:relative; z-index:1; display:flex; align-items:center; justify-content:space-between;
  max-width:1200px; margin-inline:auto; padding:14px clamp(16px,4vw,24px);
}
[data-design="a"] .a-logo{ font-family:var(--a-display); font-size:clamp(17px,1.8vw,21px); letter-spacing:-.015em; color:var(--a-ink); text-decoration:none; }
[data-design="a"] .a-burger{
  display:inline-flex; align-items:center; gap:10px; min-height:44px;
  background:transparent; border:1px solid var(--a-border); border-radius:var(--a-r-edge); padding:8px 12px;
  font-family:var(--a-mono); font-size:12px; letter-spacing:.12em; color:var(--a-ink-2); cursor:pointer;
  transition: border-color var(--a-d-fast) var(--a-ease-press), background var(--a-d-fast) var(--a-ease-press);
}
[data-design="a"] .a-burger:hover{ border-color:var(--a-ink-2); background:var(--a-surface); }
[data-design="a"] .a-burger:focus-visible{ outline:none; box-shadow:var(--a-focus); border-color:var(--a-accent); }
[data-design="a"] .a-burger__lines{ position:relative; width:14px; height:10px; }
[data-design="a"] .a-burger__lines span{ position:absolute; left:0; right:0; height:1.5px; background:currentColor; transition:transform var(--a-d-fast) var(--a-ease-register); }
[data-design="a"] .a-burger__lines span:nth-child(1){ top:2px; }
[data-design="a"] .a-burger__lines span:nth-child(2){ bottom:2px; }
[data-design="a"] .a-burger[aria-expanded="true"] .a-burger__lines span:nth-child(1){ transform:translateY(3px) rotate(45deg); }
[data-design="a"] .a-burger[aria-expanded="true"] .a-burger__lines span:nth-child(2){ transform:translateY(-3px) rotate(-45deg); }

[data-design="a"] .a-drawer{
  position:fixed; top:0; right:0; bottom:0; width:min(480px,92vw);
  background:var(--a-surface); border-left:1px solid var(--a-border);
  box-shadow:var(--a-elev-drawer); z-index:60; transform:translateX(100%);
  transition:transform var(--a-d-base) var(--a-ease-register);
}
[data-design="a"] .a-drawer:not([hidden]){ transform:translateX(0); }
[data-design="a"] .a-drawer[hidden]{ display:none; }
[data-design="a"] .a-drawer__inner{ padding:var(--a-fold); display:flex; flex-direction:column; gap:var(--a-fold); height:100%; }
[data-design="a"] .a-drawer__close{ align-self:flex-end; min-width:44px; min-height:44px; background:transparent; border:0; padding:6px; color:var(--a-ink); cursor:pointer; border-radius:var(--a-r-edge); }
[data-design="a"] .a-drawer__close:focus-visible{ outline:none; box-shadow:var(--a-focus); }
[data-design="a"] .a-nav{ display:flex; flex-direction:column; gap:var(--a-line); }
[data-design="a"] .a-nav-a{
  font-family:var(--a-mono); text-transform:uppercase; letter-spacing:.12em; font-size:13px;
  color:var(--a-meta); text-decoration:none; padding:10px 0; min-height:44px; display:flex; align-items:center; justify-content:space-between;
  border-bottom:1px solid var(--a-border-soft); transition:color var(--a-d-fast) var(--a-ease-press);
}
[data-design="a"] .a-nav-a:hover{ color:var(--a-ink); }
[data-design="a"] .a-nav-a::after{ content:"\2192"; color:var(--a-meta); transition:transform var(--a-d-fast) var(--a-ease-press); }
[data-design="a"] .a-nav-a:hover::after{ color:var(--a-accent); transform:translateX(3px); }
[data-design="a"] .a-drawer__cta{ display:flex; flex-direction:column; gap:var(--a-line); }
[data-design="a"] .a-drawer__phone{
  font-family:var(--a-mono); font-size:13px; letter-spacing:.1em; color:var(--a-ink-2);
  text-decoration:none; padding:12px 0; min-height:44px; display:flex; align-items:center; border-top:1px solid var(--a-border-soft);
}
[data-design="a"] .a-drawer__phone:hover{ color:var(--a-accent); }
[data-design="a"] .a-drawer__meta{ margin-top:auto; font-family:var(--a-mono); font-size:12px; color:var(--a-meta); letter-spacing:.08em; }

/* ===================== 2. CTA ===================== */
[data-design="a"] .a-cta{
  position:relative; display:inline-flex; align-items:center; gap:14px;
  min-height:44px; padding:14px 22px; border-radius:var(--a-r-edge);
  font-family:var(--a-mono); text-transform:uppercase; letter-spacing:.14em; font-size:13px;
  color:var(--a-accent-on); text-decoration:none; background:var(--a-accent);
  box-shadow:0 1px 0 rgba(255,255,255,.18) inset, 0 12px 28px -16px color-mix(in oklab, var(--a-accent), black 30%);
  overflow:hidden; will-change:transform;
  transition:transform var(--a-d-fast) var(--a-ease-press), box-shadow var(--a-d-fast) var(--a-ease-press);
}
[data-design="a"] .a-cta__mesh{
  position:absolute; inset:-20%;
  background: radial-gradient(closest-side at 30% 40%, var(--a-accent-glow) 0%, transparent 60%),
              radial-gradient(closest-side at 80% 60%, color-mix(in oklab, var(--a-timber), transparent 45%) 0%, transparent 55%),
              var(--a-accent);
  background-size:200% 200%; filter:blur(14px); opacity:.9;
  animation:a-cta-breath var(--a-d-breath) var(--a-ease-drift) infinite; z-index:0;
}
[data-design="a"] .a-cta__label,[data-design="a"] .a-cta__arrow{ position:relative; z-index:1; }
[data-design="a"] .a-cta__arrow{ display:inline-flex; transition:transform var(--a-d-fast) var(--a-ease-register); }
[data-design="a"] .a-cta:hover{ transform:translateY(-1px); box-shadow:0 1px 0 rgba(255,255,255,.22) inset, 0 18px 38px -18px color-mix(in oklab, var(--a-accent), black 40%); }
[data-design="a"] .a-cta:hover .a-cta__arrow{ transform:translateX(4px); }
[data-design="a"] .a-cta:focus-visible{ outline:none; box-shadow:var(--a-focus), 0 12px 28px -16px color-mix(in oklab, var(--a-accent), black 30%); }
[data-design="a"] .a-cta:active{ transform:translateY(1px); }
@keyframes a-cta-breath{ 0%{background-position:0% 20%; transform:scale(1);} 50%{background-position:100% 80%; transform:scale(1.04);} 100%{background-position:0% 20%; transform:scale(1);} }

/* ===================== HERO ===================== */
[data-design="a"] .a-hero{
  position:relative; overflow:hidden;
  max-width:1200px; margin-inline:auto; padding:clamp(56px,9vw,120px) clamp(16px,4vw,24px) var(--a-folio);
}
[data-design="a"] .a-blueprint{ position:absolute; inset:0; pointer-events:none; opacity:.9; }
[data-design="a"] .a-blueprint__svg{ position:absolute; right:-4%; top:50%; transform:translateY(-50%); width:min(58%,720px); height:auto; }
[data-design="a"] .a-bp-draw{
  stroke-dasharray:1400; stroke-dashoffset:1400;
  animation: a-bp-draw 2s var(--a-ease-register) .15s forwards, a-bp-breathe 9s var(--a-ease-drift) 2.2s infinite;
}
[data-design="a"] .a-bp-house path:nth-child(2){ animation-delay:.35s, 2.4s; }
[data-design="a"] .a-bp-house path:nth-child(3){ animation-delay:.55s, 2.6s; }
[data-design="a"] .a-bp-house path:nth-child(4){ animation-delay:.75s, 2.8s; }
[data-design="a"] .a-bp-house path:nth-child(5){ animation-delay:.95s, 3.0s; }
[data-design="a"] .a-bp-dim{ opacity:0; animation: a-bp-fade 1.2s ease 1.6s forwards; }
[data-design="a"] .a-bp-text{ font-family:var(--a-mono); font-size:15px; letter-spacing:.04em; }
@keyframes a-bp-draw{ to{ stroke-dashoffset:0; } }
@keyframes a-bp-fade{ to{ opacity:.85; } }
/* sustained ambient at-rest motion (alive, never frozen) */
@keyframes a-bp-breathe{ 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(-7px); } }

[data-design="a"] .a-hero__inner{ position:relative; z-index:1; max-width:min(640px,92%); }
[data-design="a"] .a-hero__title{
  font-family:var(--a-display); font-size:clamp(36px,6.5vw,68px);
  letter-spacing:-.02em; line-height:1.05; margin:0 0 var(--a-block); color:var(--a-ink);
}
[data-design="a"] .a-hero__sub{ font-size:clamp(17px,2vw,20px); line-height:1.55; color:var(--a-ink-2); margin:0 0 var(--a-line); max-width:54ch; }
[data-design="a"] .a-hero__proof{ font-family:var(--a-mono); font-size:13px; letter-spacing:.06em; color:var(--a-muted); margin:0 0 var(--a-fold); }
[data-design="a"] .a-hero__actions{ display:flex; flex-wrap:wrap; align-items:center; gap:var(--a-line); }
[data-design="a"] .a-chip{
  font-family:var(--a-mono); text-transform:uppercase; letter-spacing:.1em; font-size:11px;
  color:var(--a-ink-2); padding:8px 12px; border:1px solid var(--a-border); border-radius:var(--a-r-tick);
  background:var(--a-surface-warm);
}

/* ===================== 6. POINTER (drafted-measured, visible) ===================== */
[data-design="a"] .a-pointer{
  display:flex; flex-direction:column; align-items:center; gap:10px;
  min-height:96px; padding:24px 0 8px;
  opacity:1; /* never reveal-gate; wrapper always visible */
}
[data-design="a"] .a-pointer__label{
  font-family:var(--a-mono); text-transform:uppercase; letter-spacing:.18em; font-size:11px; color:var(--a-meta);
}
[data-design="a"] .a-pointer__svg{ display:block; }
[data-design="a"] .a-pointer__line{
  stroke-dasharray:46; stroke-dashoffset:46;
  animation: a-bp-draw 1.4s var(--a-ease-register) .3s forwards, a-pointer-pulse 5.5s var(--a-ease-drift) 1.8s infinite;
}
[data-design="a"] .a-pointer__foot{ opacity:0; animation: a-bp-fade 1s ease 1.4s forwards; }
@keyframes a-pointer-pulse{ 0%,100%{ transform:translateY(0); opacity:1; } 50%{ transform:translateY(4px); opacity:.7; } }

/* ===================== 5. FUNNEL ===================== */
[data-design="a"] .a-funnel-section{ padding-block:var(--a-folio); max-width:880px; margin-inline:auto; padding-inline:clamp(16px,4vw,24px); }
[data-design="a"] .a-funnel__head{ margin-bottom:var(--a-fold); max-width:58ch; }
[data-design="a"] .a-funnel__title{ font-family:var(--a-display); font-size:clamp(28px,4vw,44px); letter-spacing:-.02em; line-height:1.1; margin:0 0 var(--a-stem); color:var(--a-ink); }
[data-design="a"] .a-funnel__sub{ font-size:16px; line-height:1.6; color:var(--a-ink-2); margin:0; }
[data-design="a"] .a-funnel{
  position:relative; background:var(--a-surface); border:1px solid var(--a-border);
  border-radius:var(--a-r-sheet); box-shadow:var(--a-elev-1); padding:0 0 var(--a-fold); overflow:hidden;
}
[data-design="a"] .a-funnel__progress{ height:1px; background:var(--a-border-soft); width:100%; position:relative; }
[data-design="a"] .a-funnel__bar{ position:absolute; left:0; top:0; bottom:0; width:20%; background:var(--a-accent); transition:width var(--a-d-base) var(--a-ease-register); }
[data-design="a"] .a-funnel__meter{ display:flex; justify-content:space-between; padding:14px var(--a-fold) 4px; font-family:var(--a-mono); font-size:12px; color:var(--a-meta); letter-spacing:.1em; text-transform:uppercase; }
[data-design="a"] .a-step{ border:0; margin:0; padding:var(--a-fold); display:none; flex-direction:column; gap:var(--a-block); animation:a-step-in var(--a-d-base) var(--a-ease-register) both; }
[data-design="a"] .a-step.is-active{ display:flex; }
@keyframes a-step-in{ from{opacity:0; transform:translateX(16px);} to{opacity:1; transform:translateX(0);} }
[data-design="a"] .a-step__legend{ padding:0; font-family:var(--a-display); font-size:clamp(22px,2.6vw,28px); letter-spacing:-.015em; color:var(--a-ink); line-height:1.2; }
[data-design="a"] .a-chips{ display:grid; grid-template-columns:repeat(auto-fit, minmax(180px,1fr)); gap:10px; }
[data-design="a"] .a-chip{
  position:relative; display:block; cursor:pointer; min-height:44px; padding:14px 16px;
  background:var(--a-bg); border:1px solid var(--a-border); border-radius:var(--a-r-edge);
  font-size:15px; color:var(--a-ink-2);
  transition:border-color var(--a-d-fast) var(--a-ease-press), transform 90ms var(--a-ease-press),
             background var(--a-d-fast) var(--a-ease-press), box-shadow var(--a-d-fast) var(--a-ease-press);
}
[data-design="a"] .a-chip input{ position:absolute; opacity:0; inset:0; cursor:pointer; }
[data-design="a"] .a-chip:hover{ border-color:var(--a-ink-2); background:var(--a-surface); }
[data-design="a"] .a-chip:has(input:focus-visible){ box-shadow:var(--a-focus); border-color:var(--a-accent); }
[data-design="a"] .a-chip:has(input:checked){
  border-color:var(--a-accent); color:var(--a-ink);
  background:color-mix(in oklab, var(--a-accent), var(--a-surface) 92%);
  box-shadow:inset 0 0 0 1.5px var(--a-accent); transform:translateY(-1px);
}
[data-design="a"] .a-chip:has(input:checked)::after{
  content:""; position:absolute; right:12px; top:50%; width:14px; height:14px; transform:translateY(-50%);
  background:var(--a-accent);
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path d='M2 8l4 4 8-9' fill='none' stroke='white' stroke-width='2'/></svg>") center / contain no-repeat;
          mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path d='M2 8l4 4 8-9' fill='none' stroke='white' stroke-width='2'/></svg>") center / contain no-repeat;
}
[data-design="a"] .a-step__nav{ display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; border-top:1px solid var(--a-border-soft); padding-top:var(--a-line); }
[data-design="a"] .a-step__hint,[data-design="a"] .a-step__fine{ font-family:var(--a-mono); font-size:12px; color:var(--a-meta); letter-spacing:.06em; }
[data-design="a"] .a-step__fine{ text-transform:none; line-height:1.6; }
[data-design="a"] .a-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px;
  background:transparent; border:1px solid var(--a-border); padding:12px 18px; border-radius:var(--a-r-edge);
  font-family:var(--a-mono); text-transform:uppercase; letter-spacing:.12em; font-size:12px; color:var(--a-ink-2); cursor:pointer;
  transition:transform var(--a-d-fast) var(--a-ease-press), border-color var(--a-d-fast) var(--a-ease-press),
             background var(--a-d-fast) var(--a-ease-press), color var(--a-d-fast) var(--a-ease-press);
}
[data-design="a"] .a-btn:hover{ border-color:var(--a-ink); color:var(--a-ink); }
[data-design="a"] .a-btn:focus-visible{ outline:none; box-shadow:var(--a-focus); border-color:var(--a-accent); }
[data-design="a"] .a-btn:active{ transform:translateY(1px); }
[data-design="a"] .a-btn--next,[data-design="a"] .a-btn--submit{ background:var(--a-accent); color:var(--a-accent-on); border-color:var(--a-accent); }
[data-design="a"] .a-btn--next:hover,[data-design="a"] .a-btn--submit:hover{ background:color-mix(in oklab, var(--a-accent), black 8%); }
[data-design="a"] .a-field{ display:flex; flex-direction:column; gap:8px; }
[data-design="a"] .a-field label{ font-family:var(--a-mono); text-transform:uppercase; letter-spacing:.12em; font-size:11px; color:var(--a-meta); }
[data-design="a"] .a-field input,[data-design="a"] .a-field textarea{
  width:100%; padding:12px 14px; background:var(--a-bg); border:1px solid var(--a-border); border-radius:var(--a-r-edge);
  font-family:var(--a-sans); font-size:15px; color:var(--a-ink);
  transition:border-color var(--a-d-fast) var(--a-ease-press), box-shadow var(--a-d-fast) var(--a-ease-press);
}
[data-design="a"] .a-field textarea{ resize:vertical; min-height:96px; }
[data-design="a"] .a-field input:focus-visible,[data-design="a"] .a-field textarea:focus-visible{ outline:none; border-color:var(--a-accent); box-shadow:var(--a-focus); }
[data-design="a"] .a-step--final{ gap:12px; }
[data-design="a"] .a-final__title{ font-family:var(--a-display); font-size:clamp(26px,3vw,36px); letter-spacing:-.02em; line-height:1.15; margin:0; color:var(--a-ink); }
[data-design="a"] .a-final__body{ font-size:16px; line-height:1.6; color:var(--a-ink-2); margin:0; max-width:56ch; }
[data-design="a"] .a-final__stamp{ margin:var(--a-line) 0 0; font-family:var(--a-mono); font-size:12px; color:var(--a-meta); letter-spacing:.1em; text-transform:uppercase; }
[data-design="a"] .a-funnel__below{ margin:var(--a-block) 0 0; font-family:var(--a-mono); font-size:12px; color:var(--a-muted); letter-spacing:.04em; line-height:1.7; }

/* ===================== PROJECT INDEX (numbered, typographic) ===================== */
[data-design="a"] .a-index{ padding-block:var(--a-folio); max-width:1200px; margin-inline:auto; padding-inline:clamp(16px,4vw,24px); }
[data-design="a"] .a-rows{ list-style:none; margin:0; padding:0; border-top:1px solid var(--a-border); }
[data-design="a"] .a-row{
  display:grid; grid-template-columns:64px 1fr; align-items:baseline; gap:var(--a-block) var(--a-block);
  padding:var(--a-block) 0; border-bottom:1px solid var(--a-border-soft);
}
[data-design="a"] .a-row__no{ font-family:var(--a-mono); font-size:13px; color:var(--a-meta); letter-spacing:.06em; }
[data-design="a"] .a-row__name{ font-family:var(--a-display); font-size:clamp(22px,3vw,30px); letter-spacing:-.015em; color:var(--a-ink); }
[data-design="a"] .a-row__desc{ grid-column:2; font-size:16px; line-height:1.6; color:var(--a-ink-2); max-width:62ch; }
[data-design="a"] .a-index__cta{ margin-top:var(--a-fold); }

/* ===================== SERVICES TAGS ===================== */
[data-design="a"] .a-services{ padding-block:var(--a-folio); max-width:1200px; margin-inline:auto; padding-inline:clamp(16px,4vw,24px); }
[data-design="a"] .a-tags{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:12px; }
[data-design="a"] .a-tags li{
  font-family:var(--a-mono); font-size:13px; letter-spacing:.06em; color:var(--a-ink-2);
  padding:10px 16px; border:1px solid var(--a-border); border-radius:var(--a-r-edge); background:var(--a-surface);
}

/* ===================== 4. PROCESS (counters + trace) ===================== */
[data-design="a"] .a-process{ padding-block:var(--a-folio); max-width:1200px; margin-inline:auto; padding-inline:clamp(16px,4vw,24px); }
[data-design="a"] .a-proc-grid{ position:relative; display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--a-border); border-bottom:1px solid var(--a-border); }
[data-design="a"] .a-proc-rules{ position:absolute; inset:0; display:grid; grid-template-columns:repeat(8,1fr); pointer-events:none; }
[data-design="a"] .a-proc-rules span{ border-right:1px solid var(--a-border-soft); opacity:.7; }
[data-design="a"] .a-proc-rules span:last-child{ border-right:0; }
[data-design="a"] .a-proc-rules.is-live span{ animation:a-rule-pulse 18s linear infinite; }
@keyframes a-rule-pulse{ 0%,92%,100%{border-right-color:var(--a-border-soft);} 94%{border-right-color:var(--a-accent);} 96%{border-right-color:var(--a-border-soft);} }
[data-design="a"] .a-proc-rules span:nth-child(1){animation-delay:0s;}
[data-design="a"] .a-proc-rules span:nth-child(2){animation-delay:2s;}
[data-design="a"] .a-proc-rules span:nth-child(3){animation-delay:4s;}
[data-design="a"] .a-proc-rules span:nth-child(4){animation-delay:6s;}
[data-design="a"] .a-proc-rules span:nth-child(5){animation-delay:8s;}
[data-design="a"] .a-proc-rules span:nth-child(6){animation-delay:10s;}
[data-design="a"] .a-proc-rules span:nth-child(7){animation-delay:12s;}
[data-design="a"] .a-proc-rules span:nth-child(8){animation-delay:14s;}
[data-design="a"] .a-proc{ display:contents; list-style:none; margin:0; padding:0; }
[data-design="a"] .a-proc__step{ position:relative; z-index:1; padding:var(--a-fold) var(--a-block); display:flex; flex-direction:column; gap:10px; border-right:1px solid var(--a-border); }
[data-design="a"] .a-proc__step:last-child{ border-right:0; }
[data-design="a"] .a-proc__no{ font-family:var(--a-display); font-size:clamp(36px,5vw,56px); letter-spacing:-.03em; line-height:1; color:var(--a-ink); }
[data-design="a"] .a-proc__name{ font-family:var(--a-mono); text-transform:uppercase; letter-spacing:.1em; font-size:12px; color:var(--a-meta); }
[data-design="a"] .a-proc__body{ font-size:15px; line-height:1.55; color:var(--a-ink-2); }
[data-design="a"] .a-proc-trace{ position:absolute; left:0; bottom:-1px; height:1px; width:0; background:var(--a-accent); transition:width 1.8s var(--a-ease-register); }
[data-design="a"] .a-proc-grid.is-live .a-proc-trace{ width:100%; }

/* ===================== FOOTER ===================== */
[data-design="a"] .a-footer{ position:relative; max-width:1200px; margin-inline:auto; padding:var(--a-folio) clamp(16px,4vw,24px) var(--a-fold); border-top:1px solid var(--a-border); }
[data-design="a"] .a-stamp{ position:absolute; right:clamp(16px,4vw,24px); top:var(--a-fold); }
[data-design="a"] .a-footer__cols{ display:grid; grid-template-columns:repeat(3,1fr); gap:var(--a-fold); }
[data-design="a"] .a-footer__h{ font-family:var(--a-mono); text-transform:uppercase; letter-spacing:.12em; font-size:12px; color:var(--a-meta); margin:0 0 var(--a-line); }
[data-design="a"] .a-footer__t{ font-size:14px; line-height:1.7; color:var(--a-ink-2); margin:0; }
[data-design="a"] .a-footer__t a{ color:var(--a-ink-2); text-decoration:none; }
[data-design="a"] .a-footer__t a:hover{ color:var(--a-accent); }
[data-design="a"] .a-footer__fine{ margin:var(--a-fold) 0 0; padding-top:var(--a-line); border-top:1px solid var(--a-border-soft); font-family:var(--a-mono); font-size:11px; letter-spacing:.08em; color:var(--a-meta); }

/* ===================== RESPONSIVE ===================== */
@media (max-width:768px){
  [data-design="a"] .a-blueprint{ opacity:.5; }
  [data-design="a"] .a-blueprint__svg{ width:90%; right:-10%; }
  [data-design="a"] .a-proc-grid{ grid-template-columns:repeat(2,1fr); }
  [data-design="a"] .a-proc__step:nth-child(odd){ border-right:1px solid var(--a-border); }
  [data-design="a"] .a-proc__step:nth-child(even){ border-right:0; }
  [data-design="a"] .a-proc__step:nth-child(-n+2){ border-bottom:1px solid var(--a-border); }
  [data-design="a"] .a-proc-rules{ grid-template-columns:repeat(4,1fr); }
  [data-design="a"] .a-footer__cols{ grid-template-columns:1fr; gap:var(--a-block); }
  [data-design="a"] .a-stamp{ display:none; }
}
@media (max-width:560px){
  [data-design="a"] .a-step{ padding:var(--a-block); }
  [data-design="a"] .a-chips{ grid-template-columns:1fr; }
  [data-design="a"] .a-step__nav{ flex-direction:column; align-items:stretch; }
  [data-design="a"] .a-row{ grid-template-columns:1fr; gap:8px; }
  [data-design="a"] .a-row__desc{ grid-column:1; }
}

/* ===================== REDUCED MOTION ===================== */
@media (prefers-reduced-motion: reduce){
  [data-design="a"] .a-mesh__a,[data-design="a"] .a-mesh__b,[data-design="a"] .a-mesh__rule,
  [data-design="a"] .a-cta__mesh,[data-design="a"] .a-bp-draw,[data-design="a"] .a-pointer__line,
  [data-design="a"] .a-proc-rules.is-live span{ animation:none; }
  [data-design="a"] .a-bp-draw{ stroke-dashoffset:0; }
  [data-design="a"] .a-pointer__line{ stroke-dashoffset:0; }
  [data-design="a"] .a-bp-dim,[data-design="a"] .a-pointer__foot{ opacity:.85; }
  [data-design="a"] .a-drawer,[data-design="a"] .a-step,[data-design="a"] .a-funnel__bar,
  [data-design="a"] .a-chip,[data-design="a"] .a-proc-trace,[data-design="a"] .a-cta{ transition:none; }
}

/* ===================== MOBILE NO-H-SCROLL FLOOR (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; }
