/* Shared page styles: base type, article layout and the components guides,
   comparisons and policy pages use. Page-specific rules stay inline after this. */
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,sans-serif;color:#111827;background:#F9FAFB;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit}
::selection{background:#1354BC;color:#fff}
.btn-lift{transition:transform .15s ease}
.btn-lift:hover{transform:translateY(-1px)}
.breadcrumb{max-width:740px;margin:0 auto;padding:20px clamp(18px,5vw,40px) 0;font-size:13px;color:#6B7280}
.breadcrumb a{color:#6B7280;text-decoration:none}
.breadcrumb a:hover{color:#1354BC}
.article{max-width:740px;margin:0 auto;padding:16px clamp(18px,5vw,40px) clamp(64px,8vw,96px)}
.eyebrow{font-family:'Spline Sans Mono',monospace;font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#1354BC;margin-bottom:14px}
.article h1{font-size:clamp(1.9rem,4.5vw,2.6rem);font-weight:800;letter-spacing:-.02em;line-height:1.12;color:#111827}
.byline{margin-top:16px;font-size:13.5px;color:#6B7280;line-height:1.6}
.byline .fineprint{display:block;margin-top:3px;font-size:12px;font-style:italic;color:#9CA3AF}
.takeaways{background:#EAF2FF;border:1px solid #d4e4ff;border-radius:16px;padding:24px 26px;margin:28px 0}
.takeaways .label{font-family:'Spline Sans Mono',monospace;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#1354BC;margin-bottom:12px}
.takeaways ul{padding-left:20px;display:flex;flex-direction:column;gap:8px}
.takeaways li{font-size:15px;line-height:1.55;color:#111827}
.toc{margin:24px 0;padding:18px 22px;background:#fff;border:1px solid #E5E7EB;border-radius:14px}
.toc .label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#6B7280;margin-bottom:10px}
.toc ol{padding-left:18px;display:flex;flex-direction:column;gap:6px}
.toc a{font-size:14.5px;color:#1354BC;text-decoration:none}
.toc a:hover{text-decoration:underline}
.article h2{margin-top:44px;font-size:clamp(1.35rem,3vw,1.7rem);font-weight:800;letter-spacing:-.015em;color:#111827;line-height:1.25}
.article h3{margin-top:26px;font-size:1.05rem;font-weight:700;color:#111827}
.article p{margin-top:14px;font-size:16px;line-height:1.7;color:#374151}
.article ul,.article ol{margin-top:14px;padding-left:22px;display:flex;flex-direction:column;gap:8px}
.article li{font-size:16px;line-height:1.65;color:#374151}
.article strong{color:#111827;font-weight:700}
.article em{font-style:italic}
.article table{width:100%;border-collapse:collapse;margin-top:20px;font-size:14.5px}
.article th,.article td{padding:12px 14px;border:1px solid #E5E7EB;text-align:left;vertical-align:top}
.article th{background:#F9FAFB;font-weight:700;color:#111827}
.article td{color:#374151}
.table-wrap{overflow-x:auto}
.glossary-box{margin-top:24px;background:#fff;border:1px solid #E5E7EB;border-left:3px solid #1354BC;border-radius:10px;padding:16px 20px}
.expert{margin:28px 0 0;background:#fff;border:1px solid #E5E7EB;border-radius:14px;padding:22px 26px}
.expert .mark{font-family:'Spline Sans Mono',monospace;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#1354BC;display:block;margin-bottom:12px}
.expert blockquote{font-size:16.5px;line-height:1.66;color:#111827;font-weight:500}
.expert figcaption{margin-top:14px;padding-top:12px;border-top:1px solid #E5E7EB;font-size:13.5px;line-height:1.6;color:#374151}
.expert figcaption .who{font-weight:700;color:#111827}
.expert figcaption .src{display:block;margin-top:3px;font-size:12.5px;color:#6B7280}
.expert figcaption a{color:#1354BC;text-decoration:none}
.expert figcaption a:hover{text-decoration:underline}
.glossary-box .term{font-weight:700;color:#111827;font-size:14.5px;display:flex;align-items:center;gap:8px}
.glossary-box .tag{font-family:'Spline Sans Mono',monospace;font-size:9.5px;font-weight:600;color:#16A34A;background:rgba(22,163,74,.1);border:1px solid rgba(22,163,74,.3);padding:2px 7px;border-radius:6px}
.glossary-box p{margin-top:8px !important;font-size:14.5px}
.cta-box{margin-top:32px;background:#fff;border:1.5px solid #1354BC;border-radius:16px;padding:24px 26px;box-shadow:0 12px 32px -16px rgba(19,84,188,.25)}
.cta-box p{color:#111827;margin-top:0 !important}
.article details{margin-top:12px;background:#fff;border:1px solid #E5E7EB;border-radius:12px;padding:16px 20px}
.article summary{font-weight:700;color:#111827;cursor:pointer;font-size:15.5px;list-style:none}
.article summary::-webkit-details-marker{display:none}
.article summary::before{content:"+ ";color:#1354BC;font-weight:800}
.article details[open] summary::before{content:"– "}
.article details p{margin-top:10px !important}
.refs{margin-top:14px;padding-left:20px;display:flex;flex-direction:column;gap:8px}
.refs a{color:#1354BC;text-decoration:none}
.refs a:hover{text-decoration:underline}
.refs-note{font-size:13.5px;color:#6B7280;margin-top:14px !important}
.related{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:16px}
.related a{display:block;background:#fff;border:1px solid #E5E7EB;border-radius:12px;padding:16px 18px;text-decoration:none;font-size:14.5px;font-weight:600;color:#1354BC;transition:border-color .15s}
.related a:hover{border-color:#1354BC}
.illus{margin:24px 0 4px}
.illus img{width:100%;height:auto;display:block}
.illus figcaption{margin-top:8px;font-size:13px;color:#6B7280;line-height:1.5}
.bio{margin-top:40px;padding-top:24px;border-top:1px solid #E5E7EB;font-size:13.5px;color:#6B7280;line-height:1.6}
.store-row{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}
