:root{
  --navy:#050B1A;
  --navy-2:#0A1630;
  --navy-3:#0F1D40;
  --blue:#1546E0;
  --blue-bright:#2F7BFF;
  --sky:#8FBBFF;
  --ice:#F5F8FF;
  --gold:#FFC93C;
  --slate:#8996B8;
  --paper:#EEF1F8;
  --ink:#0B1229;
  --ink-soft:#4A5578;
  --line: rgba(255,255,255,0.10);
  --line-dark: rgba(11,18,41,0.10);
}
*{box-sizing:border-box;}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:'Manrope',sans-serif;-webkit-font-smoothing:antialiased;
}
h1,h2,h3,.display{
  font-family:'Big Shoulders Display',sans-serif;font-weight:900;
  text-transform:uppercase;letter-spacing:0.01em;margin:0;
}
.eyebrow{
  font-family:'IBM Plex Mono',monospace;font-size:12px;font-weight:600;
  letter-spacing:0.18em;text-transform:uppercase;
}
a{color:inherit;text-decoration:none;}
img{display:block;max-width:100%;}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px;}

/* ---------- Nav ---------- */
.site-nav{
  position:sticky;top:0;z-index:50;background:rgba(5,11,26,0.9);
  backdrop-filter:blur(10px);border-bottom:1px solid var(--line);
}
.nav-inner{padding:16px 28px;display:flex;align-items:center;justify-content:space-between;}
.brand{display:flex;align-items:center;gap:10px;color:var(--ice);}
.brand .display{font-size:18px;letter-spacing:0.03em;}
.nav-links{display:flex;gap:26px;}
.nav-links a{color:var(--slate);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:0.06em;}
.nav-links a:hover,.nav-links a.active{color:var(--ice);}

/* ---------- Blog hero ---------- */
.blog-hero{
  background:radial-gradient(120% 90% at 20% -10%, var(--navy-3) 0%, var(--navy) 55%);
  color:var(--ice);padding:70px 0 56px;
}
.blog-hero .eyebrow{color:var(--sky);margin-bottom:16px;}
.blog-hero h1{font-size:clamp(38px,6vw,64px);line-height:0.92;}
.blog-hero p{margin-top:16px;color:var(--slate);font-size:15px;max-width:480px;}

/* ---------- Grid & cards ---------- */
.blog-main{padding:56px 0 90px;}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.blog-card{
  background:#fff;border:1px solid var(--line-dark);border-radius:14px;overflow:hidden;
  display:flex;flex-direction:column;transition:transform .2s, box-shadow .2s;
}
.blog-card:hover{transform:translateY(-3px);box-shadow:0 16px 32px -18px rgba(11,18,41,0.25);}
.blog-card-img{height:160px;background-size:cover;background-position:center;background-color:var(--navy-3);}
.blog-card-body{padding:20px 20px 22px;}
.blog-card-meta{
  font-family:'IBM Plex Mono',monospace;font-size:10.5px;color:var(--ink-soft);
  letter-spacing:0.04em;margin-bottom:10px;text-transform:uppercase;
}
.blog-card h2{font-size:19px;line-height:1.08;color:var(--ink);margin-bottom:10px;}
.blog-card p{font-size:13.5px;line-height:1.6;color:var(--ink-soft);margin:0;}

.empty-state{
  padding:60px 20px;text-align:center;color:var(--ink-soft);
  background:#fff;border:1px dashed var(--line-dark);border-radius:14px;
}

.pagination{display:flex;gap:8px;justify-content:center;margin-top:44px;}
.pagination a{
  padding:9px 15px;border:1px solid var(--line-dark);border-radius:6px;
  font-size:13px;font-weight:600;color:var(--ink-soft);background:#fff;
}
.pagination a.active{background:var(--blue);border-color:var(--blue);color:#fff;}

/* ---------- Single post ---------- */
.post-article{padding:56px 0 20px;}
.post-wrap{max-width:760px;}
.post-eyebrow{margin-bottom:22px;}
.post-eyebrow a{
  font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--blue);
  font-weight:600;letter-spacing:0.04em;
}
.post-article h1{
  font-size:clamp(32px,5vw,48px);line-height:1.02;color:var(--ink);
}
.post-meta{
  margin-top:16px;display:flex;gap:8px;flex-wrap:wrap;
  font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--ink-soft);
}
.post-cover{
  width:100%;border-radius:14px;margin-top:28px;max-height:420px;object-fit:cover;
}
.post-content{
  margin-top:32px;font-size:16.5px;line-height:1.85;color:var(--ink);
}
.post-content p{margin:0 0 20px;}
.post-content h2{
  font-family:'Manrope',sans-serif;text-transform:none;font-weight:800;
  font-size:24px;margin:36px 0 14px;letter-spacing:0;
}
.post-content h3{
  font-family:'Manrope',sans-serif;text-transform:none;font-weight:800;
  font-size:19px;margin:28px 0 12px;letter-spacing:0;
}
.post-content a{color:var(--blue);text-decoration:underline;}
.post-content ul,.post-content ol{margin:0 0 20px;padding-left:22px;}
.post-content img{border-radius:10px;margin:24px 0;}

.related-section{padding:20px 0 80px;}
.related-heading{font-size:22px;color:var(--ink);margin-bottom:22px;}

/* ---------- Footer ---------- */
.site-footer{background:var(--navy);color:var(--slate);border-top:1px solid var(--line);padding:40px 0;}
.footer-brand{color:var(--ice);font-family:'Big Shoulders Display',sans-serif;font-weight:800;font-size:18px;text-transform:uppercase;margin-bottom:10px;}
.footer-disclaimer{font-size:12.5px;line-height:1.7;max-width:600px;}
.footer-disclaimer strong{color:var(--sky);}

@media (max-width:860px){
  .nav-links{display:none;}
  .blog-grid{grid-template-columns:1fr;}
}