/* Requires css/tokens.css loaded first for colours, fonts, and .btn */

.evidence-section{
  border-bottom:1px solid var(--rule);
}

.evidence-section__inner,
.pillars-block,
.contrast-block,
.refs-block,
.evidence-cta{
  max-width:1180px;
  margin:0 auto;
  padding-left:40px;
  padding-right:40px;
}

/* ---------- Intro ---------- */
.evidence-section__inner{
  padding-top:64px;
  padding-bottom:8px;
  max-width:760px;
}

.evidence-eyebrow{
  font-size:0.78rem;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:var(--verdigris);
  margin:0 0 14px;
}

.evidence-title{
  font-family:'Fraunces', Georgia, serif;
  font-weight:600;
  font-size:clamp(1.9rem, 3.4vw, 2.7rem);
  line-height:1.15;
  margin:0 0 22px;
  color:var(--ink);
}

.evidence-lede{
  font-size:1.08rem;
  line-height:1.65;
  color:var(--ink-soft);
  margin:0;
}

/* ---------- Three pillars ---------- */
.pillars-block{
  padding-top:56px;
  padding-bottom:12px;
}

.pillars-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:0;
  border-top:1px solid var(--rule);
  border-left:1px solid var(--rule);
}

.pillar{
  padding:30px 26px;
  border-right:1px solid var(--rule);
  border-bottom:1px solid var(--rule);
  background:var(--paper);
}

.pillar__label{
  font-family:'IBM Plex Mono', monospace;
  font-size:0.68rem;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--ink-soft);
  margin:0 0 10px;
}

.pillar h3{
  font-family:'Fraunces', Georgia, serif;
  font-weight:600;
  font-size:1.18rem;
  margin:0 0 12px;
  color:var(--ink);
  line-height:1.25;
}

.pillar p{
  margin:0 0 12px;
  font-size:0.95rem;
  line-height:1.6;
  color:var(--ink-soft);
}

.pillar p:last-child{ margin-bottom:0; }

.pillar .cite{
  font-family:'IBM Plex Mono', monospace;
  font-size:0.68rem;
  color:var(--verdigris);
  text-decoration:none;
  vertical-align:super;
  margin-left:2px;
}

.pillar .cite:hover{ text-decoration:underline; }

.pillar__so-what{
  margin-top:14px;
  padding-top:14px;
  border-top:1px dashed var(--rule);
}

.pillar__so-what .tag{
  display:block;
  font-family:'IBM Plex Mono', monospace;
  font-size:0.64rem;
  letter-spacing:0.06em;
  text-transform:uppercase;
  color:var(--oxide);
  margin-bottom:6px;
}

/* ---------- Contrast block ---------- */
.contrast-block{
  padding-top:60px;
  padding-bottom:12px;
}

.contrast-heading{
  font-family:'Fraunces', Georgia, serif;
  font-weight:600;
  font-size:1.5rem;
  color:var(--ink);
  margin:0 0 8px;
}

.contrast-sub{
  font-size:0.98rem;
  color:var(--ink-soft);
  margin:0 0 28px;
  max-width:640px;
}

.contrast-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  border:1px solid var(--rule);
}

.contrast-col{
  padding:24px 26px;
}

.contrast-col:first-child{
  border-right:1px solid var(--rule);
  background:var(--paper-panel);
}

.contrast-col__label{
  font-family:'IBM Plex Mono', monospace;
  font-size:0.68rem;
  letter-spacing:0.08em;
  text-transform:uppercase;
  margin:0 0 14px;
}

.contrast-col:first-child .contrast-col__label{ color:var(--oxide); }
.contrast-col:last-child .contrast-col__label{ color:var(--verdigris); }

.contrast-col ul{
  margin:0;
  padding:0;
  list-style:none;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.contrast-col li{
  font-size:0.94rem;
  line-height:1.55;
  color:var(--ink-soft);
  padding-left:16px;
  position:relative;
}

.contrast-col:first-child li::before{
  content:"×";
  position:absolute;
  left:0;
  color:var(--oxide);
  font-weight:700;
}

.contrast-col:last-child li::before{
  content:"✓";
  position:absolute;
  left:0;
  color:var(--verdigris);
  font-weight:700;
}

/* ---------- References ---------- */
.refs-block{
  padding-top:52px;
  padding-bottom:12px;
  border-top:1px solid var(--rule);
}

.refs-heading{
  font-family:'IBM Plex Mono', monospace;
  font-size:0.72rem;
  letter-spacing:0.1em;
  text-transform:uppercase;
  color:var(--ink-soft);
  margin:0 0 16px;
}

.refs-list{
  margin:0;
  padding:0;
  list-style:none;
  display:flex;
  flex-direction:column;
  gap:10px;
}

.refs-list li{
  font-size:0.86rem;
  line-height:1.5;
  color:var(--ink-soft);
  scroll-margin-top:24px;
}

.refs-list li span.marker{
  font-family:'IBM Plex Mono', monospace;
  color:var(--verdigris);
  margin-right:6px;
}

/* ---------- Closing CTA ---------- */
.evidence-cta{
  padding-top:44px;
  padding-bottom:64px;
  display:flex;
  gap:16px;
  flex-wrap:wrap;
  align-items:center;
  border-top:1px solid var(--rule);
}

.evidence-cta__label{
  font-family:'IBM Plex Mono', monospace;
  font-size:0.78rem;
  letter-spacing:0.06em;
  text-transform:uppercase;
  color:var(--ink-soft);
  margin:0 8px 0 0;
}

/* ---------- Mobile ---------- */
@media (max-width:880px){
  .evidence-section__inner,
  .pillars-block,
  .contrast-block,
  .refs-block,
  .evidence-cta{
    padding-left:22px;
    padding-right:22px;
  }

  .evidence-section__inner{ padding-top:44px; }

  .pillars-grid{
    grid-template-columns:1fr;
  }

  .contrast-grid{
    grid-template-columns:1fr;
  }

  .contrast-col:first-child{
    border-right:none;
    border-bottom:1px solid var(--rule);
  }
}
