/* Shared by every TextProof writing page. Same palette and type as the front page. */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --paper:#fbfbfd;--raised:#fff;--ink:#131a24;--ink-soft:#3f4a58;--muted:#727d8b;
  --rule:#dfe3ea;--rule-soft:#edeff4;--blue:#1a5fb4;--blue-wash:#eef3fb;
  --green:#1e7a46;--green-wash:#edf6f1;--amber:#8a6410;--amber-wash:#fbf5e6;
  --night:#0d1420;
}
body{
  background:var(--paper);color:var(--ink);
  font-family:"IBM Plex Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:17.5px;line-height:1.68;-webkit-font-smoothing:antialiased;
}
a{color:var(--blue)}
nav{background:rgba(251,251,253,.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--rule);position:sticky;top:0;z-index:50}
.nav-in{max-width:60rem;margin:0 auto;padding:.85rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.logo{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--ink)}
.logo-mark{width:30px;height:30px;border-radius:7px;background:linear-gradient(160deg,#2b74d0,#134a92);display:grid;place-items:center;flex:none}
.logo-mark svg{width:17px;height:17px}
.logo-word{font-family:Newsreader,Georgia,serif;font-weight:600;font-size:1.2rem;letter-spacing:-.01em}
.nav-links{display:flex;gap:1.4rem;list-style:none}
.nav-links a{color:var(--muted);text-decoration:none;font-size:.9rem}
.nav-links a:hover{color:var(--ink)}
article{max-width:40rem;margin:0 auto;padding:4rem 1.5rem 5rem}
.tag{font-family:"IBM Plex Mono",monospace;font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:var(--blue)}
h1{font-family:Newsreader,Georgia,serif;font-weight:600;font-size:clamp(2.1rem,5.5vw,3rem);line-height:1.1;letter-spacing:-.02em;margin:.9rem 0 .8rem;text-wrap:balance}
.byline{font-family:"IBM Plex Mono",monospace;font-size:.78rem;color:var(--muted);margin-bottom:2.5rem}
.standfirst{font-family:Newsreader,Georgia,serif;font-size:1.3rem;line-height:1.5;color:var(--ink-soft);margin-bottom:2.2rem;text-wrap:pretty}
h2{font-family:Newsreader,Georgia,serif;font-weight:600;font-size:1.65rem;line-height:1.2;letter-spacing:-.01em;margin:2.8rem 0 .6rem;text-wrap:balance}
p{margin-bottom:1.15rem;text-wrap:pretty}
strong{font-weight:600}
blockquote{font-family:Newsreader,Georgia,serif;font-style:italic;font-size:1.12rem;color:var(--ink-soft);border-left:2px solid var(--rule);padding-left:1.2rem;margin:1.6rem 0}
ul{margin:0 0 1.15rem 1.2rem}
li{margin-bottom:.5rem}
.pull{background:var(--blue-wash);border-left:3px solid var(--blue);padding:1.1rem 1.3rem;border-radius:0 8px 8px 0;margin:1.8rem 0}
.pull p:last-child{margin-bottom:0}
.pull b{display:block;margin-bottom:.3rem}
code{font-family:"IBM Plex Mono",monospace;font-size:.86em;background:var(--rule-soft);padding:.12rem .38rem;border-radius:4px}
.end{margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--rule);color:var(--muted);font-size:.92rem}
.end a{font-weight:600}
footer{background:var(--raised);border-top:1px solid var(--rule);padding:2.5rem 0;color:var(--muted);font-size:.88rem}
.foot-in{max-width:60rem;margin:0 auto;padding:0 1.5rem;display:flex;flex-wrap:wrap;gap:1.4rem;justify-content:space-between}
.foot-links{display:flex;flex-wrap:wrap;gap:1.3rem;list-style:none}
.foot-links a{color:var(--muted);text-decoration:none}
.foot-links a:hover{color:var(--ink)}
