:root { --ink:#19332e; --teal:#277a6f; --teal-dark:#14594f; --pale:#eef7f5; --paper:#fffdf9; --muted:#5a6b66; --border:#d7e6e1; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font:17px/1.7 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
a { color:var(--teal-dark); }
.site-nav { max-width:900px; margin:auto; padding:18px 24px; display:flex; justify-content:space-between; gap:18px; font-size:.94rem; }
.site-nav a { text-decoration:none; font-weight:700; }
.site-nav .muted-link { font-weight:500; }
article { max-width:760px; margin:0 auto; padding:42px 24px 70px; }
.kicker { color:var(--teal); font-size:.84rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; margin:0 0 10px; }
h1,h2,h3 { line-height:1.18; letter-spacing:-.02em; }
h1 { font-size:clamp(2.15rem,6vw,3.7rem); margin:0 0 18px; }
h2 { font-size:1.7rem; margin:48px 0 12px; }
h3 { font-size:1.12rem; margin:22px 0 6px; }
.dek { font-size:1.18rem; color:var(--muted); margin:0 0 22px; }
.byline { font-size:.9rem; color:var(--muted); border-bottom:1px solid var(--border); padding-bottom:22px; margin-bottom:28px; }
p,li { max-width:720px; } ul,ol { padding-left:1.35rem; } li + li { margin-top:8px; }
.callout { margin:28px 0; padding:20px 22px; border-left:4px solid var(--teal); background:var(--pale); border-radius:0 9px 9px 0; }
.callout p { margin:0; }.callout strong { display:block; margin-bottom:4px; }
.steps { padding:24px 26px 24px 44px; border:1px solid var(--border); border-radius:12px; background:#fff; }
.related { margin-top:46px; padding:22px; background:var(--pale); border-radius:12px; }
.related h2 { margin:0 0 8px; font-size:1.3rem; }.related ul { margin:8px 0 0; }
.references { font-size:.92rem; color:var(--muted); }.references li { margin-bottom:8px; }
.disclaimer { margin-top:32px; padding:18px 20px; border:1px solid #ecd8b4; background:#fff8ea; border-radius:9px; font-size:.93rem; }
footer { max-width:900px; margin:auto; padding:24px; border-top:1px solid var(--border); font-size:.9rem; color:var(--muted); }
@media (max-width:600px) { .site-nav { padding:15px 18px; } article { padding:28px 18px 56px; } }
