/* XOtavo blog — index + post pages. CSP-safe (external, no inline). */
.blogwrap{max-width:1000px;margin:0 auto;padding:0 20px}
.blog-hero{background:#0b1218;color:#eaf3f7;padding:56px 20px 44px;text-align:center}
.blog-hero .eyebrow{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#00C2FF;margin:0 0 8px}
.blog-hero h1{color:#fff;font-size:2.3rem;font-weight:800;letter-spacing:-.02em;margin:0 0 10px}
.blog-hero p{margin:0 auto;max-width:60ch;color:#c3d0d7;font-size:1.05rem}

.postgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding:46px 0 20px}
.pcard{display:flex;flex-direction:column;border:1px solid #e4eaee;border-radius:12px;overflow:hidden;background:#fff;text-decoration:none;color:inherit;transition:transform .18s,box-shadow .18s}
.pcard:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(10,20,30,.10)}
.pcard .thumb{height:96px;background:linear-gradient(120deg,#0b1218,#12303c)}
.pcard .thumb.c-ai{background:linear-gradient(120deg,#0b1218,#0e7490)}
.pcard .thumb.c-adv{background:linear-gradient(120deg,#12303c,#0e7490)}
.pcard .thumb.c-sec{background:linear-gradient(120deg,#0b1218,#7a3ea6)}
.pcard .thumb.c-inf{background:linear-gradient(120deg,#12303c,#b4602a)}
.pcard .pc-body{padding:16px 18px 18px;display:flex;flex-direction:column;flex:1}
.pcard .cat{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#0e7490}
.pcard h2{font-size:1.05rem;font-weight:700;line-height:1.3;margin:6px 0 8px}
.pcard p{font-size:.92rem;color:#4a5865;margin:0 0 12px;flex:1}
.pcard .meta{font-size:.78rem;color:#7f909b}

/* single post */
.post-hero{background:#0b1218;color:#eaf3f7;padding:46px 20px 40px}
.post-hero .inner{max-width:760px;margin:0 auto}
.post-hero .crumb{font-size:12px;color:#8ea3b0;margin:0 0 14px}
.post-hero .crumb a{color:#00C2FF;text-decoration:none}
.post-hero .cat{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#00C2FF}
.post-hero h1{color:#fff;font-size:2.2rem;font-weight:800;letter-spacing:-.02em;line-height:1.12;margin:10px 0 12px}
.post-hero .meta{font-size:.85rem;color:#8ea3b0}
.article{max-width:720px;margin:0 auto;padding:38px 20px 10px}
.article p{font-size:1.06rem;line-height:1.7;color:#1f2c35;margin:0 0 18px}
.article h2{font-size:1.4rem;font-weight:700;letter-spacing:-.01em;margin:30px 0 10px;color:#0a0a0a}
.article .ask{background:#f2f7fa;border-left:4px solid #00C2FF;border-radius:0 8px 8px 0;padding:12px 16px;margin:0 0 18px;font-size:1rem}
.article .ask b{color:#0e7490}
.post-cta{max-width:720px;margin:26px auto 0;background:#0b1218;color:#eaf3f7;border-radius:12px;padding:26px 30px;text-align:center}
.post-cta p{margin:0 0 16px;font-size:1.05rem;color:#e6edf1}
.post-cta .btn{display:inline-block;background:#DC2626;color:#fff;font-weight:700;padding:.85rem 1.8rem;border-radius:8px;text-decoration:none}
.post-cta .btn:hover{background:#B91C1C}
.post-foot{max-width:720px;margin:24px auto 0;padding:16px 20px 0;border-top:1px solid #e4eaee;font-size:.9rem;color:#5b6b76}
.post-foot a{color:#0e7490}

@media(max-width:800px){.postgrid{grid-template-columns:1fr}.blog-hero h1{font-size:1.8rem}.post-hero h1{font-size:1.7rem}}
