/* Tech Bytes — standalone news posts
   Headings: Plus Jakarta Sans. Body: Source Serif 4.
   Distinct from engineering posts (Montserrat + Source Serif Pro). */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,500;0,600;0,700;0,800;1,500&family=Source+Serif+4:ital,opsz,wght@0,8..60,400;0,8..60,600;0,8..60,700;1,8..60,400;1,8..60,600&family=IBM+Plex+Mono:wght@400;500&display=swap');

body {
    font-family: "Source Serif 4", "Source Serif Pro", Georgia, "Times New Roman", serif;
    font-optical-sizing: auto;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

nav, .nav-font, .tb-mnav-panel,
article > span,
article > p.text-gray-600.text-sm,
footer {
    font-family: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;
}

article > h1,
article h1 {
    font-family: "Plus Jakarta Sans", system-ui, sans-serif;
    font-weight: 800;
    letter-spacing: -0.035em;
    line-height: 1.15;
    text-wrap: balance;
}

article > p.text-lg,
article > p.text-base.sm\:text-lg,
.tb-deck {
    font-family: "Source Serif 4", Georgia, serif;
    font-size: 1.2rem;
    line-height: 1.55;
    color: #4b5563;
}

.prose p {
    font-family: "Source Serif 4", Georgia, serif;
    font-size: 1.2rem;
    line-height: 1.8;
    color: #1f2937;
    margin-bottom: 1.35rem;
}

.prose h2 {
    font-family: "Plus Jakarta Sans", system-ui, sans-serif;
    font-size: 1.55rem;
    font-weight: 800;
    letter-spacing: -0.03em;
    color: #111827;
    margin-top: 2.6rem;
    margin-bottom: 0.9rem;
    line-height: 1.25;
}

.prose h3 {
    font-family: "Plus Jakarta Sans", system-ui, sans-serif;
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: -0.02em;
    color: #1f2937;
    margin-top: 1.8rem;
    margin-bottom: 0.6rem;
}

.prose li {
    font-family: "Source Serif 4", Georgia, serif;
    font-size: 1.12rem;
    line-height: 1.7;
    color: #1f2937;
}

.prose strong { color: #111827; font-weight: 700; }

.prose a {
    color: #1d4ed8;
    text-underline-offset: 3px;
}

.prose code,
.prose pre {
    font-family: "IBM Plex Mono", ui-monospace, monospace;
}

@media (max-width: 640px) {
    article > h1, article h1 { font-size: 1.7rem; }
    .prose p { font-size: 1.125rem; line-height: 1.75; }
    .prose h2 { font-size: 1.35rem; }
}
