*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  --bg:#0F172A;
  --bg-s:#131e30;
  --bg-c:#1a2740;
  --blue:#60A5FA;
  --blue-dim:rgba(96,165,250,.08);
  --btn-bg:#2563EB;
  --btn-hover:#1d4ed8;
  --slate:#94A3B8;
  --text:#F8FAFC;
  --b:rgba(148,163,184,.12);
  --sidebar-w:240px;
  --topnav-h:68px;
  --r:6px;
}

html{font-size:16px;scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:'Inter',system-ui,-apple-system,sans-serif;line-height:1.7;min-height:100vh;-webkit-font-smoothing:antialiased}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;display:block}
p{margin-bottom:1.25rem}

/* ── TOP NAV ── */
.blog-topnav{
  position:fixed;top:0;left:0;right:0;
  height:var(--topnav-h);
  background:var(--bg-s);
  border-bottom:1px solid var(--b);
  display:flex;align-items:center;
  z-index:200;
  overflow:visible;
}
.blog-topnav-logo-wrap{
  display:flex;align-items:center;justify-content:center;
  width:var(--sidebar-w);min-width:var(--sidebar-w);
  height:100%;
  border-right:1px solid var(--b);
  padding:0 16px;
  overflow:visible;
  flex-shrink:0;
  text-decoration:none;
}
.blog-topnav-logo-wrap img{height:90px;width:auto}
.blog-topnav-nav{
  display:flex;align-items:center;
  gap:2px;
  padding:0 20px;
  flex:1;
}
.blog-topnav-nav a{
  color:var(--slate);text-decoration:none;
  font-size:13.5px;font-family:'Chakra Petch',sans-serif;
  letter-spacing:.02em;white-space:nowrap;
  padding:5px 10px;border-radius:4px;
  transition:color .15s;
}
.blog-topnav-nav a:hover{color:var(--text);text-decoration:none}
.blog-topnav-cta{
  margin-left:auto;flex-shrink:0;
  background:var(--btn-bg);color:#fff !important;
  padding:7px 18px;border-radius:var(--r);
  font-size:12.5px !important;font-weight:700;
  font-family:'Chakra Petch',sans-serif;
  letter-spacing:.04em;white-space:nowrap;
  transition:background .15s;
  margin-right:16px;
}
.blog-topnav-cta:hover{background:var(--btn-hover) !important;color:#fff !important;text-decoration:none}
.blog-topnav-toggle{
  display:none;
  align-items:center;justify-content:center;
  width:40px;height:40px;
  background:none;border:1px solid var(--b);border-radius:var(--r);
  color:var(--slate);font-size:20px;cursor:pointer;
  margin-left:auto;margin-right:12px;flex-shrink:0;
}

/* ── SIDEBAR ── */
.blog-sidebar{
  position:fixed;
  top:var(--topnav-h);left:0;
  width:var(--sidebar-w);
  height:calc(100vh - var(--topnav-h));
  background:var(--bg-s);
  border-right:1px solid var(--b);
  display:flex;flex-direction:column;
  overflow:hidden;z-index:100;
  transition:transform .25s cubic-bezier(.4,0,.2,1);
}
.blog-sidebar-top{
  padding:20px 16px 16px;
  border-bottom:1px solid var(--b);flex-shrink:0;
}
.blog-sidebar-heading{
  font-family:'Chakra Petch',sans-serif;
  font-size:10px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:var(--slate);
}
.blog-sidebar-sub{font-size:12px;color:var(--slate);margin-top:3px;opacity:.65}

.blog-sidebar-list{flex:1;overflow-y:auto;padding:8px 0}
.blog-sidebar-list::-webkit-scrollbar{width:4px}
.blog-sidebar-list::-webkit-scrollbar-track{background:transparent}
.blog-sidebar-list::-webkit-scrollbar-thumb{background:var(--b);border-radius:4px}

.blog-sidebar-link{
  display:block;padding:12px 16px;
  text-decoration:none;color:var(--slate);
  border-left:2px solid transparent;transition:all .15s;
}
.blog-sidebar-link:hover{background:var(--blue-dim);color:var(--text);text-decoration:none}
.blog-sidebar-link.active{background:var(--blue-dim);border-left-color:var(--blue)}
.blog-sidebar-link-title{
  display:block;font-size:12.5px;font-weight:500;line-height:1.45;
  margin-bottom:4px;color:inherit;
}
.blog-sidebar-link.active .blog-sidebar-link-title{color:var(--blue)}
.blog-sidebar-link-meta{display:block;font-size:11px;color:var(--slate);opacity:.65}

.blog-sidebar-overlay{
  display:none;position:fixed;inset:0;
  background:rgba(0,0,0,.6);z-index:99;
  backdrop-filter:blur(2px);
}
.blog-sidebar-overlay.open{display:block}

/* ── MAIN ── */
.blog-main{
  margin-left:var(--sidebar-w);
  padding-top:var(--topnav-h);
  min-height:100vh;
  display:flex;flex-direction:column;
}

/* ── ARTICLE ── */
.blog-article{
  max-width:860px;
  margin:0 auto;
  padding:56px 48px 80px;
  flex:1;
  width:100%;
}

/* ── BREADCRUMBS ── */
.blog-breadcrumb{
  display:flex;align-items:center;gap:6px;
  font-size:12px;color:var(--slate);
  margin-bottom:20px;flex-wrap:wrap;
}
.blog-breadcrumb a{color:var(--slate);text-decoration:none;transition:color .15s}
.blog-breadcrumb a:hover{color:var(--blue);text-decoration:none}
.blog-breadcrumb__sep{opacity:.4;font-size:11px}
.blog-breadcrumb__current{color:var(--text);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:300px}
@media(max-width:600px){.blog-breadcrumb__current{max-width:180px}}

/* ── ARTICLE HEADER ── */
.blog-article header{
  margin-bottom:0;
  padding-bottom:28px;
  border-bottom:1px solid var(--b);
}
.blog-eyebrow{
  font-family:'Chakra Petch',sans-serif;
  font-size:10.5px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;
  color:var(--blue);margin-bottom:12px;
}
.blog-article h1{
  font-family:'Chakra Petch',sans-serif;
  font-size:clamp(1.5rem,3vw,2.1rem);
  font-weight:700;line-height:1.22;
  color:var(--text);margin-bottom:14px;
  text-wrap:balance;
}
.blog-meta{
  display:flex;align-items:center;
  gap:0;
  font-size:12.5px;color:var(--slate);
  margin-top:4px;
}
.blog-date{color:var(--slate)}
.blog-read-time{color:var(--slate)}
.blog-read-time::before{content:"·";margin:0 10px;opacity:.5}

/* ── BODY TYPOGRAPHY ── */
.blog-article p{
  color:rgba(248,250,252,.88);
  margin-bottom:1.3em;
  font-size:1rem;
  line-height:1.8;
  margin-top:28px;
}
.blog-article>p:first-of-type{margin-top:28px}
.blog-article ul,.blog-article ol{padding-left:1.5em;margin:.4em 0 1.1em;color:rgba(248,250,252,.88)}
.blog-article li{margin-bottom:.45em;line-height:1.75}
.blog-article ul li::marker{color:var(--blue)}
.blog-article ol{list-style:decimal}
.blog-article ol li::marker{color:var(--slate)}

.blog-article h2{
  font-family:'Chakra Petch',sans-serif;
  font-size:clamp(.85rem,1.6vw,1rem);
  font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:var(--slate);
  margin-top:2.6em;margin-bottom:.9em;
  padding-top:2em;border-top:1px solid var(--b);
}
.blog-article h2:first-of-type{border-top:none;padding-top:0;margin-top:1.8em}

.blog-article h3{
  font-family:'Chakra Petch',sans-serif;
  font-size:.93rem;font-weight:600;
  color:var(--text);margin-top:1.8em;margin-bottom:.5em;
  letter-spacing:.02em;
}
.blog-article strong,.blog-article b{color:var(--text);font-weight:600}
.blog-article a{color:var(--blue)}
.blog-article a:hover{text-decoration:underline}

.blog-article section{margin-bottom:0}

blockquote{
  border-left:3px solid var(--blue);
  background:rgba(96,165,250,.06);
  padding:16px 20px;border-radius:0 var(--r) var(--r) 0;
  font-style:italic;
  margin:2em 0;color:rgba(248,250,252,.88);
}
blockquote p{margin:0;line-height:1.65}

/* ── STAT STRIP ── */
.stat-strip{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:1px;background:var(--b);
  border-radius:var(--r);overflow:hidden;
  margin:2em 0;
}
.stat-item{background:var(--bg-c);padding:20px 18px}
.stat-value{
  font-family:'Chakra Petch',sans-serif;
  font-size:1.75rem;font-weight:700;
  color:var(--text);
  font-variant-numeric:tabular-nums;
  line-height:1;margin-bottom:6px;
}
.stat-label{font-size:12px;color:var(--slate);line-height:1.4}

/* ── TABLE ── */
.table-wrap{overflow-x:auto;margin:1.8em 0;border-radius:10px;border:1px solid var(--b);overflow:hidden}
table{width:100%;border-collapse:collapse;background:var(--bg-s);font-size:.875rem;min-width:400px}
th{
  background:var(--bg-c);padding:11px 16px;
  text-align:left;font-family:'Chakra Petch',sans-serif;
  font-size:.73rem;letter-spacing:.07em;text-transform:uppercase;
  color:var(--slate);font-weight:700;white-space:nowrap;
}
td{
  padding:11px 16px;border-bottom:1px solid var(--b);
  vertical-align:top;line-height:1.5;color:rgba(248,250,252,.85);
}
tr:last-child td{border-bottom:none}
td:first-child{color:var(--text);font-weight:600}
tr:hover td{background:var(--blue-dim)}

/* ── CTA ── */
.blog-cta{
  background:var(--bg-s);border:1px solid var(--b);
  border-radius:12px;padding:32px;
  text-align:center;margin-top:3em;
}
.blog-cta p{color:rgba(248,250,252,.85);margin-bottom:1.2em;font-size:.95rem}
.blog-cta-btn{
  display:inline-block;
  background:var(--btn-bg);color:#fff;
  padding:12px 32px;border-radius:var(--r);
  font-family:'Chakra Petch',sans-serif;
  font-size:.9rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.08em;
  transition:filter .15s;text-decoration:none;
}
.blog-cta-btn:hover{filter:brightness(1.1);text-decoration:none}

.blog-note{
  font-size:.78rem;color:var(--slate);
  margin-top:2em;line-height:1.6;
}

/* ── RELATED GUIDES ── */
.blog-related{margin-top:3em;padding-top:2.5em;border-top:1px solid var(--b)}
.blog-related-heading{
  font-family:'Chakra Petch',sans-serif;
  font-size:.7rem;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;
  color:var(--slate);margin-bottom:1.2em;
}
.blog-related-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
.blog-related-card{
  display:block;
  background:var(--bg-s);border:1px solid var(--b);
  border-radius:var(--r);padding:18px 16px;
  text-decoration:none;transition:border-color .15s,background .15s;
}
.blog-related-card:hover{border-color:var(--blue);background:var(--blue-dim);text-decoration:none}
.blog-related-card-title{
  font-family:'Chakra Petch',sans-serif;
  font-size:.82rem;font-weight:600;
  color:var(--text);line-height:1.4;margin-bottom:6px;
}
.blog-related-card:hover .blog-related-card-title{color:var(--blue)}
.blog-related-card-desc{font-size:.75rem;color:var(--slate);line-height:1.5}

@media(max-width:767px){.blog-related-grid{grid-template-columns:1fr}}
@media(min-width:768px) and (max-width:1024px){.blog-related-grid{grid-template-columns:1fr 1fr}}

/* ── FOOTER ── */
.blog-footer{
  border-top:1px solid var(--b);
  padding:28px 48px;
  display:flex;align-items:center;
  gap:16px;flex-wrap:wrap;
}
.blog-footer-logo img{height:40px;width:auto;opacity:.7}
.blog-footer-links{display:flex;gap:16px;flex-wrap:wrap;align-items:center}
.blog-footer-links a{font-size:12px;color:var(--slate);text-decoration:none;transition:color .15s}
.blog-footer-links a:hover{color:var(--text);text-decoration:none}
.blog-footer-copy{margin-left:auto;font-size:11px;color:rgba(148,163,184,.5)}

/* ── MOBILE ── */
@media(max-width:767px){
  :root{--topnav-h:60px;--sidebar-w:280px}

  .blog-topnav-nav{display:none}
  .blog-topnav-toggle{display:flex}
  .blog-topnav-logo-wrap{width:auto;min-width:auto;border-right:none;padding:0 0 0 14px}
  .blog-topnav-logo-wrap img{height:70px}

  .blog-sidebar{transform:translateX(-100%)}
  .blog-sidebar.open{transform:translateX(0)}

  .blog-main{margin-left:0}
  .blog-article{padding:32px 20px 60px;max-width:100%}

  .blog-article h1{font-size:1.45rem}

  .stat-strip{grid-template-columns:1fr 1fr}
  .stat-strip .stat-item:last-child{grid-column:span 2}

  .blog-footer{padding:24px 20px;flex-direction:column;align-items:flex-start;gap:10px}
  .blog-footer-copy{margin-left:0}
}

@media(max-width:480px){
  .stat-strip{grid-template-columns:1fr}
  .stat-strip .stat-item:last-child{grid-column:auto}
}
