:root{
  --bg:#15110d; --bg-elevated:#1f1812; --bg-card:#241c15; --line:#3a2e22;
  --ember:#ff5a1f; --ember-deep:#b53616; --spark:#ffc857;
  --text:#ede6dc; --text-dim:#b3a898;
  --display:'Oswald',sans-serif; --body:'Source Serif 4',serif; --mono:'JetBrains Mono',monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--text);font-family:var(--body);font-size:18px;line-height:1.75;-webkit-text-size-adjust:100%}
a{color:var(--spark)}
h1,h2,h3{font-family:var(--display);text-transform:uppercase;font-weight:600;letter-spacing:.02em;line-height:1.1}
.wrap{max-width:720px;margin:0 auto;padding:0 24px}
nav.top{border-bottom:1px solid var(--line);background:var(--bg)}
nav.top .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 24px;flex-wrap:wrap}
.brand{font-family:var(--display);font-size:1rem;text-transform:uppercase;letter-spacing:.08em;text-decoration:none;color:var(--text)}
.brand span{color:var(--ember)}
nav.top .links{display:flex;gap:22px;font-family:var(--display);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}
nav.top .links a{color:var(--text-dim);text-decoration:none}
nav.top .links a:hover{color:var(--spark)}
.eyebrow{font-family:var(--mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ember);display:flex;align-items:center;gap:10px;margin-bottom:16px}
.eyebrow::before{content:"";width:22px;height:1px;background:var(--ember);flex:none}
article{padding:56px 0 20px}
article h1{font-size:clamp(2rem,7vw,3.2rem);margin-bottom:18px}
.meta{font-family:var(--mono);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);margin-bottom:34px}
.verse{
  background:var(--bg-card);border-left:3px solid var(--ember);
  padding:22px 24px;margin:0 0 36px;font-style:italic;font-size:1.1rem;color:var(--spark);
}
.content p{margin-bottom:22px;color:var(--text-dim)}
.content p:first-of-type{color:var(--text);font-size:1.1rem}
.content strong{color:var(--text)}
.content h2,.content h3{color:var(--text);margin:36px 0 14px;font-size:1.3rem}
.cta{
  margin:52px 0 0;padding:32px;background:var(--bg-elevated);
  border:1px solid var(--line);border-top:3px solid var(--ember);
}
.cta h2{font-size:1.4rem;margin-bottom:12px}
.cta p{color:var(--text-dim);margin-bottom:20px}
.btnrow{display:flex;gap:12px;flex-wrap:wrap}
.btn{
  font-family:var(--display);font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;
  padding:15px 26px 17px;text-decoration:none;border:1px solid transparent;display:inline-block;
  clip-path:polygon(7% 0%,93% 0%,100% 28%,100% 100%,0% 100%,0% 28%);
}
.btn-primary{background:var(--ember);color:#160f0a;font-weight:600}
.btn-primary:hover{background:var(--spark)}
.btn-ghost{border-color:var(--line);color:var(--text);background:var(--bg-card)}
.btn-ghost:hover{border-color:var(--ember);color:var(--spark)}
.prevnext{display:flex;justify-content:space-between;gap:20px;margin:48px 0 0;padding-top:26px;border-top:1px solid var(--line);flex-wrap:wrap}
.prevnext a{font-family:var(--display);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;color:var(--text-dim);max-width:46%}
.prevnext a:hover{color:var(--spark)}
.prevnext small{display:block;font-family:var(--mono);font-size:.65rem;color:var(--ember);margin-bottom:4px}
.list{padding:56px 0}
.list h1{font-size:clamp(2rem,7vw,3rem);margin-bottom:14px}
.list .lede{color:var(--text-dim);margin-bottom:44px;max-width:56ch}
.card{
  display:block;text-decoration:none;color:inherit;
  background:var(--bg-card);border:1px solid var(--line);padding:26px 28px;margin-bottom:16px;
  transition:border-color .2s,transform .12s ease;
}
.card:hover{border-color:var(--ember);transform:translateY(-2px)}
.card h2{font-size:1.35rem;color:var(--text);margin-bottom:8px}
.card .meta{margin-bottom:10px}
.card p{color:var(--text-dim);font-size:1rem;line-height:1.6}
footer.site{border-top:1px solid var(--line);margin-top:64px;padding:34px 0 60px;color:var(--text-dim);font-size:.95rem}
footer.site a{color:var(--text-dim)}
@media (max-width:600px){nav.top .links{gap:16px;font-size:.72rem}}
/* Reflection / Prayer / Challenge blocks */
.devo-sub{
  background:var(--bg-elevated);border:1px solid var(--line);
  border-left:3px solid var(--spark);padding:20px 22px;margin:26px 0;
}
.devo-sub-label{
  display:block;font-family:var(--mono);font-size:.7rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--spark);margin-bottom:10px;
}
.devo-sub p{margin:0;color:var(--text-dim)}
.devo-tagline{
  font-family:var(--display);text-transform:uppercase;letter-spacing:.12em;
  font-size:1rem;color:var(--ember);margin:34px 0 0;text-align:center;
}
