/* Shared comparison layouts; keep wide tables inside their own scroll region. */
.comparison-article .article-hero { padding: 24px 0 20px; margin-bottom: 24px; }
.comparison-article .article-hero .breadcrumb { margin-bottom: 12px; }
.comparison-article .article-hero .eyebrow { margin-bottom: 8px; }
.comparison-article .article-hero h1 { font-size: clamp(32px, 3.4vw, 46px); }
.comparison-article .article-hero .lead { margin-top: 12px; font-size: 17px; }
.comparison-article .article-meta { margin-top: 14px; gap: 12px 24px; flex-wrap: wrap; }
.comparison-article .article-body { min-width: 0; }
.comparison-article .publisher-disclosure { padding: 12px 16px; margin: 18px 0; }
.comparison-article .comparison-note { color: var(--ink-dim); font-size: 14px; }
.comparison-table caption { padding: 16px; text-align: left; color: var(--ink); font-weight: 600; }
.comparison-table th[scope="row"] { min-width: 130px; background: transparent; }
.comparison-table td { min-width: 145px; }
.feature-table-wrap:focus-visible { outline: 2px solid var(--sakura); outline-offset: 4px; }
.comparison-cta { margin: 28px 0; padding: clamp(20px, 4vw, 30px); border: 1px solid var(--line); border-radius: 20px; background: var(--surface); }
.comparison-cta h2 { margin-top: 0; }
.comparison-cta .btn { white-space: normal; text-align: center; min-height: 44px; }
.comparison-jump { display: flex; flex-wrap: wrap; gap: 12px 24px; padding: 20px 0; }
.comparison-jump a { min-height: 44px; display: inline-flex; align-items: center; }
.comparison-picks { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 28px 0; }
.comparison-picks > div { padding: 20px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); }
.comparison-picks h2 { margin-top: 0; font-size: 21px; }
.comparison-picks p { font-size: 15px; }
.photo-store-preview { display: block; margin: 0; }
.photo-store-preview img { display: block; width: 100%; height: auto; border-radius: 24px; }
.photo-store-preview figcaption { color: var(--ink-dim); font-size: 13px; padding-top: 10px; text-align: center; }
@media (max-width: 700px) {
  .comparison-picks { grid-template-columns: 1fr; }
  .comparison-article .article-hero h1 { overflow-wrap: break-word; }
  .comparison-table { font-size: 14px; }
}

.logging-example { display:grid; grid-template-columns:minmax(150px,222px) minmax(0,1fr); gap:28px; align-items:start; margin:28px 0; }
.logging-example figure { margin:0; }
.logging-example img { width:100%; height:auto; border-radius:20px; }
.logging-example figcaption { font-size:13px; color:var(--ink-dim); }
.logging-example > div { min-width:0; }
@media(max-width:700px) { .logging-example { grid-template-columns:1fr; } .logging-example figure { max-width:222px; margin:auto; } }

.macro-roundup #comparison { font-size:26px; line-height:1.25; margin:16px 0 10px; }
.macro-roundup .article-hero { padding:16px 0 12px; margin-bottom:12px; }
.macro-roundup .article-hero .lead { font-size:15px; margin-top:8px; }
@media(max-width:580px) { .macro-roundup .article-hero h1 { font-size:28px; line-height:1.15; } .macro-roundup .article-meta { font-size:13px; margin-top:8px; } }
