.dossier-with-photo .dossier-title h3 a { overflow-wrap: anywhere; hyphens: auto; }
main > section.buyer-closing { padding-block: 1.5rem 2rem; border-block: 2px solid var(--ink); margin-block: 2rem; }
.buyer-closing h2 { font-size: 2rem; }
.buyer-closing > p { font-size: .9rem; }
.buyer-closing-links { display: flex; flex-wrap: wrap; gap: 1.5rem 2rem; }
.buyer-closing-links > div { flex: 1 1 220px; min-width: 0; }
.buyer-closing-links h3 { font-size: 1.6rem; margin-block: .5rem .8rem; }
.buyer-closing-links .button { width: 100%; }
.guide-lead.prose { max-width: 850px; margin-block: 1.1rem 1.4rem; font-size: .95rem; }
.guide-lead.prose p { font-size: .95rem; line-height: 1.7; }
.guide-lead.prose > :first-child { margin-top: 0; }
.guide-lead.prose > :last-child { margin-bottom: 0; }
.has-buyer-guide > .article-title { padding-block: .5rem 1.3rem; margin-bottom: 0; }
.has-buyer-guide > .article-title h1 { font-size: clamp(2.1rem, 4vw, 3.6rem); }
.has-buyer-guide > .article-title .eyebrow { margin-bottom: .6rem; }
.has-buyer-guide > .article-title .meta { margin-top: .8rem; }
.buyer-jumps { display: flex; flex-wrap: wrap; gap: .5rem 1.4rem; margin-top: .9rem; }
.buyer-jumps .text-link { font-size: .8rem; min-height: 32px; }
main > section.buyer-guide { padding-block: 1.65rem 2.7rem; }
.buyer-guide-heading { max-width: 820px; margin-bottom: 1.4rem; }
.buyer-guide-heading .eyebrow { margin-bottom: .5rem; }
.buyer-guide-heading h2 { font-size: clamp(1.8rem, 3vw, 2.5rem); margin-bottom: .4rem; letter-spacing: -.015em; }
.buyer-guide-heading > p:last-child { font-size: .9rem; line-height: 1.6; margin-bottom: 0; color: var(--muted); }
.buyer-models { display: grid; grid-template-columns: repeat(var(--buyer-columns, 3), minmax(0, 1fr)); gap: 1.8rem; }
.buyer-choice { min-width: 0; display: flex; flex-direction: column; border-top: 3px solid var(--ink); padding-top: 1rem; }
.buyer-photo { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--line); text-decoration: none; margin-bottom: 1.1rem; }
.buyer-photo > img, .buyer-photo > svg { width: 100%; height: 190px; object-fit: contain; padding: 12px; }
.buyer-photo > span { display: flex; justify-content: space-between; padding: .45rem .65rem; border-top: 1px solid var(--line); font-size: .67rem; line-height: 1.35; font-weight: 700; }
.buyer-photo:hover > span { background: var(--soft); }
.buyer-choice h3 { font-size: clamp(1.65rem, 2.2vw, 2rem); margin: 0 0 .6rem; letter-spacing: -.01em; }
.buyer-choice h3 a { text-decoration: none; }
.buyer-choice h3 a:hover { text-decoration: underline; }
.buyer-use { font-size: .87rem; line-height: 1.65; margin-bottom: 1rem; }
.buyer-facts { border-block: 1px solid var(--line); margin: 0 0 .9rem; padding: .65rem 0; font-size: .76rem; line-height: 1.5; }
.buyer-facts > div { display: grid; grid-template-columns: minmax(85px, .75fr) minmax(0, 1fr); gap: .65rem; padding-block: .23rem; }
.buyer-facts dt { color: var(--muted); }
.buyer-facts dd { margin: 0; font-weight: 700; overflow-wrap: anywhere; }
.buyer-limit { font-size: .78rem; line-height: 1.65; margin: 0 0 1rem; color: var(--muted); }
.buyer-limit strong { color: var(--ink); }
.buyer-actions { display: flex; align-items: flex-start; flex-direction: column; gap: .5rem; margin: .2rem 0 1rem; }
.buyer-actions .button { width: 100%; }
.buyer-actions .text-link { font-size: .78rem; min-height: 32px; }
.buyer-disclosure { margin: 1.2rem 0 0; color: var(--muted); font-size: .7rem; line-height: 1.65; }
.buyer-aside > .text-link { line-height: 1.6; }
.buyer-models-single .buyer-choice { display: grid; grid-template-columns: minmax(240px, .7fr) minmax(0, 1fr); gap: .9rem 2rem; max-width: 980px; }
.buyer-models-single .buyer-photo { grid-column: 1; grid-row: 1 / span 4; align-self: start; margin: 0; }
.buyer-models-single .buyer-photo > img, .buyer-models-single .buyer-photo > svg { height: 275px; }
.buyer-models-single .buyer-choice-copy, .buyer-models-single .buyer-facts, .buyer-models-single .buyer-limit, .buyer-models-single .buyer-actions { grid-column: 2; margin: 0; }
.buyer-models-single .buyer-use { margin-bottom: 0; }
.buyer-models-single .buyer-actions { align-items: flex-start; }
.buyer-models-single .buyer-actions .button { width: auto; min-width: 230px; }
.buyer-recap { display: grid; grid-template-columns: 132px minmax(0, 1fr); gap: 1.25rem; margin-block: 2.5rem; padding-block: 1.5rem; border-block: 2px solid var(--ink); }
.buyer-recap-photo { display: block; align-self: start; border: 1px solid var(--line); background: #fff; text-decoration: none; }
.buyer-recap-photo > img, .buyer-recap-photo > svg { width: 100%; height: 125px; object-fit: contain; padding: 8px; }
.buyer-recap-photo > span { display: block; padding: .4rem .5rem; border-top: 1px solid var(--line); font: 700 .63rem/1.5 var(--sans); }
.buyer-recap-copy { min-width: 0; }
.prose .buyer-recap h2 { font-size: clamp(1.7rem, 2.6vw, 2.2rem); margin: 0 0 .6rem; }
.prose .buyer-recap p { line-height: 1.6; font-size: .85rem; margin-bottom: .8rem; }
.prose .buyer-recap .eyebrow { font-size: .61rem; margin-bottom: .55rem; }
.prose .buyer-recap .affiliate-note { font-size: .68rem; margin: .8rem 0 0; }
.buyer-guide-has-comparison .buyer-models-single .buyer-photo { grid-row: 1 / span 3; }
.buyer-comparison { margin-top: 2rem; scroll-margin-top: 1rem; }
.buyer-comparison-heading { margin-bottom: .8rem; }
.buyer-comparison-heading h3 { font-size: clamp(1.7rem, 2.8vw, 2.2rem); margin: 0; letter-spacing: -.015em; }
.buyer-comparison-summary { max-width: 850px; margin: .5rem 0 0; color: var(--muted); font-size: .83rem; line-height: 1.6; }
.buyer-comparison-hint { display: none; margin: .6rem 0 0; font-size: .78rem; line-height: 1.6; color: var(--muted); }
.buyer-comparison-scroll { position: relative; --criterion-width: 175px; --model-width: 225px; max-width: 100%; overflow-x: auto; border: 1px solid var(--line); overscroll-behavior-x: contain; scrollbar-color: var(--sage) var(--soft); }
.buyer-comparison-scroll:focus-visible { outline: 3px solid #a66d10; outline-offset: 4px; }
.buyer-criteria-table { width: 100%; min-width: calc(var(--criterion-width) + var(--comparison-columns) * var(--model-width)); border-collapse: separate; border-spacing: 0; table-layout: fixed; margin: 0; font-size: .86rem; line-height: 1.65; }
.buyer-criteria-label-col { width: var(--criterion-width); }
.buyer-criteria-table th, .buyer-criteria-table td { padding: .8rem 1rem; text-align: left; vertical-align: top; overflow-wrap: anywhere; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.buyer-criteria-table tr > :last-child { border-right: 0; }
.buyer-criteria-table thead th { background: var(--graphite); color: #fff; font-size: 1.25rem; font-family: var(--font-display); font-weight: 600; line-height: 1.25; }
.buyer-criteria-table thead th a { text-decoration: none; }
.buyer-criteria-table thead th a:hover { text-decoration: underline; }
.buyer-criteria-table tr > th:first-child { position: sticky; left: 0; z-index: 1; }
.buyer-criteria-table thead th:first-child { font: 700 .71rem/1.5 var(--mono); vertical-align: bottom; letter-spacing: .03em; }
.buyer-criteria-table tbody th, .buyer-criteria-table tfoot th { background: #e4e9ed; color: var(--ink); font: 700 .8rem/1.6 var(--sans); }
.buyer-criteria-table td { background: #fff; }
.buyer-criteria-table tbody tr:nth-child(even) td { background: #f5f7f8; }
.buyer-criteria-table tbody tr:nth-child(even) th { background: #dce3e8; }
.buyer-criteria-table tfoot th, .buyer-criteria-table tfoot td { border-top: 2px solid var(--ink); border-bottom: 0; padding-block: 1rem; }
.buyer-criteria-model-label { display: none; }
.buyer-comparison-actions { display: flex; flex-direction: column; align-items: stretch; gap: .8rem; }
.buyer-comparison-actions .text-link { font-size: .8rem; align-self: flex-start; min-height: 32px; }
.buyer-comparison-actions .button { min-width: 0; width: 100%; font-size: .81rem; padding-inline: .65rem; }
.buyer-comparison-note { margin: .8rem 0 0; font-size: .71rem; line-height: 1.65; color: var(--muted); }
@media (max-width: 760px) {
.has-buyer-guide > .breadcrumb { padding-block: .9rem; }
.has-buyer-guide > .article-title { padding-block: .35rem 1rem; }
.has-buyer-guide > .article-title h1 { font-size: 2.2rem; }
.has-buyer-guide > .article-title .meta { font-size: .61rem; margin-top: .6rem; }
main > section.buyer-guide { padding-block: 1.2rem 2rem; }
.buyer-guide-heading { margin-bottom: 1rem; }
.buyer-guide-heading h2 { font-size: 1.8rem; }
.buyer-guide-heading > p:last-child { font-size: .8rem; }
.buyer-guide-heading .eyebrow { font-size: .6rem; }
.buyer-models { grid-template-columns: minmax(0, 1fr); gap: 1.7rem; }
.buyer-choice, .buyer-models-single .buyer-choice { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: .85rem 1rem; padding-top: .85rem; }
.buyer-photo, .buyer-models-single .buyer-photo { grid-column: 1; grid-row: 1; align-self: start; margin: 0; }
.buyer-photo > img, .buyer-photo > svg, .buyer-models-single .buyer-photo > img, .buyer-models-single .buyer-photo > svg { height: 120px; padding: 7px; }
.buyer-photo > span { font-size: .58rem; padding: .4rem; }
.buyer-choice-copy { grid-column: 2; grid-row: 1; min-width: 0; }
.buyer-choice h3 { font-size: 1.65rem; margin-bottom: .45rem; overflow-wrap: break-word; }
.buyer-use { font-size: .79rem; line-height: 1.6; margin: 0; }
.buyer-facts, .buyer-limit, .buyer-actions, .buyer-models-single .buyer-facts, .buyer-models-single .buyer-limit, .buyer-models-single .buyer-actions { grid-column: 1 / -1; margin: 0; }
.buyer-facts { font-size: .72rem; padding-block: .4rem; }
.buyer-facts > div { grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); padding-block: .15rem; }
.buyer-limit { font-size: .74rem; }
.buyer-actions { gap: .45rem; }
.buyer-models-single .buyer-actions .button { width: 100%; min-width: 0; }
.buyer-disclosure { margin-top: 1rem; }
.buyer-recap { grid-template-columns: 92px minmax(0, 1fr); gap: .9rem; margin-block: 2rem; padding-block: 1rem; }
.buyer-recap-photo > img, .buyer-recap-photo > svg { height: 96px; }
.buyer-recap-photo > span { font-size: .56rem; }
.prose .buyer-recap h2 { font-size: 1.65rem; }
.prose .buyer-recap .eyebrow { font-size: .55rem; }
.buyer-recap .button { font-size: .76rem; padding-inline: .6rem; width: 100%; }
.buyer-guide-has-comparison .buyer-models-single .buyer-photo { grid-row: 1; }
.buyer-comparison { margin-top: 1.7rem; }
.buyer-comparison-heading h3 { font-size: 1.85rem; }
.buyer-comparison-hint { display: block; }
.buyer-comparison-scroll { --criterion-width: 112px; --model-width: min(208px, calc(100vw - 170px)); }
.buyer-criteria-table { font-size: .86rem; line-height: 1.65; }
.buyer-criteria-table th, .buyer-criteria-table td { padding: .75rem .8rem; }
.buyer-criteria-table thead th { font-size: 1.2rem; }
.buyer-criteria-table tbody th, .buyer-criteria-table tfoot th { font-size: .78rem; padding-inline: .6rem; }
.buyer-criteria-table tr > th:first-child { box-shadow: 3px 0 0 #23292f18; }
.buyer-criteria-model-label { display: block; margin-bottom: .35rem; color: var(--muted); font-size: .7rem; line-height: 1.45; font-weight: 700; }
.buyer-comparison-actions .button { min-height: 48px; font-size: .8rem; }
}
@media (max-width: 359px) {
.buyer-choice, .buyer-models-single .buyer-choice { grid-template-columns: 92px minmax(0, 1fr); gap: .75rem; }
.buyer-photo > img, .buyer-photo > svg, .buyer-models-single .buyer-photo > img, .buyer-models-single .buyer-photo > svg { height: 105px; }
.buyer-recap { grid-template-columns: 76px minmax(0, 1fr); }
.buyer-recap-photo > img, .buyer-recap-photo > svg { height: 80px; }
.buyer-comparison-scroll { --criterion-width: 96px; --model-width: 166px; }
}
@media print {
.buyer-comparison-scroll { overflow: visible; border: 0; }
.buyer-criteria-table { min-width: 0; font-size: 9pt; }
.buyer-criteria-label-col { width: 22%; }
.buyer-criteria-table tr > th:first-child { position: static; box-shadow: none; }
.buyer-comparison-hint, .buyer-comparison-actions, .buyer-comparison-note { display: none; }
}