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

.review-body section { scroll-margin-top: 2rem; }
.verdict-box { margin: 0 0 2.4rem; padding: 1.7rem; background: #eef2e8; border-left: 5px solid #5e7558; }
.verdict-box p { font-family: Georgia, serif; font-size: 1.25rem; line-height: 1.65; }
.verdict-box small, .affiliate-panel small { display: block; margin-top: .65rem; color: #5d625c; }
.affiliate-cta { margin-top: .6rem; }
.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; }
.fit-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.2rem; }
.fit-grid > div { padding: 1.4rem; background: #f6f3ea; }
.fit-grid h2 { margin-top: 0; }
.caution-list li::marker { color: #b65c38; }
.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, .fit-grid { grid-template-columns: 1fr; }
  .affiliate-panel { align-items: flex-start; flex-direction: column; }
}
