:root {
    --ink: #18323a;
    --muted: #6b7d80;
    --accent: #0b7a75;
}

body {
    color: var(--ink);
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
}

.brand-logo {
    border-radius: 1rem;
    object-fit: cover;
}

.featured-image {
    max-height: 34rem;
}

.content-prose {
    max-width: 50rem;
    color: color-mix(in oklab, currentColor 76%, transparent);
    font-size: 1.08rem;
    line-height: 1.85;
}

.content-prose > * + * {
    margin-top: 1.35rem;
}

.content-prose h1,
.content-prose h2,
.content-prose h3,
.content-prose h4 {
    color: var(--ink);
    font-weight: 900;
    letter-spacing: -.025em;
    line-height: 1.15;
}

.content-prose h1 { font-size: 2.25rem; }
.content-prose h2 { font-size: 1.75rem; }
.content-prose h3 { font-size: 1.4rem; }
.content-prose a { color: var(--accent); font-weight: 700; text-decoration: underline; text-underline-offset: .2em; }
.content-prose ul, .content-prose ol { padding-left: 1.5rem; }
.content-prose ul { list-style: disc; }
.content-prose ol { list-style: decimal; }
.content-prose blockquote { border-left: 4px solid var(--accent); padding-left: 1.25rem; font-style: italic; }
.content-prose img { border-radius: 1rem; }
.content-prose code, .content-prose pre { border-radius: .75rem; background: #e8eef0; }
.content-prose pre { overflow-x: auto; padding: 1rem; }

.footer-content p { margin-top: .5rem; }
.footer-content a { color: var(--accent); text-decoration: underline; }

.stat-card {
    border-left: 4px solid var(--accent);
}

.media-thumb {
    width: 4.5rem;
    height: 3.75rem;
    object-fit: cover;
}

.cke {
    border-color: color-mix(in oklab, currentColor 18%, transparent) !important;
    border-radius: .75rem !important;
    overflow: hidden;
}
