.buying-guide { min-width: 0; }
.buying-guide h1 { font-size: clamp(2.1rem, 3.4vw, 3.2rem); letter-spacing: -.035em; line-height: 1.12; }
.buying-guide .guide-answer { padding: 1.3rem 1.5rem; border-left: 5px solid #174d3b; background: #eaf1e6; margin: 1.7rem 0; }
.buying-guide .guide-answer h2, .buying-guide .guide-contents h2 { margin: 0 0 .65rem; font-size: 1.3rem; }
.buying-guide .guide-answer p { margin: 0; font-size: var(--reading-body); line-height: 1.7; }
.guide-contents { border: 1px solid #a5b3a6; border-radius: 12px; padding: 1.2rem 1.5rem; margin-bottom: 2.3rem; }
.guide-contents ol { padding-left: 1.4rem; margin: 0; }
.guide-contents a { display: inline-block; padding: .4rem 0; color: #064d78; text-decoration: underline; text-underline-offset: .16em; font-size: 1rem; line-height: 1.6; }
.buying-guide section { scroll-margin-top: 2rem; }
.buying-guide section > p, .buying-guide li, .buying-guide td, .buying-guide th { font-size: var(--reading-body); line-height: 1.75; }
.buying-guide ul, .buying-guide ol { padding-left: 1.4rem; }
.buying-guide li { margin-bottom: .65rem; }
.buying-guide a:not(.button) { overflow-wrap: anywhere; }
.buying-guide table { width: 100%; min-width: 28rem; border-collapse: collapse; margin: 1.3rem 0; text-align: left; }
.guide-table-hint { font-size: var(--reading-small) !important; color: var(--muted); margin-bottom: .5rem; }
.buying-guide caption { font-size: 1.1rem; line-height: 1.5; font-weight: 700; text-align: left; margin-bottom: .8rem; }
.buying-guide th, .buying-guide td { border: 1px solid #a5b3a6; padding: .75rem; vertical-align: top; overflow-wrap: anywhere; }
.buying-guide thead th { background: #eaf1e6; }
.buying-guide tbody th { font-weight: 600; }
.buying-guide .table-wrap, .buying-guide .guide-table-wrap { max-width: 100%; overflow-x: auto; margin: 1.3rem 0; }
.buying-guide .table-wrap table, .buying-guide .guide-table-wrap table { margin: 0; }
.buying-guide-layout .article-sidebar > h2 { font-size: 1.5rem; line-height: 1.3; margin-bottom: 1rem; }
.guide-product-selection > p { max-width: 760px; font-size: var(--reading-body); line-height: 1.7; margin-bottom: 1.2rem; }
.guide-product-selection > .affiliate-note { font-size: var(--reading-small); }
.scenario-related { border-top: 1px solid #a5b3a6; padding-top: 1.2rem; }
@media (max-width: 650px) {
  .buying-guide h1 { font-size: 2.1rem; }
  .buying-guide .guide-answer, .guide-contents { padding: 1rem; }
  .buying-guide th, .buying-guide td { padding: .5rem; font-size: .95rem; }
}
