/* TEKTHRILL blog (added 2026-10-25) */
.post-hero .page-title { font-size: clamp(1.9rem, 4.6vw, 3.1rem); }
.post-meta { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 18px; color: var(--text-dim); font-size: 0.95rem; margin: -6px 0 6px; }
.post-meta span { display: inline-flex; align-items: center; gap: 6px; }
.post-meta svg { width: 16px; height: 16px; }
.post-article { max-width: 860px; margin: 0 auto; }
.post-article .prose { padding: 40px 48px; }
.post-intro { font-size: 1.12rem !important; color: var(--text-main) !important; }
.post-toc { margin: 4px 0 28px; padding: 18px 22px; border: 1px solid var(--border-color); border-radius: var(--radius-sm); background: rgba(124, 58, 237, 0.08); }
.post-toc h2 { font-size: 1.05rem !important; margin: 0 0 10px !important; letter-spacing: 0.04em; text-transform: uppercase; color: var(--text-dim) !important; }
.post-toc ol { margin: 0; padding-left: 20px; }
.post-toc li { margin-bottom: 4px; font-size: 1rem; }
.post-toc a { text-decoration: none; }
.video-embed { position: relative; display: block; width: 100%; aspect-ratio: 16 / 9; border-radius: var(--radius-sm); overflow: hidden; background: #000; border: 1px solid var(--border-color); margin: 6px 0 10px; }
.video-embed img, .video-embed iframe { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border: 0; }
.video-embed .play-btn { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 74px; height: 52px; border-radius: 14px; background: #ff0033; display: flex; align-items: center; justify-content: center; box-shadow: 0 8px 30px rgba(0,0,0,0.5); transition: transform 0.2s ease; }
.video-embed:hover .play-btn, .video-embed:focus-visible .play-btn { transform: translate(-50%, -50%) scale(1.08); }
.video-embed .play-btn::before { content: ""; border-style: solid; border-width: 11px 0 11px 19px; border-color: transparent transparent transparent #fff; margin-left: 4px; }
.video-caption { font-size: 0.92rem !important; color: var(--text-dim) !important; text-align: center; margin-bottom: 26px !important; }
.post-cta { margin: 40px 0 10px; padding: 30px 28px; border-radius: var(--radius-md, 18px); border: 1px solid var(--border-hover, rgba(0,229,255,0.35)); background: linear-gradient(135deg, rgba(124, 58, 237, 0.18), rgba(0, 229, 255, 0.08)); text-align: center; }
.post-cta h2 { margin-top: 0 !important; }
.post-cta p { margin-bottom: 20px !important; }
.post-cta .cta-row { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; }
.post-cta .btn { text-decoration: none !important; }
.post-sources { margin-top: 34px; padding-top: 22px; border-top: 1px solid var(--border-color); }
.post-sources h2 { font-size: 1.2rem !important; }
.post-sources ol { padding-left: 22px; }
.post-sources li { font-size: 0.95rem !important; line-height: 1.6 !important; word-break: break-word; }
.post-note { font-size: 0.9rem !important; color: var(--text-dim) !important; }
.blog-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 26px; max-width: 1100px; margin: 0 auto; }
.post-card { display: flex; flex-direction: column; overflow: hidden; text-decoration: none; color: var(--text-main); padding: 0; transition: transform 0.25s ease, border-color 0.25s ease; }
.post-card:hover { transform: translateY(-4px); border-color: var(--border-hover); }
.post-card img { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; display: block; }
.post-card-body { padding: 22px 24px 26px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.post-card-body time, .post-card-tag { color: var(--text-dim); font-size: 0.88rem; }
.post-card h2 { font-family: var(--font-heading); font-size: 1.25rem; line-height: 1.3; margin: 0; }
.post-card p { color: var(--text-muted); font-size: 0.98rem; margin: 0; }
.post-card .related-more { margin-top: auto; }
@media (max-width: 900px) {
  .post-article .prose { padding: 26px 20px; }
  .post-cta { padding: 24px 18px; }
}
@media (max-width: 480px) {
  .post-cta .btn { width: 100%; justify-content: center; }
  .blog-grid { grid-template-columns: 1fr; }
}
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.post-article .prose.glass-card, .post-article .prose.glass-card:hover { transform: none; box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; }
.prose .post-cta a.btn { text-decoration: none; }
.prose .post-cta a.btn-primary { color: #fff; }
.prose .post-cta a.btn-secondary { color: var(--text-main); }
