.tno { margin: 0; font-family: var(--mono); font-size: 15px; color: var(--signal-ink); }
  .duo .h2.tt { font-size: clamp(26px, 2.6vw, 40px); word-break: keep-all; overflow-wrap: anywhere; }
  .tsub { margin: 14px 0 0; font-size: clamp(18px, 1.5vw, 21px); font-weight: 500; line-height: 1.6; color: var(--text-2); }
  .duo .body .relp { margin-top: 8px; }
  .toc { list-style: none; margin: 48px 0 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0 24px; border-top: 1px solid var(--line); }
  .toc a { display: flex; gap: 12px; padding: 16px 0; border-bottom: 1px solid var(--line); text-decoration: none; font-size: 16px; font-weight: 500; min-height: 44px; }
  .toc a span { font-family: var(--mono); font-size: 14px; color: var(--text-3); padding-top: 2px; }
  .toc a:hover { color: var(--signal); }
  .princ { list-style: none; margin: 40px 0 0; padding: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); border-top: 1px solid var(--text); }
  .princ li { padding: 24px 20px 0 0; font-size: clamp(19px, 1.6vw, 23px); word-break: keep-all; overflow-wrap: anywhere; font-weight: 600; line-height: 1.45; }
  @media (max-width: 1100px) { .toc { grid-template-columns: 1fr 1fr; } .princ { grid-template-columns: 1fr 1fr; } }
  @media (max-width: 560px) { .toc, .princ { grid-template-columns: 1fr; } .princ li { padding: 16px 0; border-bottom: 1px solid var(--line); } }
