/* Special reports: shared layout */
.spec-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:26px;}
.spec-step{background:var(--card);padding:22px 18px;min-height:170px;}
.spec-step .n{font-family:var(--mono);font-size:12px;color:var(--red);margin-bottom:10px;}
.spec-step .t{font-family:var(--serif);font-size:23px;line-height:1.35;margin-bottom:7px;}
.spec-step .d{font-size:15px;line-height:1.8;color:var(--muted);}
.spec-two{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px;}
.spec-panel{background:var(--card);border:1px solid var(--line);padding:26px;}
.spec-panel .p-k{font-family:var(--mono);font-size:12px;letter-spacing:.1em;color:var(--red);margin-bottom:10px;}
.spec-panel .p-t{font-family:var(--serif);font-size:26px;line-height:1.35;margin-bottom:8px;}
.spec-panel .p-d{font-size:16px;line-height:1.85;color:var(--muted);}
.spec-risk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:26px;}
.spec-risk{background:var(--card);padding:22px 18px;min-height:190px;}
.spec-risk .r-k{font-family:var(--mono);font-size:12px;color:var(--red);margin-bottom:10px;}
.spec-risk .r-t{font-family:var(--serif);font-size:22px;line-height:1.35;margin-bottom:7px;}
.spec-risk .r-d{font-size:15px;line-height:1.8;color:var(--muted);}
.spec-trends{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:26px;}
.spec-trends .trend{min-height:230px;}
.spec-quote{background:var(--ink);color:var(--paper);padding:30px 28px;margin-top:28px;}
.spec-quote .q{font-family:var(--serif);font-size:clamp(24px,2.2vw,32px);line-height:1.5;letter-spacing:-.02em;}
.spec-quote .s{font-family:var(--mono);font-size:10px;color:rgba(244,239,228,.55);margin-top:16px;}
.spec-note{font-size:15px;line-height:1.8;color:var(--muted);margin-top:12px;}
.spec-kicker{font-family:var(--mono);font-size:10px;letter-spacing:.1em;color:var(--red);}
.spec-cover-badge{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:var(--red);border:1px solid rgba(178,58,43,.4);padding:6px 10px;margin-bottom:18px;}
.spec-source-note{font-size:15px;line-height:1.8;color:var(--muted);margin-top:12px;}
@media(max-width:900px){
  .spec-steps{grid-template-columns:1fr 1fr;}
  .spec-two{grid-template-columns:1fr;}
  .spec-risk-grid{grid-template-columns:1fr;}
  .spec-trends{grid-template-columns:1fr;}
}
@media(max-width:520px){
  .spec-steps{grid-template-columns:1fr;}
}
/* stack 4-col tables on small screens */
@media(max-width:640px){
  .compare--stack thead{display:none;}
  .compare--stack,.compare--stack tbody,.compare--stack tr,.compare--stack th,.compare--stack td{display:block;width:100%;}
  .compare--stack tr{padding:16px 0;border-bottom:1px solid var(--line);}
  .compare--stack th{border:0;padding:0 0 8px;font-size:19px;}
  .compare--stack td{border:0;padding:3px 0 3px 76px;position:relative;font-size:15px;line-height:1.7;}
  .compare--stack td::before{content:attr(data-label);position:absolute;left:0;top:4px;width:68px;font-family:var(--mono);font-size:9px;letter-spacing:.04em;color:var(--muted);}
}
