.feature-toc { padding: 32px; background: #e7e5d8; border-radius: var(--radius-surface); }
.feature-toc h2 { margin-bottom: 24px; }
.feature-toc ol { padding-left: 24px; columns: 2; column-gap: 48px; }
.feature-toc li { margin-bottom: 14px; break-inside: avoid; padding-left: 6px; line-height: 1.5; }
.feature-toc a, .feature-detail-link { text-decoration: underline; text-underline-offset: 4px; }
.feature-boundary { max-width: 820px; line-height: 1.7; margin-block: 32px 64px; }
.feature-section { padding-block: 48px; border-top: 1px solid var(--color-border-hover); scroll-margin-top: 110px; }
.feature-section-heading { max-width: 820px; margin-bottom: 28px; }
.feature-section-heading h2 { font-size: clamp(1.7rem,3vw,2.5rem); margin-bottom: 20px; }
.feature-section-heading .product-note { margin-top: 12px; }
.feature-item { display: grid; grid-template-columns: minmax(0,.75fr) minmax(0,1.25fr); gap: 32px; padding: 20px 0; border-top: 1px solid var(--color-border); scroll-margin-top: 110px; line-height: 1.65; }
.feature-item dt { font-weight: 650; }
.feature-item dt a { text-decoration: none; }
.feature-item dt a:hover { text-decoration: underline; text-underline-offset: 4px; }
.feature-item dt span { color: #846029; }
.feature-item dd { margin: 0; }
.feature-back { display: block; margin-top: 28px; font-size: .85rem; text-decoration: underline; text-underline-offset: 4px; }
.feature-item:target { background: #e7e5d8; outline: 6px solid #e7e5d8; }
@media(max-width:680px) {
  .feature-toc { padding: 24px 18px; }
  .feature-toc ol { columns: 1; }
  .feature-item { grid-template-columns: minmax(0,1fr); gap: 8px; }
}
