.brief{width:min(980px,100% - 2.5rem);margin:0 auto;padding:1.5rem 0 4rem}
.brief>section{width:auto;margin:0;padding:2.25rem 0;border-top:1px solid var(--line)}
.brief h2{font-size:clamp(1.45rem,2.8vw,1.9rem);margin-bottom:1rem;display:flex;align-items:baseline;gap:.75rem}
.brief h2 .n{font:800 1em/1 var(--display);color:var(--brass);min-width:1.1em}
.brief h3{font-size:1.06rem;margin-bottom:.45rem}
.brief p{max-width:72ch}
.brief a[href^="#s"]{font-size:.85em;text-decoration:none;white-space:nowrap}
.b-head{padding:1.5rem 0 2rem}
.b-kind{font:600 1rem var(--display);color:var(--brass);margin-bottom:.4rem}
.b-head h1{font-weight:800;font-size:clamp(3rem,8vw,5.5rem);letter-spacing:-.045em;line-height:.95;margin-bottom:1rem}
.b-meta{color:var(--slate)}
.legend{list-style:none;display:flex;flex-wrap:wrap;gap:.6rem 1.75rem;margin-top:1.25rem;font-size:.92rem;color:var(--slate)}

.tag{display:inline-block;font:600 .74rem/1 var(--body);padding:.3rem .5rem;border-radius:5px;margin-right:.35rem;vertical-align:.12em;white-space:nowrap}
.tag.fact{background:#DCEBEA;color:#0B4A4D}
.tag.hyp{background:#F3E6CF;color:#6E4B12}
.tag.ill{background:#E1E5EA;color:#3A4552}

.facts-list,.plain-list{list-style:none;padding:0;display:grid;gap:.7rem}
.small{font-size:.92rem;color:var(--slate);margin-top:1rem}
.lead-in{color:var(--slate);margin-bottom:1rem}

.signals,.personas{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.personas{grid-template-columns:repeat(4,1fr)}
.signals>div,.personas>div{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:1.1rem 1.15rem}
.signals p,.personas p{font-size:.95rem;margin:0;color:var(--slate)}
.signals p{color:var(--ink)}

.caps{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:1rem 2rem}
.caps dt{font:600 1.02rem var(--display);margin-bottom:.25rem}
.caps dd{margin:0;color:var(--slate);font-size:.96rem}

.qs{padding-left:1.25rem;display:grid;gap:.55rem;max-width:72ch}
.qs li::marker{color:var(--brass);font-weight:600}

.out-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:2rem;align-items:start}
.email{background:var(--ink);color:#E6EAEE;border-radius:14px;padding:1.3rem 1.45rem}
.email p{font-size:.96rem;margin-bottom:.7rem}
.email p:last-child{margin:0}
.email .email-tag{margin-bottom:.6rem}
.email .tag.ill{background:#34414E;color:#D5DCE3}
.email .subj{font-weight:600;color:#fff;border-bottom:1px solid #34414E;padding-bottom:.7rem}
.out-notes h3{margin-top:0}
.out-notes h3+p{color:var(--slate);font-size:.96rem}
.out-notes p+h3{margin-top:1rem}

.b-sources ol{padding-left:1.4rem;display:grid;gap:.35rem;font-size:.9rem}
.b-foot{padding-top:1.5rem;border-top:1px solid var(--line);color:var(--slate);font-size:.95rem}

@media (max-width:860px){
  .signals,.caps,.out-grid{grid-template-columns:1fr}
  .personas{grid-template-columns:1fr 1fr}
}
@media (max-width:520px){ .personas{grid-template-columns:1fr} }
@media (max-width:640px){ .brief-page nav a{display:inline} }

/* -------- two-page A4 print -------- */
@media print{
  @page{size:A4;margin:11mm 13mm}
  .brief-page .top,.brief-page .skip{display:none!important}
  .brief-page{font-size:8.7pt;line-height:1.38}
  .brief{width:100%;padding:0}
  .brief>section{padding:2.4mm 0!important;border-top:.8pt solid var(--line)}
  .brief h2{font-size:10.8pt;margin-bottom:1.6mm;gap:2mm}
  .brief h3{font-size:9.2pt;margin-bottom:.8mm}
  .brief p{max-width:none;margin-bottom:1.2mm}
  .b-head{padding:0 0 2.5mm}
  .b-kind{font-size:9pt;margin:0}
  .b-head h1{font-size:24pt;margin-bottom:1.5mm}
  .legend{margin-top:1.5mm;gap:1mm 6mm;font-size:8pt}
  .tag{font-size:6.6pt;padding:.6mm 1.1mm;border-radius:1mm}
  .facts-list,.plain-list{gap:1mm}
  .small{font-size:8pt;margin-top:1.5mm}
  .signals{grid-template-columns:repeat(3,1fr)!important;gap:3mm}
  .personas{grid-template-columns:repeat(4,1fr)!important;gap:3mm}
  .signals>div,.personas>div{padding:2.4mm;border-radius:2mm}
  .signals p,.personas p{font-size:8.2pt}
  .caps{grid-template-columns:1fr 1fr!important;gap:1.5mm 6mm}
  .caps dt{font-size:9.3pt;margin-bottom:.4mm}
  .caps dd{font-size:8.3pt}
  .qs{gap:.6mm}
  .out-grid{grid-template-columns:1.1fr 1fr!important;gap:6mm}
  .email{padding:2.6mm 3.4mm;border-radius:2mm}
  .email p{font-size:8.2pt;margin-bottom:1mm}
  .out-notes h3+p{font-size:8.3pt}
  .b-sources ol{gap:0;font-size:7pt;line-height:1.28}
  .b-sources a{color:var(--ink);text-decoration:none}
  .b-sources a::after{content:"  " attr(href);color:var(--slate);word-break:break-all}
  .b-foot{padding-top:1.5mm;font-size:7.8pt}
  .brief>section{break-inside:avoid}
  .brief>.b-sources{break-inside:auto}
  .brief a{color:var(--teal)}
}
