.category-nav { overflow-x: auto; overflow-y: hidden; }

.feature-body section { scroll-margin-top: 2rem; }
.feature-intro { margin: 0 0 2.4rem; padding: 1.7rem; background: #eef2e8; border-left: 5px solid #5e7558; }
.feature-intro p { font-family: Georgia, serif; font-size: 1.25rem; line-height: 1.65; }
.feature-intro small, .affiliate-panel small { display: block; margin-top: .65rem; color: #5d625c; }
.affiliate-cta { margin-top: .6rem; }
.offer-card { margin: 2rem 0; padding: 1.8rem; background: #fff3cf; border: 1px solid #e3c768; }
.offer-card h2 { margin-top: .35rem; }
.offer-note { padding-top: 1rem; border-top: 1px solid #dfcb8d; }
.facts-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); margin: 1.4rem 0 1.8rem; border-top: 1px solid #d8d8ce; }
.facts-grid div { padding: 1rem .8rem 1rem 0; border-bottom: 1px solid #d8d8ce; }
.facts-grid dt { color: #68715f; font-size: .75rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.facts-grid dd { margin: .35rem 0 0; font-weight: 650; line-height: 1.45; }
.flow-step { display: grid; grid-template-columns: 3rem 1fr; gap: .8rem; padding: 1.15rem 0; border-top: 1px solid #d8d8ce; }
.flow-step > span { color: #ef4e45; font-size: .8rem; font-weight: 800; letter-spacing: .08em; }
.flow-step h3 { margin-top: 0; }
.flow-step p { margin-bottom: 0; }
.config-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }
.config-card { display: flex; flex-direction: column; padding: 1.4rem; background: #f6f3ea; }
.config-card .affiliate-cta { margin-top: auto; align-self: flex-start; }
.config-price { display: block; margin: .25rem 0 .75rem; font-family: Georgia,serif; font-size: 2rem; }
.affiliate-panel { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; margin-top: 1.5rem; padding: 1.5rem; background: #242823; color: #fff; }
.affiliate-panel h3 { color: #fff; margin: .3rem 0; }
.affiliate-panel p { margin: 0; color: #e1e4dd; }
.affiliate-panel .button { flex: 0 0 auto; background: #f4c84a; color: #1d211d; }
.faq-list details { border-top: 1px solid #d8d8ce; padding: 1rem 0; }
.faq-list details:last-child { border-bottom: 1px solid #d8d8ce; }
.faq-list summary { cursor: pointer; font-weight: 750; }
.faq-list details p { margin-bottom: 0; }
.source-list { padding-left: 1.2rem; }
.source-list li { margin: .55rem 0; }
@media (max-width: 720px) {
  .facts-grid, .config-grid { grid-template-columns: 1fr; }
  .affiliate-panel { align-items: flex-start; flex-direction: column; }
}
