/* ══════════════════════════════════════════════════════════════════════════
   E94 · v3 footer — N1's. 20 links, three rows, no site map.

   The live v2 footer is 129 links / 712 words / 1,708 px desktop and 2,768 px
   mobile, and 104 of the header's 106 hrefs reappear inside it. That is a
   second homepage under the homepage. This is the closing argument instead.
   ══════════════════════════════════════════════════════════════════════════ */

.dc-v3-ft{background:var(--dc-bg-primary);border-top:1px solid var(--v3-rule,rgba(255,255,255,.11));
  padding-block:clamp(22px,2.1vw,32px) clamp(16px,1.6vw,24px)}
.dc-v3-ft .dc-v3-wrap{width:100%;max-width:var(--v3-max,1240px);margin-inline:auto;
  padding-inline:var(--v3-gut,clamp(20px,4vw,44px))}
.dc-v3-ft p{margin-bottom:0}

.dc-v3-ft__top{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,.95fr);gap:clamp(24px,4vw,72px);
  padding-bottom:1.2rem;border-bottom:1px solid var(--v3-rule,rgba(255,255,255,.11))}
.dc-v3-ft__sig{font-family:var(--dc-font-heading);font-size:clamp(1.4rem,2.3vw,2rem);font-weight:700;line-height:1.06;
  text-transform:uppercase;color:var(--dc-text-primary);margin-bottom:.8rem}
.dc-v3-ft__sig b{color:var(--dc-accent);font-weight:700}
.dc-v3-ft__sub{font-size:.92rem;line-height:1.55;color:var(--dc-text-secondary);max-width:52ch}
.dc-v3-ft__newsh{font-family:var(--dc-font-heading);font-size:1.16rem;font-weight:700;letter-spacing:.04em;
  text-transform:uppercase;color:var(--dc-text-primary);margin-bottom:.55rem}
.dc-v3-ft__form{display:grid;grid-template-columns:1fr auto;gap:.5rem;margin-bottom:.5rem}
.dc-v3-ft__field{min-height:46px;padding:.6rem .8rem;background:var(--dc-bg-secondary);border:1px solid var(--dc-border-control);
  border-radius:2px;color:var(--dc-text-primary);font-family:var(--dc-font-body);font-size:.95rem}
.dc-v3-ft__field::placeholder{color:var(--dc-text-muted)}
.dc-v3-ft__submit{min-height:46px;padding:0 1.15rem;background:var(--dc-accent);color:#0D0D0D;border:0;border-radius:2px;
  font-family:var(--dc-font-heading);font-size:1rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}
.dc-v3-ft__msg{font-size:.85rem;line-height:1.5;margin-bottom:.4rem;color:var(--dc-text-secondary)}
.dc-v3-ft__msg[data-state="ok"]{color:var(--dc-success)}
.dc-v3-ft__msg[data-state="err"]{color:#ef4444}

.dc-v3-ft__rows{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.3rem clamp(20px,3vw,52px);padding-block:1.1rem}
.dc-v3-ft__h{display:block;font-family:var(--dc-font-mono);font-size:.645rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--dc-text-muted);margin-bottom:.7rem}
.dc-v3-ft__list{display:flex;flex-wrap:wrap;gap:.3rem 1.15rem}
.dc-v3-ft__list a{display:inline-flex;align-items:center;min-height:28px;font-size:.9rem;color:var(--dc-text-secondary);
  transition:color 160ms ease}
.dc-v3-ft__list a:hover,.dc-v3-ft__list a:focus-visible{color:var(--dc-accent)}
.dc-v3-ft__list--stack{flex-direction:column;gap:.15rem;align-items:flex-start}
.dc-v3-ft__note{font-size:.8rem;line-height:1.55;color:var(--dc-text-muted);margin-top:.45rem}

.dc-v3-ft__bot{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1.4rem;padding-top:1.3rem;
  border-top:1px solid var(--v3-rule,rgba(255,255,255,.11))}
.dc-v3-ft__cr{font-family:var(--dc-font-mono);font-size:.66rem;letter-spacing:.06em;color:var(--dc-text-muted);line-height:1.7}
.dc-v3-ft__soc{display:flex;gap:.45rem}
.dc-v3-ft__soc a{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;
  border:1px solid var(--dc-border);border-radius:var(--dc-radius-sm);color:var(--dc-text-secondary)}
.dc-v3-ft__soc a:hover,.dc-v3-ft__soc a:focus-visible{border-color:var(--dc-accent);color:var(--dc-accent)}
.dc-v3-ft__legal{display:flex;flex-wrap:wrap;gap:.2rem 1rem;margin-left:auto}
.dc-v3-ft__legal a{font-family:var(--dc-font-mono);font-size:.66rem;letter-spacing:.06em;text-transform:uppercase;
  color:var(--dc-text-muted);min-height:24px;display:inline-flex;align-items:center}
.dc-v3-ft__legal a:hover,.dc-v3-ft__legal a:focus-visible{color:var(--dc-accent)}

@media (max-width:900px){
  .dc-v3-ft__top{grid-template-columns:1fr;gap:22px}
  .dc-v3-ft__rows{grid-template-columns:1fr;gap:1.2rem}
  .dc-v3-ft__legal{margin-left:0}
}
@media (max-width:480px){
  .dc-v3-ft__form{grid-template-columns:1fr}
}
