.comments-section{
  background:var(--paper);
  color:var(--ink);
  padding:4.5rem 8vw 5rem;
  border-top:1px solid var(--rule);
}
.comments-inner{
  width:min(760px,92vw);
  margin:0 auto;
}
.comments-kicker{
  font-family:'JetBrains Mono',monospace;
  font-size:9px;
  letter-spacing:.2em;
  color:var(--red);
  margin-bottom:.8rem;
}
.comments-title{
  font-family:'Playfair Display',Georgia,serif;
  font-size:clamp(1.7rem,3vw,2.45rem);
  line-height:1.16;
  margin-bottom:.8rem;
}
.comments-lead{
  color:var(--ink-2);
  font-size:.95rem;
  line-height:1.9;
  max-width:620px;
  margin-bottom:1.6rem;
}
.comments-form{
  background:var(--paper-2);
  border-top:3px solid var(--ink);
  box-shadow:0 2px 24px rgba(0,0,0,.08),0 0 0 1px rgba(0,0,0,.04);
  padding:1.6rem;
  margin-bottom:2rem;
}
.comments-label{
  display:block;
  font-family:'JetBrains Mono',monospace;
  font-size:8.5px;
  letter-spacing:.16em;
  color:var(--red);
  margin:.9rem 0 .35rem;
}
.comments-input,
.comments-textarea{
  width:100%;
  border:1px solid var(--rule);
  background:var(--paper);
  color:var(--ink);
  font:inherit;
  font-size:.95rem;
  padding:.78rem .9rem;
  outline:none;
}
.comments-textarea{
  min-height:130px;
  resize:vertical;
}
.comments-input:focus,
.comments-textarea:focus{
  border-color:rgba(139,42,26,.55);
  box-shadow:0 0 0 3px rgba(139,42,26,.08);
}
.comments-submit{
  margin-top:1rem;
  border:0;
  background:var(--red);
  color:var(--paper);
  font-family:'JetBrains Mono',monospace;
  font-size:9px;
  letter-spacing:.14em;
  padding:.8rem 1.05rem;
  cursor:pointer;
}
.comments-submit:hover{
  background:var(--ink);
}
.comments-submit:disabled{
  opacity:.55;
  cursor:not-allowed;
}
.comments-status{
  min-height:1.4rem;
  margin-top:.8rem;
  color:var(--ink-3);
  font-family:'JetBrains Mono',monospace;
  font-size:8.5px;
  letter-spacing:.08em;
  line-height:1.6;
}
.comments-list{
  display:flex;
  flex-direction:column;
  gap:1rem;
}
.comment-card{
  background:var(--paper-2);
  border:1px solid var(--rule);
  padding:1.25rem 1.35rem;
}
.comment-meta{
  display:flex;
  flex-wrap:wrap;
  gap:.45rem .8rem;
  margin-bottom:.5rem;
  font-family:'JetBrains Mono',monospace;
  font-size:8.5px;
  letter-spacing:.1em;
  color:var(--ink-4);
}
.comment-name{
  color:var(--red);
}
.comment-message{
  white-space:pre-wrap;
  color:var(--ink-2);
  line-height:1.85;
  font-size:.94rem;
}
.comment-reply{
  margin-top:1rem;
  padding:.9rem 1rem;
  border-left:2px solid var(--red);
  background:var(--paper);
}
.comment-reply-label{
  font-family:'JetBrains Mono',monospace;
  font-size:8.5px;
  letter-spacing:.14em;
  color:var(--red);
  margin-bottom:.35rem;
}
.comment-reply-text{
  white-space:pre-wrap;
  color:var(--ink-2);
  font-size:.92rem;
  line-height:1.8;
}
.comments-empty{
  color:var(--ink-3);
  font-style:italic;
  padding:1rem 0;
}
@media(max-width:680px){
  .comments-section{padding:3.5rem 5vw 4rem;}
  .comments-form{padding:1.25rem;}
}
