:root{--bg:#fafaf7;--paper:#fff;--ink:#13161b;--muted:#566071;--line:#dcdfe5;--accent:#1b3a57;--accent-2:#c8451d;--cream:#f3eee4;--hl:#fff8df;--radius:6px}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{overflow-x:hidden}body{margin:0;font-family:"IBM Plex Serif",Georgia,"Times New Roman",serif;background:var(--bg);color:var(--ink);line-height:1.65;font-size:17px}h1,h2,h3,h4{font-family:"IBM Plex Sans","Helvetica Neue",sans-serif;font-weight:600;line-height:1.25;letter-spacing:-.01em;color:var(--ink)}h1{font-size:clamp(2rem,4vw,3rem);margin:0 0 .6em}h2{font-size:clamp(1.4rem,2.4vw,1.85rem);margin:2.2em 0 .6em}h3{font-size:1.15rem;margin:1.6em 0 .4em}p{margin:0 0 1.1em}a{color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--accent-2)}img{max-width:100%;height:auto;display:block;border-radius:var(--radius)}.container{max-width:1080px;margin:0 auto;padding:0 22px}.article{max-width:760px;margin:0 auto;padding:0 16px}.site-header{border-bottom:1px solid var(--line);background:0 0}.site-header .row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:18px 22px;max-width:1180px;margin:0 auto}.brand{font-family:"IBM Plex Sans",sans-serif;font-weight:700;font-size:1.35rem;letter-spacing:.06em;color:var(--ink);text-decoration:none;text-transform:lowercase}.brand .dot{color:var(--accent-2)}.main-nav{display:flex;flex-wrap:wrap;gap:22px}.main-nav a{text-decoration:none;font-family:"IBM Plex Sans",sans-serif;font-size:.92rem;color:var(--muted);letter-spacing:.02em}.main-nav a:hover{color:var(--ink)}.hero{background:var(--accent);color:#f5f1e8;padding:84px 22px 96px;border-bottom:1px solid #0d2031}.hero .inner{max-width:1080px;margin:0 auto}.hero .eyebrow{font-family:"IBM Plex Mono",monospace;font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;opacity:.8;margin-bottom:18px}.hero h1{color:#fff;max-width:780px}.hero .lead{font-family:"IBM Plex Serif",serif;font-size:1.15rem;max-width:640px;margin-top:14px;color:#e7e1d3}.infobox{background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--accent-2);padding:18px 22px;margin:1.6em 0;border-radius:var(--radius)}.infobox h4{margin:0 0 .4em;font-family:"IBM Plex Mono",monospace;font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}.infobox p:last-child{margin-bottom:0}.infobox.data{border-left-color:var(--accent);background:#f4f6f9}.infobox.warn{border-left-color:#a08113;background:var(--hl)}.numbered{display:flex;flex-wrap:wrap;align-items:baseline;gap:14px}.numbered .num{font-family:"IBM Plex Mono",monospace;font-size:.85rem;color:var(--accent-2);letter-spacing:.1em}.compare{display:flex;flex-wrap:wrap;gap:18px;margin:1.8em 0}.compare .col{flex:1 1 260px;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.compare .col.before{background:#fbf6f3;border-left:3px solid #c0a48b}.compare .col.after{background:#f1f7f3;border-left:3px solid #2e7a4f}.compare h4{margin:0 0 10px;font-family:"IBM Plex Mono",monospace;font-size:.75rem;letter-spacing:.18em;text-transform:uppercase}.faq{margin:1.8em 0}.faq details{border-top:1px solid var(--line);padding:14px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-family:"IBM Plex Sans",sans-serif;font-weight:600;font-size:1.02rem;padding:4px 0;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary:before{content:"+";color:var(--accent-2);margin-right:10px;font-family:"IBM Plex Mono",monospace}.faq details[open] summary:before{content:"–"}.meta{display:flex;flex-wrap:wrap;gap:14px;font-family:"IBM Plex Mono",monospace;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;margin:0 0 28px}.breadcrumb{font-family:"IBM Plex Mono",monospace;font-size:.78rem;letter-spacing:.1em;color:var(--muted);margin:24px 0 18px}.breadcrumb a{color:var(--muted)}.tags{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.tags span{font-family:"IBM Plex Mono",monospace;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;background:#eef1f6;color:var(--accent);padding:5px 10px;border-radius:30px}.cta-primary{display:inline-block;background:var(--accent-2);color:#fff;font-family:"IBM Plex Sans",sans-serif;font-size:1rem;font-weight:600;letter-spacing:.04em;padding:14px 26px;border:none;border-radius:var(--radius);cursor:pointer;text-decoration:none;transition:transform .15s ease,background .15s ease}.cta-primary:hover{background:#a73716;color:#fff;transform:translateY(-1px)}.subscribe{background:var(--cream);padding:38px 30px;margin:48px 0;border-radius:var(--radius);border:1px solid var(--line)}.subscribe h2{margin-top:0}.sub-form{display:flex;flex-wrap:wrap;gap:14px;margin-top:16px}.sub-form .field{flex:1 1 200px;display:flex;flex-direction:column;gap:5px}.sub-form label{font-family:"IBM Plex Mono",monospace;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.sub-form input{font-family:"IBM Plex Serif",serif;font-size:1rem;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.sub-form input:focus{outline:2px solid var(--accent);outline-offset:0}.sub-form button{flex:1 1 100%;margin-top:6px}.author-bio{display:flex;flex-wrap:wrap;gap:18px;align-items:center;background:var(--paper);border:1px solid var(--line);padding:22px;border-radius:var(--radius);margin:36px 0}.author-bio .avatar{width:64px;height:64px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-family:"IBM Plex Sans",sans-serif;font-weight:600;font-size:1.4rem}.author-bio .info{flex:1 1 220px}.author-bio .info h4{margin:0 0 4px}.author-bio .info p{margin:0;color:var(--muted);font-size:.95rem}.disclaimer{font-family:"IBM Plex Sans",sans-serif;font-size:.88rem;color:var(--muted);background:#f4f5f7;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 22px;margin:36px 0}.read-also{display:flex;flex-wrap:wrap;gap:18px;margin:36px 0}.read-also .card{flex:1 1 280px;background:var(--paper);border:1px solid var(--line);padding:22px;border-radius:var(--radius);transition:transform .15s ease}.read-also .card:hover{transform:translateY(-2px)}.read-also .card .lbl{font-family:"IBM Plex Mono",monospace;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-2)}.read-also .card h4{margin:8px 0 6px;font-size:1.05rem}.read-also .card a{text-decoration:none;color:inherit;display:block}.latest{margin:36px 0}.latest .row{display:flex;flex-wrap:wrap;gap:18px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--line)}.latest .row:first-child{border-top:1px solid var(--line)}.latest .num{font-family:"IBM Plex Mono",monospace;font-size:.85rem;color:var(--accent-2);flex:0 0 50px}.latest .ttl{flex:1 1 280px;font-family:"IBM Plex Sans",sans-serif;font-weight:600;font-size:1.1rem}.latest .ttl a{text-decoration:none;color:var(--ink)}.latest .ttl a:hover{color:var(--accent-2)}.latest .dt{font-family:"IBM Plex Mono",monospace;font-size:.75rem;color:var(--muted);flex:0 0 90px;text-align:right}.share-rail{position:sticky;top:120px;display:none;flex-direction:column;gap:10px}.share-rail a{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:"IBM Plex Mono",monospace;font-size:.78rem;color:var(--accent);text-decoration:none;background:var(--paper)}.share-rail a:hover{background:var(--accent);color:#fff}@media (min-width:1100px){.share-rail{display:flex;float:left;margin-left:-80px;margin-top:8px}}.site-footer{background:var(--cream);border-top:1px solid var(--line);margin-top:60px;padding:50px 22px 22px}.site-footer .grid{display:flex;flex-wrap:wrap;gap:36px;max-width:1080px;margin:0 auto}.site-footer .col{flex:1 1 240px}.site-footer h5{font-family:"IBM Plex Mono",monospace;font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin:0 0 12px}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin:6px 0}.site-footer a{color:var(--ink);text-decoration:none;font-size:.95rem}.site-footer a:hover{color:var(--accent-2)}.site-footer .small{text-align:center;font-size:.85rem;color:var(--muted);margin-top:32px;padding-top:18px;border-top:1px solid var(--line);max-width:1080px;margin-left:auto;margin-right:auto}.cookie-bar{position:fixed;left:0;right:0;bottom:0;z-index:100;background:var(--ink);color:#f5f1e8;padding:18px 22px;display:none}.cookie-bar.show{display:block}.cookie-bar .ck-inner{max-width:1080px;margin:0 auto;display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}.cookie-bar p{margin:0;flex:1 1 320px;font-size:.92rem}.cookie-bar .ck-actions{display:flex;flex-wrap:wrap;gap:8px}.cookie-bar button{flex:1 1 auto;font-family:"IBM Plex Sans",sans-serif;padding:10px 16px;border:1px solid #4a5363;background:0 0;color:#f5f1e8;border-radius:var(--radius);cursor:pointer;font-size:.92rem}.cookie-bar button.primary{background:var(--accent-2);border-color:var(--accent-2);color:#fff}.cookie-modal{position:fixed;inset:0;background:rgba(19,22,27,.6);z-index:200;display:none;align-items:center;justify-content:center;padding:22px}.cookie-modal.show{display:flex}.cookie-modal .box{background:var(--paper);max-width:540px;width:100%;padding:30px;border-radius:var(--radius)}.cookie-modal h3{margin-top:0}.cookie-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:14px 0;border-top:1px solid var(--line)}.cookie-row:last-of-type{border-bottom:1px solid var(--line)}.switch{position:relative;width:46px;height:24px;display:inline-block}.switch input{opacity:0;width:0;height:0}.switch .slider{position:absolute;inset:0;background:#cbd0d8;border-radius:24px;cursor:pointer;transition:.2s}.switch .slider:before{content:"";position:absolute;height:18px;width:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}.switch input:checked+.slider{background:var(--accent)}.switch input:checked+.slider:before{transform:translateX(22px)}.switch input:disabled+.slider{opacity:.6;cursor:not-allowed}.cookie-modal .actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}@media (max-width:640px){.hero{padding:54px 22px 64px}.subscribe{padding:26px 18px}}