/* Shared reading and conversion flow; loaded after each page's visual theme. */
html{scroll-padding-bottom:120px}
body{padding-bottom:var(--journey-dock-space,0px)}
.journey-entry,.journey-end{box-sizing:border-box;border:1px solid #c9e5d5;border-radius:18px;background:#f0faf4;color:#16211e;padding:26px;margin-top:28px;margin-bottom:28px}
.journey-entry strong{display:block;font-size:18px;line-height:1.6}
.journey-entry p,.journey-end p{margin:8px 0 16px;color:#4c6057;font-size:16px;line-height:1.85}
.journey-end h2{margin:0;font-size:clamp(23px,3vw,30px);line-height:1.5}
.journey-end .journey-kicker{margin:0 0 8px;font-size:13px;font-weight:700;color:#087f4b}
.journey-entry small,.journey-end small{display:block;margin-top:12px;color:#4c6057;font-size:13px;line-height:1.7}
.journey-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch}
.journey-actions a{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px;padding:12px 20px;border:1px solid #b9cbc5;border-radius:10px;font-size:15px;font-weight:700;line-height:1.5;text-decoration:none;text-align:center;box-sizing:border-box}
.journey-actions .journey-primary{background:#087f4b;border-color:#087f4b;color:#fff}
.journey-actions .journey-primary:hover{background:#06653c}
.journey-actions .journey-secondary{background:#fff;color:#183d2c}
.journey-actions .journey-secondary:hover{background:#e8f9ee}
:where(a,button,summary,[tabindex]):focus-visible{outline:3px solid #1768b3;outline-offset:4px}
.journey-dock{position:fixed;z-index:90;bottom:0;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:28px;padding:12px 20px calc(12px + env(safe-area-inset-bottom));background:rgba(255,255,255,.98);border-top:1px solid #c9e5d5;box-shadow:0 -4px 24px #0f2a2412}
.journey-dock[hidden]{display:none}
.journey-dock-copy strong,.journey-dock-copy span{display:block;line-height:1.65}
.journey-dock-copy strong{font-size:15px;color:#16211e}
.journey-dock-copy span{font-size:12px;color:#4c6057}
.journey-dock .journey-actions{flex-wrap:nowrap}
.article p,.article li{font-size:16px;line-height:1.95;color:#42564c}
.article .cta p{color:#d5e0dc}
.toc a{display:inline-block;padding:7px 0;text-decoration:underline;text-underline-offset:4px}
.modal-close{min-width:44px;min-height:44px}
.modal-dialog{overscroll-behavior:contain}
@media(max-width:760px){
  .header-inner{gap:12px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px}
  .header-inner .brand{flex-wrap:wrap;gap:4px;font-size:12px;line-height:1.5;max-width:100%}
  .header-inner .back{font-size:12px;min-height:44px}
  .hero{padding-top:36px;padding-bottom:36px}
  .hero h1{font-size:clamp(28px,7.5vw,36px);line-height:1.45;overflow-wrap:anywhere;letter-spacing:-.025em}
  .hero h1 br{display:none}
  .hero p.lead,.hero p.hero-lead,.hero p.hero-copy,.card p,.card li,.head p,.feature p,.point-card p,.type-card p,.support-card p,.vendor-card p,.finder-card p{font-size:16px;line-height:1.85}
  .article h2{font-size:24px;line-height:1.55}
  .article h3{font-size:19px;line-height:1.65}
  .failure,.toc,.callout,.checklist,.source{padding:20px}
  .journey-entry,.journey-end{padding:22px 18px;margin-top:20px;margin-bottom:20px}
  .journey-actions{display:grid;grid-template-columns:1fr;width:100%}
  .journey-dock{gap:0;padding:10px 14px calc(10px + env(safe-area-inset-bottom))}
  .journey-dock-copy{display:none}
  .journey-dock .journey-actions{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:8px;max-width:600px}
  .journey-dock .journey-actions a{padding:12px 8px;font-size:14px;gap:5px;min-height:48px}
  .choice strong{font-size:16px}.choice small,.question p{font-size:14px}
  .modal-dialog{height:100dvh;padding-bottom:env(safe-area-inset-bottom)}
  .comparison-wrap{overscroll-behavior-x:contain}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media print{.journey-dock{display:none!important}body{padding-bottom:0}}

/* Readable comparisons and downloadable editorial resources. */
.reading-breadcrumb{padding-top:18px;padding-bottom:18px;font-size:13px;line-height:1.8;color:#4c6057}
.reading-breadcrumb a{display:inline-block;min-height:32px;padding:4px 0;text-underline-offset:4px}
.reading-table{max-width:100%;overflow-x:auto;margin:24px 0;border:1px solid #c9d8d1;border-radius:12px;overscroll-behavior-x:contain}
.reading-table table{width:100%;min-width:570px;border-collapse:collapse;font-size:15px;line-height:1.8;background:#fff}
.reading-table caption{text-align:left;padding:14px 16px;font-weight:700;color:#183d2c;background:#edf7f3}
.reading-table th,.reading-table td{padding:14px 16px;vertical-align:top;text-align:left;border-bottom:1px solid #d9e4e0;overflow-wrap:anywhere}
.reading-table thead th{background:#edf7f3;color:#183d2c}
.reading-table tbody th{min-width:125px;font-weight:700}
.reading-table a,.related-reading a{color:#087f4b;text-underline-offset:4px}
.related-reading{display:block;padding:24px 0;border-top:1px solid #d9e4e0;margin-top:32px}
.related-reading h2{font-size:20px;margin:0 0 12px}
.related-reading ul{display:grid;gap:10px;padding-left:22px;margin:0}
.related-reading a{display:inline-block;padding:7px 0;font-size:16px;line-height:1.7}
#choose-by-purpose .finder-card a{display:inline-block;margin-top:auto;padding-top:16px;color:#087f4b;font-size:15px;text-underline-offset:4px}
@media(max-width:600px){.reading-table th,.reading-table td{padding:12px}.reading-table caption{font-size:14px}.article .source p{font-size:13px}}
