/* ── Shared reader-page styles for charlespetersmith.com ── */
*{box-sizing:border-box;margin:0;padding:0;}
:root{
  --cream:#F5F1E8;
  --ink:#141414;
  --cobalt:#1B4FBF;
  --gold:#B8962E;
  --gold-light:#EDE4C8;
  --border:rgba(0,0,0,0.09);
  --muted:#666;
}
html,body{overflow-x:hidden;}
body{font-family:'Red Hat Text',sans-serif;background:var(--cream);color:var(--ink);min-height:100vh;cursor:none;}

/* ── CURSOR ── */
#cur-dot{width:10px;height:10px;background:var(--cobalt);border-radius:50%;position:fixed;top:0;left:0;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:width .15s,height .15s,background .2s;}
#cur-ring{width:40px;height:40px;border:2px solid var(--cobalt);border-radius:50%;position:fixed;top:0;left:0;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);opacity:.4;transition:width .2s,height .2s,border-color .2s,opacity .2s,border-width .2s;}
body.on-hover #cur-dot{width:20px;height:20px;background:var(--gold);}
body.on-hover #cur-ring{width:60px;height:60px;border-color:var(--gold);opacity:.6;border-width:3px;}
@media (hover:none){body{cursor:auto;}#cur-dot,#cur-ring{display:none;}}

/* ── NAV ── */
.cps-nav{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 2.5rem;border-bottom:.5px solid var(--border);background:var(--cream);position:sticky;top:0;z-index:100;}
.cps-logo{font-family:'Red Hat Display',sans-serif;font-size:15px;font-weight:700;letter-spacing:.01em;text-decoration:none;color:var(--ink);}
.cps-nav ul{display:flex;gap:2rem;list-style:none;}
.cps-nav a{font-size:12px;font-weight:500;color:#888;text-decoration:none;letter-spacing:.08em;text-transform:uppercase;transition:color .2s;}
.cps-nav a:hover{color:var(--ink);}
.cps-nav a.active{color:var(--cobalt);}

/* ── ARTICLE ── */
.article{max-width:720px;margin:0 auto;padding:4rem 2.5rem 2rem;}
.art-back{display:inline-block;font-family:'Red Hat Display',sans-serif;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--cobalt);text-decoration:none;margin-bottom:2.5rem;transition:transform .2s;}
.art-back:hover{transform:translateX(-3px);}
.art-tag{font-family:'Red Hat Display',sans-serif;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem;}
.art-title{font-family:'Red Hat Display',sans-serif;font-size:clamp(2rem,5vw,3rem);font-weight:700;line-height:1.08;letter-spacing:-.02em;color:var(--ink);margin-bottom:.9rem;}
.art-meta{font-size:14px;font-weight:300;color:#999;padding-bottom:2.25rem;margin-bottom:2.75rem;border-bottom:.5px solid var(--border);}
.art-meta em{font-style:italic;color:var(--cobalt);}

.art-body{font-size:18px;font-weight:300;line-height:1.85;color:#2b2b2b;}
.art-body p{margin-bottom:1.4rem;}
.art-body p.center{text-align:center;color:#bbb;letter-spacing:.3em;margin:2rem 0;}
.art-body h2{font-family:'Red Hat Display',sans-serif;font-size:1.55rem;font-weight:700;letter-spacing:-.01em;color:var(--ink);margin:3rem 0 1.2rem;line-height:1.2;}
.art-body h3{font-family:'Red Hat Display',sans-serif;font-size:1.2rem;font-weight:700;color:var(--ink);margin:2.2rem 0 1rem;}
.art-body .dropcap:first-letter{font-family:'Red Hat Display',sans-serif;font-weight:700;font-size:3.4rem;line-height:.8;float:left;padding:.35rem .6rem .2rem 0;color:var(--cobalt);}
.art-body blockquote{border-left:2px solid var(--gold);padding-left:1.4rem;margin:1.8rem 0;font-style:italic;color:#555;}
.art-rule{border:none;border-top:.5px solid var(--border);margin:3.5rem auto;width:60px;border-top-width:2px;border-color:var(--gold);}

/* ── SERIES NAV ── */
.series-nav{max-width:720px;margin:2rem auto 0;padding:2rem 2.5rem 0;border-top:.5px solid var(--border);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;}
.series-nav a{font-family:'Red Hat Display',sans-serif;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--cobalt);text-decoration:none;transition:color .2s;}
.series-nav a:hover{color:var(--ink);}

/* ── FOOTER ── */
.cps-sep{border:none;border-top:.5px solid var(--border);margin-top:3rem;}
.cps-footer{border-top:.5px solid var(--border);padding:1.75rem 2.5rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;}
.cps-footer-name{font-family:'Red Hat Display',sans-serif;font-size:13px;font-weight:300;color:#bbb;letter-spacing:.04em;}
.cps-footer ul{display:flex;gap:1.5rem;list-style:none;}
.cps-footer a{font-size:11px;font-weight:500;color:#bbb;text-decoration:none;letter-spacing:.08em;text-transform:uppercase;transition:color .2s;}
.cps-footer a:hover{color:var(--ink);}

/* ── REVEALS ── */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease;}
.reveal.vis{opacity:1;transform:translateY(0);}

@media(max-width:640px){
  .cps-nav{padding:1rem 1.25rem;}
  .cps-nav ul{gap:1.1rem;}
  .article{padding:2.5rem 1.25rem 1.5rem;}
  .art-body{font-size:17px;}
}

/* ── CONTINUE / FULL-READ PANEL ── */
.continue-wrap{max-width:720px;margin:1rem auto 0;padding:0 2.5rem;}
.continue-card{background:var(--ink);border-radius:4px;padding:2.25rem 2.25rem 2rem;}
.cc-label{font-family:'Red Hat Display',sans-serif;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:.7rem;}
.cc-title{font-family:'Red Hat Display',sans-serif;font-size:22px;font-weight:700;line-height:1.2;color:var(--cream);letter-spacing:-.01em;margin-bottom:.6rem;}
.cc-sub{font-size:14px;font-weight:300;line-height:1.7;color:#9a9a9a;margin-bottom:1.4rem;}
.cc-btn{display:inline-block;font-family:'Red Hat Display',sans-serif;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;background:var(--cobalt);color:#fff;padding:11px 20px;border-radius:2px;text-decoration:none;transition:background .2s,transform .15s;}
.cc-btn:hover{background:#1440A0;transform:translateY(-1px);}
@media(max-width:640px){.continue-wrap{padding:0 1.25rem;}.continue-card{padding:1.75rem 1.5rem;}}
