:root { font-family: Inter, ui-sans-serif, system-ui, sans-serif; color: #17212b; background: #f5f7f8; }
* { box-sizing: border-box; }
body { margin: 0; }
.preview-banner { position: sticky; top: 0; z-index: 5; background: #fff3cd; color: #6c5200; padding: .7rem 1rem; text-align: center; font-size: .8rem; font-weight: 800; }
main { width: min(100% - 2rem, 76rem); margin: 0 auto; padding: 3rem 0 6rem; }
.article-header { max-width: 58rem; margin: 0 auto 3rem; text-align: center; }
.article-header > p { color: #0d7ce8; font-size: .78rem; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
h1 { margin: .8rem 0 1rem; font-size: clamp(2.5rem,7vw,5.4rem); line-height: 1.02; }
.excerpt { color: #66727d; font-size: 1.15rem; line-height: 1.8; }
article { max-width: 52rem; margin: auto; border-radius: 1.5rem; background: white; padding: clamp(1.2rem,5vw,4rem); box-shadow: 0 20px 60px rgba(23,33,43,.08); }
article p, article li { color: #4e5a65; font-size: 1.05rem; line-height: 1.9; }
article h2 { margin: 2.8rem 0 1rem; font-size: 2rem; }
article h3 { margin: 2.2rem 0 .8rem; font-size: 1.5rem; }
article a { color: #075eb8; }
figure { margin: 2rem 0; }
figure img { width: 100%; border-radius: 1rem; }
figcaption { margin-top: .6rem; color: #68747e; font-size: .82rem; text-align: center; }
blockquote { margin: 2rem 0; border-left: 5px solid #0d7ce8; background: #edf7ff; padding: 1.4rem; font-size: 1.35rem; line-height: 1.6; }
blockquote cite { display: block; margin-top: .6rem; color: #63707b; font-size: .8rem; }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; }
th, td { border: 1px solid #dbe2e8; padding: .75rem; text-align: left; }
th { background: #edf7ff; }
.cta { margin: 2rem 0; border-radius: 1.2rem; background: #092f57; color: white; padding: 2rem; }
.cta h2 { margin-top: 0; }
.cta p { color: rgba(255,255,255,.8); }
.cta a { display: inline-flex; border-radius: .7rem; background: #0d7ce8; color: white; padding: .8rem 1rem; text-decoration: none; font-weight: 800; }
hr { margin: 2.5rem 0; border: 0; border-top: 1px solid #dbe2e8; }
