/*
 * Single-post layout: the post header, entry-content typography, and
 * comments area container. Extracted verbatim from the original
 * style.css. (.tags-row, .share-buttons, .author-box, .toc-box,
 * .prev-next-nav, .related-posts, .breadcrumbs are components, built in
 * Sprint 3 as assets/css/article.css and relocated into their own
 * component files — see DESIGN_SYSTEM.md.)
 *
 * @package TFGadgets
 */

===================================================== */
.single-post{ padding:52px 0 80px; }
.single-post .post-header{ max-width:760px; margin:0 auto 36px; text-align:left; }
.single-post .post-header .eyebrow{ margin-bottom:16px; display:inline-block; }
.single-post .post-header h1{ font-size:clamp(32px,5vw,52px); line-height:1.08; margin-bottom:18px; }
.single-post .post-header .dek{ font-family:var(--font-body); font-weight:400; font-size:18px; color:var(--text-muted); margin-bottom:20px; line-height:1.6; }
.single-post .byline{ display:flex; gap:18px; align-items:center; border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:14px 0; }
.single-post .featured-media{ max-width:960px; margin:0 auto 40px; border:1px solid var(--line); }
.single-post .entry-content{ max-width:720px; margin:0 auto; font-size:18px; line-height:1.75; }
.entry-content p{ margin:0 0 1.4em; }
.entry-content h2{ font-size:28px; margin:2em 0 .6em; }
.entry-content h3{ font-size:22px; margin:1.8em 0 .5em; }
.entry-content blockquote{
  font-family:var(--font-display); font-weight:500; font-size:22px; line-height:1.5;
  color:var(--accent-soft); background:var(--bg-card); border-left:3px solid var(--accent);
  margin:2em 0; padding:20px 24px;
}
.entry-content a{ color:var(--accent-soft); border-bottom:1px solid var(--accent); }
.entry-content img{ margin:2em 0; border:1px solid var(--line); }
.entry-content figcaption{ font-family:var(--font-mono); font-size:12px; color:var(--text-faint); margin-top:8px; }

.comments-area{ max-width:720px; margin:60px auto 0; padding-top:40px; border-top:1px solid var(--line); }
