/* Cognify Labs — blog stylesheet. Shared across /blog/index.html and every post.
   Tokens mirror ../index.html's inline <style> so the blog reads as one brand. */
:root{
  --royal:#1E40AF;
  --royal-2:#2B54D4;
  --navy:#0B1E4D;
  --navy-deep:#071233;
  --blue-bright:#4F7BFF;
  --sky:#AFC6FF;
  --sky-soft:#E7EEFF;
  --paper:#FFFFFF;
  --tint:#F3F6FF;
  --ink:#0B1740;
  --muted:#5B6B8C;
  --line:#DEE6F7;
  --line-dk:#1C3270;
  --display:"Bricolage Grotesque",system-ui,sans-serif;
  --body:"Inter",system-ui,sans-serif;
  --mono:"JetBrains Mono",ui-monospace,monospace;
  --maxw:1120px;
  --readw:720px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--paper);color:var(--ink);
  font-family:var(--body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;}
a{color:inherit;text-decoration:none;}
h1,h2,h3{font-family:var(--display);font-weight:600;line-height:1.1;margin:0;letter-spacing:-0.02em;}
p{margin:0;}
img{display:block;max-width:100%;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px;}
.eyebrow{font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:0.14em;
  text-transform:uppercase;color:var(--royal-2);}
.btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--body);font-weight:600;
  font-size:15px;padding:13px 22px;border-radius:100px;border:1px solid transparent;cursor:pointer;
  transition:transform .18s ease, background .18s ease, box-shadow .18s ease, border-color .18s ease;}
.btn-primary{background:var(--royal);color:#fff;box-shadow:0 1px 0 rgba(0,0,0,.05);}
.btn-primary:hover{background:var(--royal-2);transform:translateY(-2px);box-shadow:0 12px 26px -12px rgba(30,64,175,.6);}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line);}
.btn-ghost:hover{border-color:var(--royal);transform:translateY(-2px);}
.btn-on-dark{background:var(--blue-bright);color:#fff;}
.btn-on-dark:hover{transform:translateY(-2px);box-shadow:0 12px 30px -14px rgba(79,123,255,.7);}
.btn-ghost-dark{background:transparent;color:#EAF0FF;border-color:var(--line-dk);}
.btn-ghost-dark:hover{border-color:var(--sky);transform:translateY(-2px);}
.arrow{font-family:var(--mono);font-weight:600;}
:focus-visible{outline:2px solid var(--blue-bright);outline-offset:3px;border-radius:4px;}

/* NAV */
header.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);
  backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:70px;}
.brand{display:flex;align-items:center;gap:12px;}
.brand img{height:44px;width:auto;}
.nav-links{display:flex;gap:30px;align-items:center;}
.nav-links a{font-size:14.5px;color:var(--muted);font-weight:500;}
.nav-links a:hover,.nav-links a.on{color:var(--ink);}
.menu-links{display:flex;gap:30px;align-items:center;}
@media(max-width:860px){.menu-links{display:none;}}

/* BREADCRUMB */
.crumb{padding:22px 0 0;font-family:var(--mono);font-size:12.5px;color:var(--muted);letter-spacing:.02em;}
.crumb a{color:var(--royal-2);}
.crumb a:hover{text-decoration:underline;}

/* POST HEAD */
.post-head{padding:22px 0 0;max-width:calc(var(--readw) + 48px);}
.post-head h1{font-size:clamp(30px,4.6vw,46px);margin-top:14px;}
.post-dek{margin-top:16px;font-size:19px;color:var(--muted);max-width:66ch;}
.post-meta{margin-top:22px;display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;
  font-family:var(--mono);font-size:12.5px;color:var(--muted);}
.post-meta .dot{opacity:.5;}
.tag-row{margin-top:16px;display:flex;gap:8px;flex-wrap:wrap;}
.tag-pill{font-family:var(--mono);font-size:11px;font-weight:500;padding:5px 12px;border-radius:100px;
  background:var(--sky-soft);color:var(--royal);letter-spacing:.02em;}

/* HERO BANNER */
.post-hero{position:relative;overflow:hidden;background:
  radial-gradient(1200px 500px at 80% -10%, rgba(79,123,255,.35), transparent 60%),
  linear-gradient(160deg, var(--navy) 0%, var(--navy-deep) 100%);
  max-width:var(--maxw);margin:28px auto 0;padding:0 24px;
  border-radius:20px;}
.post-hero::before{content:"";position:absolute;inset:0;opacity:.5;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:40px 40px;}
.post-hero svg{position:relative;display:block;width:100%;height:auto;max-height:360px;}
.index-hero svg{max-height:220px;}

/* PROSE */
main{padding-bottom:20px;}
.prose{max-width:var(--readw);margin:0 auto;padding:48px 24px 0;}
.prose > * + *{margin-top:20px;}
.prose h2{font-size:clamp(22px,3vw,28px);margin-top:44px;}
.prose h3{font-size:19px;margin-top:32px;}
.prose p{color:var(--ink);font-size:17px;line-height:1.75;}
.prose ul,.prose ol{color:var(--ink);font-size:17px;line-height:1.75;padding-left:22px;}
.prose li + li{margin-top:8px;}
.prose strong{font-weight:600;}
.prose blockquote{margin:0;padding:18px 22px;background:var(--tint);border-left:3px solid var(--royal-2);
  border-radius:0 12px 12px 0;font-size:16.5px;color:var(--ink);}
.prose blockquote p{color:inherit;}
.prose a{color:var(--royal-2);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px;}
.prose a:hover{text-decoration-color:var(--royal-2);}
.prose .lede{font-size:19.5px;color:var(--muted);line-height:1.65;}
.prose hr{border:none;border-top:1px solid var(--line);margin:36px 0;}
.prose table{width:100%;border-collapse:collapse;font-size:15px;}
.prose th,.prose td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--line);}
.prose th{font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);}

/* CTA BLOCK */
.post-cta{max-width:var(--readw);margin:48px auto 0;padding:0 24px;}
.post-cta-in{background:var(--navy-deep);border-radius:20px;padding:32px 30px;color:#EAF0FF;position:relative;overflow:hidden;}
.post-cta-in::before{content:"";position:absolute;inset:0;opacity:.6;
  background:radial-gradient(600px 260px at 90% -20%, rgba(79,123,255,.4), transparent 60%);}
.post-cta-in > *{position:relative;}
.post-cta-in h3{color:#fff;font-size:22px;}
.post-cta-in p{color:#BCCcEB;margin-top:10px;font-size:15.5px;}
.post-cta-in .cta-row{margin-top:18px;display:flex;gap:12px;flex-wrap:wrap;}

/* SOURCES */
.sources{max-width:var(--readw);margin:36px auto 0;padding:0 24px;}
.sources h2{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;color:var(--muted);margin:0;}
.sources ol{margin-top:12px;padding-left:20px;color:var(--muted);font-size:14px;line-height:1.7;}
.sources li + li{margin-top:6px;}
.sources a{color:var(--royal-2);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px;}
.sources a:hover{text-decoration-color:var(--royal-2);}

/* AUTHOR CARD */
.author-card{max-width:var(--readw);margin:40px auto 0;padding:0 24px;}
.author-in{display:flex;gap:14px;align-items:center;border-top:1px solid var(--line);padding-top:24px;}
.author-in img{width:52px;height:52px;border-radius:50%;border:1px solid var(--line);}
.author-in b{font-family:var(--display);font-size:15px;}
.author-in span{display:block;color:var(--muted);font-size:13.5px;margin-top:2px;}

/* RELATED */
.related{background:var(--tint);margin-top:52px;padding:46px 0;}
.related h2{font-size:22px;}
.related-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:22px;}
@media(max-width:700px){.related-grid{grid-template-columns:1fr;}}
.related-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px 22px;transition:border-color .18s ease, transform .18s ease;}
.related-card:hover{border-color:var(--royal);transform:translateY(-2px);}
.related-card .k{font-family:var(--mono);font-size:10.5px;color:var(--royal-2);letter-spacing:.06em;text-transform:uppercase;}
.related-card h3{font-size:16.5px;margin-top:8px;}
.related-card p{color:var(--muted);font-size:14px;margin-top:8px;}

/* BLOG INDEX */
.blog-head{padding:52px 0 0;}
.blog-head h1{font-size:clamp(32px,5vw,48px);margin-top:14px;}
.blog-head p{margin-top:16px;color:var(--muted);font-size:18px;max-width:60ch;}
.post-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;padding:44px 0 72px;}
@media(max-width:760px){.post-grid{grid-template-columns:1fr;}}
.post-card{display:block;border:1px solid var(--line);border-radius:18px;overflow:hidden;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;background:#fff;}
.post-card:hover{transform:translateY(-4px);box-shadow:0 24px 48px -30px rgba(30,64,175,.35);border-color:var(--royal);}
.post-card .thumb{position:relative;overflow:hidden;background:
  radial-gradient(700px 300px at 80% -10%, rgba(79,123,255,.35), transparent 60%),
  linear-gradient(160deg, var(--navy) 0%, var(--navy-deep) 100%);}
.post-card .thumb::before{content:"";position:absolute;inset:0;opacity:.5;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:32px 32px;}
.post-card .thumb svg{position:relative;display:block;width:100%;height:auto;max-height:160px;}
.post-card .pc-body{padding:22px 22px 24px;}
.post-card .eyebrow{font-size:11px;}
.post-card h2{font-size:19.5px;margin-top:10px;}
.post-card p{color:var(--muted);font-size:14.5px;margin-top:10px;}
.post-card .pc-meta{margin-top:14px;font-family:var(--mono);font-size:11.5px;color:var(--muted);}
.post-card.featured{grid-column:1 / -1;}
.post-card.featured .thumb svg{max-height:220px;}

/* FOOTER (mirrors ../index.html) */
footer{background:#fff;border-top:1px solid var(--line);padding:44px 0 40px;}
.foot-in{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;align-items:center;}
.foot-in img{height:42px;width:auto;}
.foot-in p{font-size:13.5px;color:var(--muted);margin-top:10px;}
.foot-links{display:flex;gap:22px;font-size:14px;color:var(--muted);flex-wrap:wrap;}
.foot-links a:hover{color:var(--ink);}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
}
