
body.s-catalog{background:#f3efe6}
.s-catalog .hero{
  border-bottom:3px double var(--cd);
  padding-bottom:3rem;
}
.cat-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:.8rem}
.no{
  font-family:Georgia,serif;
  font-size:1rem;
  color:#fff;
  background:var(--cd);
  padding:.3em .9em;
  font-weight:700;
  letter-spacing:.08em;
}
.cat-ind{font-weight:900;font-size:.92rem;color:var(--c)}
.cat-sol-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:16px;
}
.cat-sol-card{
  background:#fff;
  border:2px solid var(--cd);
  padding:1.3rem;
  box-shadow:4px 4px 0 var(--cd);
}
.cs-num{font-family:Georgia,serif;font-weight:700;font-size:.82rem;color:var(--c);letter-spacing:.1em;margin-bottom:.4rem}
.cs-pain{font-size:.88rem;color:var(--brown-soft);font-weight:700;padding-bottom:.6rem;margin-bottom:.6rem;border-bottom:1px dashed rgba(0,0,0,.18)}
.cs-fix{font-weight:900;font-size:1.02rem;line-height:1.5}
.grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:14px;
}
.card{
  background:#fff;
  border:2px solid var(--cd);
  padding:1.25em;
  position:relative;
}
.idx{
  position:absolute;
  right:12px;
  top:6px;
  font-family:Georgia,serif;
  font-size:2.2rem;
  color:transparent;
  -webkit-text-stroke:1.5px var(--c);
}
.card h3{font-weight:900;color:var(--cd);padding-right:2.4em;margin-bottom:.35em;display:flex;align-items:center;gap:6px;font-size:1.02rem}
.c-ico{font-size:1.15em}
.card p{font-size:.88rem;color:var(--brown-soft)}
.spec{
  list-style:none;
  padding:0;
  margin:0;
  background:#fff;
  border:2px solid var(--cd);
}
.spec li{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:.75em 1.2em;
  border-bottom:1px solid rgba(0,0,0,.1);
  font-weight:700;
}
.spec li:last-child{border-bottom:0}
.sp-code{font-family:monospace;font-size:.8rem;color:var(--c);background:var(--cl);padding:.15em .5em}
.sp-n{flex:1}
.specs{width:100%;border-collapse:collapse;background:#fff;border:2px solid var(--cd)}
.specs th,.specs td{border:1.5px solid var(--cd);padding:.85em 1.1em;text-align:left;vertical-align:top;font-size:.92rem}
.specs th{background:var(--cl);width:12em;font-weight:900;color:var(--cd)}
@media(max-width:600px){
  .specs th,.specs td{display:block;width:100%}
  .specs th{border-bottom:0}
}
section{padding:2.8rem 0}
