/*
Theme Name: CAknowledge Child
Theme URI: https://www.caknowledge.in/
Description: Child theme for GeneratePress. New home page, header, trust strip and footer for CAknowledge.in.
Template: generatepress
Version: 1.0.0
Text Domain: caknowledge-child
*/

/* ---------- Tokens ---------- */
:root {
	--ck-ink: #0F1B2D;
	--ck-slate: #44526A;
	--ck-green: #0A6B4F;
	--ck-mint: #8FE3C0;
	--ck-paper: #F4F6F9;
	--ck-white: #FFFFFF;
	--ck-line: #DDE2EA;
	--ck-line-strong: #B9C2D0;
	--ck-amber: #8A5A00;
	--ck-amber-bg: #FBF1DA;
	--ck-sans: 'Schibsted Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
	--ck-mono: 'IBM Plex Mono', ui-monospace, Menlo, Consolas, monospace;
}

/* ---------- Base ---------- */
body {
	font-family: var(--ck-sans);
	color: var(--ck-ink);
	background: var(--ck-paper);
}

.ck-wrap {
	max-width: 1200px;
	margin: 0 auto;
	padding-left: 24px;
	padding-right: 24px;
	box-sizing: border-box;
}

/* Let the home page run edge to edge. Each section sets its own width. */
body.ck-site #page,
body.ck-site .site-content,
body.ck-site .grid-container {
	max-width: none;
}
body.ck-site .site-content {
	display: block;
}
body.ck-site #primary {
	width: 100%;
}
body.ck-site .site-main {
	margin: 0;
}

.ck-main a { text-decoration: none; }
.ck-main a:focus-visible,
.ck-main button:focus-visible,
.ck-main input:focus-visible {
	outline: 3px solid var(--ck-green);
	outline-offset: 2px;
}

.ck-eyebrow {
	display: block;
	font-family: var(--ck-mono);
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--ck-green);
}
.ck-eyebrow--amber { color: var(--ck-amber); }

.ck-main h1,
.ck-main h2,
.ck-main h3 {
	font-family: var(--ck-sans);
	font-weight: 800;
	letter-spacing: -0.02em;
	text-wrap: balance;
	color: inherit;
	margin: 0;
}
.ck-main h2 { font-size: clamp(28px, 3.4vw, 40px); line-height: 1.1; }

.ck-sechead {
	display: flex;
	flex-wrap: wrap;
	gap: 16px 24px;
	justify-content: space-between;
	align-items: flex-end;
	margin-bottom: 28px;
}
.ck-sechead > div:first-child { display: flex; flex-direction: column; gap: 6px; }

.ck-btn {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 0 22px;
	border-radius: 6px;
	font-weight: 700;
	font-size: 15px;
}
.ck-btn--line { border: 1.5px solid var(--ck-ink); color: var(--ck-ink); }
.ck-btn--dark { background: var(--ck-ink); color: #fff; }
.ck-btn--dark:hover { color: #fff; background: var(--ck-green); }
.ck-btn--line:hover { background: var(--ck-ink); color: #fff; }

/* ---------- Top bar ---------- */
.ck-topbar { background: var(--ck-ink); color: #C9D3E2; font-size: 13px; }
.ck-topbar__in {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 24px;
	justify-content: space-between;
	align-items: center;
	padding-top: 10px;
	padding-bottom: 10px;
}
.ck-topbar__date {
	font-family: var(--ck-mono);
	font-size: 12px;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--ck-mint);
}
.ck-topbar__social { display: flex; flex-wrap: wrap; gap: 6px 18px; }
.ck-topbar a { color: #C9D3E2; }
.ck-topbar a:hover { color: #fff; }

/* ---------- GeneratePress header and menu ---------- */
.site-header { background: var(--ck-white); border-bottom: 1px solid var(--ck-line); }
.main-navigation,
.main-navigation ul ul { background: var(--ck-white); }
.main-navigation .main-nav ul li a {
	font-family: var(--ck-sans);
	font-size: 15px;
	font-weight: 500;
	color: var(--ck-ink);
}
.main-navigation .main-nav ul li:hover > a,
.main-navigation .main-nav ul li.sfHover > a,
.main-navigation .main-nav ul li[class*="current-menu-"] > a {
	color: var(--ck-green);
	background: transparent;
}
.main-navigation .main-nav ul ul li a { font-size: 14px; }
.main-title a, .main-title a:hover { font-weight: 800; letter-spacing: -0.02em; color: var(--ck-ink); }

/* ---------- Hero ---------- */
.ck-hero { background: var(--ck-paper); }
.ck-hero__in {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
	align-items: center;
	padding-top: 56px;
	padding-bottom: 48px;
}
.ck-hero__copy { flex: 1 1 460px; min-width: 0; display: flex; flex-direction: column; gap: 22px; }
.ck-hero h1 { font-size: clamp(36px, 5.2vw, 62px); line-height: 1.04; letter-spacing: -0.03em; }
.ck-lede { margin: 0; font-size: 18px; line-height: 1.55; color: var(--ck-slate); max-width: 520px; }

.ck-search { display: flex; flex-wrap: wrap; gap: 10px; max-width: 540px; margin: 0; }
.ck-search input[type="search"] {
	flex: 1 1 260px;
	min-width: 0;
	height: 52px;
	box-sizing: border-box;
	padding: 0 18px;
	font: 16px var(--ck-sans);
	border: 1.5px solid var(--ck-line-strong);
	border-radius: 6px;
	background: var(--ck-white);
	color: var(--ck-ink);
}
.ck-search button {
	height: 52px;
	padding: 0 26px;
	font: 700 16px var(--ck-sans);
	border: 0;
	border-radius: 6px;
	background: var(--ck-green);
	color: #fff;
	cursor: pointer;
}
.ck-search button:hover { background: var(--ck-ink); }

.ck-chips { display: flex; flex-wrap: wrap; gap: 10px; }
.ck-chips a {
	padding: 10px 16px;
	border: 1px solid #C5CCD8;
	border-radius: 999px;
	background: var(--ck-white);
	color: var(--ck-ink);
	font-size: 14px;
	font-weight: 500;
}
.ck-chips a:hover { border-color: var(--ck-green); color: var(--ck-green); }

/* Ledger card */
.ck-ledger {
	flex: 1 1 400px;
	min-width: 0;
	background: var(--ck-white);
	border: 1px solid #D3D9E3;
	border-radius: 8px;
	overflow: hidden;
}
.ck-ledger__head {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 12px;
	padding: 18px 24px;
	border-bottom: 2px solid var(--ck-ink);
}
.ck-ledger__head span { font-size: 18px; font-weight: 800; letter-spacing: -0.01em; }
.ck-ledger__head small {
	font-family: var(--ck-mono);
	font-size: 11px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--ck-slate);
}
.ck-ledger__row {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 18px 24px;
	border-bottom: 1px solid #E6EAF0;
	color: var(--ck-ink);
}
.ck-ledger__row:hover { background: #F8FAFC; }
.ck-ledger__top { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.ck-ledger__top strong { font-size: 17px; font-weight: 700; }
.ck-ledger__top em {
	font-family: var(--ck-mono);
	font-style: normal;
	font-size: 16px;
	color: var(--ck-green);
}
.ck-ledger__bar { display: flex; align-items: center; gap: 12px; }
.ck-ledger__track { flex: 1; height: 8px; background: #EDF0F5; border-radius: 2px; }
.ck-ledger__track span { display: block; height: 8px; border-radius: 2px; background: var(--ck-green); }
.ck-ledger__bar small { flex: none; font-size: 12px; color: var(--ck-slate); }
.ck-ledger__note { margin: 0; padding: 14px 24px; background: var(--ck-paper); font-size: 12px; line-height: 1.5; color: var(--ck-slate); }

/* ---------- Latest ---------- */
.ck-latest { background: var(--ck-white); border-top: 1px solid var(--ck-line); border-bottom: 1px solid var(--ck-line); padding: 56px 0; }
.ck-latest .ck-wrap { display: flex; flex-direction: column; }
.ck-latest .ck-btn { align-self: flex-start; margin-top: 28px; }

.ck-tabs { display: flex; flex-wrap: wrap; gap: 8px; }
.ck-tabs button {
	min-height: 44px;
	padding: 10px 18px;
	border-radius: 999px;
	border: 1px solid var(--ck-ink);
	background: var(--ck-white);
	color: var(--ck-ink);
	font: 700 14px var(--ck-sans);
	cursor: pointer;
}
.ck-tabs button.is-on { background: var(--ck-ink); color: #fff; }

.ck-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 460px), 1fr)); gap: 0 40px; }
.ck-item {
	display: flex;
	gap: 18px;
	align-items: center;
	padding: 20px 0;
	border-bottom: 1px solid #E6EAF0;
	color: var(--ck-ink);
}
.ck-item[hidden] { display: none; }
.ck-item:hover .ck-item__title { color: var(--ck-green); }
.ck-item__body { min-width: 0; display: flex; flex-direction: column; gap: 8px; }
.ck-item__title { font-size: 18px; line-height: 1.3; font-weight: 700; letter-spacing: -0.005em; }
.ck-item__meta { font-size: 13px; color: var(--ck-slate); }

.ck-tile {
	flex: none;
	width: 76px;
	height: 76px;
	border-radius: 6px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	font-family: var(--ck-mono);
	font-size: 18px;
	letter-spacing: 0.02em;
	background: #E4EAF7;
	color: #2A4A8A;
}
.ck-tile img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ck-tile--networth { background: #E3F2EC; color: var(--ck-green); }
.ck-tile--hr { background: var(--ck-amber-bg); color: var(--ck-amber); }

/* ---------- Topics ---------- */
.ck-topics { padding: 64px 0; background: var(--ck-paper); }
.ck-topic-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 14px; }
.ck-topic-grid a {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-height: 104px;
	box-sizing: border-box;
	padding: 20px;
	background: var(--ck-white);
	border: 1px solid #D3D9E3;
	border-radius: 6px;
	color: var(--ck-ink);
}
.ck-topic-grid a:hover { border-color: var(--ck-green); }
.ck-topic-grid strong { font-size: 18px; font-weight: 700; }
.ck-topic-grid span { font-size: 14px; line-height: 1.4; color: var(--ck-slate); }

/* ---------- Net worth band ---------- */
.ck-wealth { background: var(--ck-ink); color: #E8EDF5; padding: 64px 0; }
.ck-wealth h2 { color: #fff; }
.ck-wealth .ck-eyebrow { color: var(--ck-mint); }
.ck-wealth__all { color: var(--ck-mint); font-weight: 700; font-size: 15px; }
.ck-wealth__all:hover { color: #fff; }
.ck-cols { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); gap: 36px; }
.ck-col { display: flex; flex-direction: column; min-width: 0; }
.ck-col h3 {
	padding-bottom: 14px;
	border-bottom: 2px solid var(--ck-mint);
	font-size: 20px;
	letter-spacing: 0;
	color: #fff;
}
.ck-col a {
	padding: 16px 0;
	border-bottom: 1px solid #2A3A52;
	font-size: 16px;
	line-height: 1.4;
	font-weight: 500;
	color: #E8EDF5;
}
.ck-col a:hover { color: var(--ck-mint); }

/* ---------- HR formats ---------- */
.ck-hr { background: var(--ck-white); border-bottom: 1px solid var(--ck-line); padding: 64px 0; }
.ck-hr__in { display: flex; flex-wrap: wrap; gap: 36px 56px; align-items: flex-start; }
.ck-hr__copy { flex: 1 1 320px; min-width: 0; display: flex; flex-direction: column; gap: 16px; align-items: flex-start; }
.ck-hr__copy p { margin: 0; font-size: 17px; line-height: 1.55; color: var(--ck-slate); }
.ck-hr__cards { flex: 2 1 520px; min-width: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 14px; }
.ck-hr__cards a {
	display: flex;
	flex-direction: column;
	gap: 14px;
	padding: 22px;
	background: var(--ck-amber-bg);
	border: 1px solid #EBD9AC;
	border-radius: 6px;
	color: var(--ck-ink);
}
.ck-hr__cards a:hover { border-color: var(--ck-amber); }
.ck-hr__cards strong { font-size: 19px; line-height: 1.3; font-weight: 700; }
.ck-hr__cards small { font-size: 13px; color: #5A4A1F; }
.ck-doc {
	align-self: flex-start;
	padding: 4px 10px;
	border-radius: 3px;
	background: var(--ck-amber);
	color: #fff;
	font-family: var(--ck-mono);
	font-size: 11px;
	letter-spacing: 0.08em;
}

/* ---------- Loans and banking ---------- */
.ck-money { background: var(--ck-paper); padding: 64px 0; }
.ck-money__in { display: flex; flex-wrap: wrap; gap: 40px; }
.ck-money__in > div { flex: 1 1 440px; min-width: 0; display: flex; flex-direction: column; gap: 18px; }
.ck-money h2 { font-size: 28px; line-height: 1.15; }
.ck-money p { margin: 0; font-size: 16px; line-height: 1.55; color: var(--ck-slate); }
.ck-pills { display: flex; flex-wrap: wrap; gap: 10px; }
.ck-pills a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	box-sizing: border-box;
	padding: 11px 18px;
	border: 1px solid var(--ck-line-strong);
	border-radius: 6px;
	background: var(--ck-white);
	color: var(--ck-ink);
	font-size: 15px;
	font-weight: 500;
}
.ck-pills a:hover { border-color: var(--ck-green); color: var(--ck-green); }

/* ---------- Trust strip (all pages) ---------- */
.ck-trust { background: #E3F2EC; border-top: 1px solid #C3E0D3; border-bottom: 1px solid #C3E0D3; font-family: var(--ck-sans); }
.ck-trust__in { display: flex; flex-wrap: wrap; gap: 32px 56px; align-items: flex-start; padding-top: 56px; padding-bottom: 56px; }
.ck-trust__text { flex: 1 1 420px; min-width: 0; display: flex; flex-direction: column; gap: 14px; }
.ck-trust h2 { margin: 0; font-size: clamp(26px, 3vw, 34px); line-height: 1.15; font-weight: 800; letter-spacing: -0.02em; color: var(--ck-ink); }
.ck-trust p { margin: 0; font-size: 16px; line-height: 1.6; color: #2F4A40; }
.ck-trust__links { flex: 1 1 360px; min-width: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 160px), 1fr)); gap: 12px; }
.ck-trust__links a {
	min-height: 44px;
	box-sizing: border-box;
	padding: 14px 16px;
	background: #fff;
	border: 1px solid #C3E0D3;
	border-radius: 6px;
	color: var(--ck-ink);
	font-weight: 700;
	font-size: 15px;
}
.ck-trust__links a:hover { border-color: var(--ck-green); color: var(--ck-green); }

/* ---------- Footer ---------- */
.site-footer, .site-info { background: var(--ck-ink); color: #9DABC0; font-family: var(--ck-sans); }
.site-info { border-top: 1px solid #2A3A52; font-size: 13px; }
.site-info a { color: #C9D3E2; }
.ck-foot { background: var(--ck-ink); color: #C9D3E2; font-family: var(--ck-sans); }
.ck-foot__in { display: flex; flex-wrap: wrap; gap: 36px 56px; justify-content: space-between; padding-top: 56px; padding-bottom: 40px; }
.ck-foot__brand { flex: 1 1 360px; max-width: 520px; min-width: 0; display: flex; flex-direction: column; gap: 14px; }
.ck-foot__brand p { margin: 0; font-size: 15px; line-height: 1.6; color: #C9D3E2; }
.ck-foot__logo { font-size: 26px; font-weight: 800; letter-spacing: -0.02em; color: #fff; }
.ck-foot__logo b { color: var(--ck-mint); font-weight: 800; }
.ck-foot__logo i { font-family: var(--ck-mono); font-style: normal; font-size: 13px; font-weight: 500; color: #9DABC0; }
.ck-foot__mail { font-family: var(--ck-mono); font-size: 14px; color: var(--ck-mint); }
.ck-foot__links { flex: 1 1 320px; min-width: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 140px), 1fr)); gap: 12px 28px; align-content: start; }
.ck-foot__links a { color: #E8EDF5; font-size: 15px; }
.ck-foot__links a:hover { color: var(--ck-mint); }

/* ---------- Small screens ---------- */
@media (max-width: 600px) {
	.ck-hero__in { padding-top: 36px; }
	.ck-tile { width: 64px; height: 64px; }
	.ck-item__title { font-size: 17px; }
}

/* =====================================================
   Inner pages: single post, page, archive, search, 404
   ===================================================== */

.ck-narrow { max-width: 820px; margin: 0 auto; padding-left: 24px; padding-right: 24px; box-sizing: border-box; }

/* Breadcrumbs */
.ck-crumbs { margin-bottom: 18px; }
.ck-crumbs ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 4px 0; font-size: 13px; color: var(--ck-slate); }
.ck-crumbs li { margin: 0; }
.ck-crumbs li + li::before { content: "/"; margin: 0 8px; color: var(--ck-line-strong); }
.ck-crumbs a { color: var(--ck-slate); }
.ck-crumbs a:hover { color: var(--ck-green); }

/* Cards and grids */
.ck-grid { display: grid; gap: 28px; }
.ck-grid--3 { grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); }
.ck-grid--4 { grid-template-columns: repeat(auto-fill, minmax(min(100%, 250px), 1fr)); }

.ck-card { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.ck-card__media {
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	border-radius: 6px;
	background: #E4EAF7;
	color: #2A4A8A;
}
.ck-card__media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.3s ease; }
.ck-card:hover .ck-card__media img { transform: scale(1.03); }
.ck-card__media.ck-tile--networth { background: #E3F2EC; color: var(--ck-green); }
.ck-card__media.ck-tile--hr { background: var(--ck-amber-bg); color: var(--ck-amber); }
.ck-card__mono { font-family: var(--ck-mono); font-size: 34px; letter-spacing: 0.03em; }
.ck-card__body { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.ck-card__cat { font-family: var(--ck-mono); font-size: 11px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ck-green); }
.ck-card__title { margin: 0; font-size: 20px; line-height: 1.25; font-weight: 700; letter-spacing: -0.01em; }
.ck-card__title a { color: var(--ck-ink); }
.ck-card__title a:hover { color: var(--ck-green); }
.ck-card__excerpt { margin: 0; font-size: 15px; line-height: 1.5; color: var(--ck-slate); }
.ck-card__meta { font-size: 13px; color: var(--ck-slate); }

.ck-card--lead { grid-column: 1 / -1; flex-direction: row; flex-wrap: wrap; align-items: center; gap: 28px 40px; padding-bottom: 28px; border-bottom: 1px solid var(--ck-line); }
.ck-card--lead .ck-card__media { flex: 1 1 420px; }
.ck-card--lead .ck-card__body { flex: 1 1 360px; gap: 14px; }
.ck-card--lead .ck-card__title { font-size: clamp(26px, 3vw, 38px); line-height: 1.12; letter-spacing: -0.02em; font-weight: 800; }
.ck-card--lead .ck-card__excerpt { font-size: 17px; }

/* Archive header and body */
.ck-archive-head { background: var(--ck-white); border-bottom: 1px solid var(--ck-line); padding: 48px 0 36px; }
.ck-archive-head .ck-wrap { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.ck-archive-head h1 { font-size: clamp(34px, 4.6vw, 54px); line-height: 1.05; letter-spacing: -0.03em; }
.ck-archive-desc { max-width: 720px; font-size: 17px; line-height: 1.6; color: var(--ck-slate); }
.ck-archive-desc p { margin: 0 0 10px; }
.ck-archive-desc p:last-child { margin-bottom: 0; }
.ck-count { font-family: var(--ck-mono); font-size: 12px; letter-spacing: 0.06em; text-transform: uppercase; color: var(--ck-slate); }
.ck-pills--sub { margin-top: 10px; }
.ck-archive-body { background: var(--ck-paper); padding: 48px 0 72px; }
.ck-archive-head .ck-search { margin-top: 10px; width: 100%; }

.ck-empty { max-width: 560px; display: flex; flex-direction: column; gap: 14px; }
.ck-empty h2 { font-size: 28px; }
.ck-empty p { margin: 0; color: var(--ck-slate); font-size: 16px; line-height: 1.55; }

/* Pagination */
.ck-pager { margin-top: 48px; }
.ck-pager .nav-links { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.ck-pager .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	min-height: 44px;
	box-sizing: border-box;
	padding: 0 14px;
	border: 1px solid var(--ck-line-strong);
	border-radius: 6px;
	background: var(--ck-white);
	color: var(--ck-ink);
	font-weight: 700;
	font-size: 15px;
}
.ck-pager a.page-numbers:hover { border-color: var(--ck-green); color: var(--ck-green); }
.ck-pager .page-numbers.current { background: var(--ck-ink); border-color: var(--ck-ink); color: #fff; }
.ck-pager .page-numbers.dots { border-color: transparent; background: transparent; }

/* Single post header */
.ck-article { background: var(--ck-white); }
.ck-art-head { padding: 44px 0 28px; }
.ck-art-cats { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.ck-art-cats a {
	padding: 5px 12px;
	border-radius: 999px;
	background: #E3F2EC;
	color: var(--ck-green);
	font-family: var(--ck-mono);
	font-size: 11px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.ck-art-cats a:hover { background: var(--ck-green); color: #fff; }
.ck-art-head h1 { font-size: clamp(32px, 4.4vw, 50px); line-height: 1.08; letter-spacing: -0.03em; }

.ck-byline { display: flex; align-items: center; gap: 14px; margin-top: 24px; }
.ck-byline__img, .ck-author__img { border-radius: 50%; flex: none; display: block; }
.ck-byline__text { display: flex; flex-direction: column; gap: 2px; font-size: 14px; color: var(--ck-slate); }
.ck-byline__name { font-weight: 700; font-size: 16px; color: var(--ck-ink); }
.ck-byline__name:hover { color: var(--ck-green); }

.ck-art-hero { max-width: 1040px; margin: 0 auto 36px; padding: 0 24px; box-sizing: border-box; }
.ck-art-hero img { width: 100%; height: auto; display: block; border-radius: 8px; }

/* Article text */
.ck-prose { font-size: 18px; line-height: 1.75; color: #1B2840; overflow-wrap: break-word; }
.ck-prose > * { margin-top: 0; margin-bottom: 1.25em; }
.ck-prose h2 { margin-top: 2em; font-size: clamp(26px, 3vw, 32px); line-height: 1.2; font-weight: 800; letter-spacing: -0.02em; color: var(--ck-ink); }
.ck-prose h3 { margin-top: 1.7em; font-size: 22px; line-height: 1.3; font-weight: 700; letter-spacing: -0.01em; color: var(--ck-ink); }
.ck-prose h4 { margin-top: 1.5em; font-size: 18px; font-weight: 700; color: var(--ck-ink); }
.ck-prose a { color: var(--ck-green); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.ck-prose a:hover { color: var(--ck-ink); }
.ck-prose ul, .ck-prose ol { padding-left: 1.4em; }
.ck-prose li { margin-bottom: 0.4em; }
.ck-prose strong { color: var(--ck-ink); }
.ck-prose img, .ck-prose video { max-width: 100%; height: auto; border-radius: 6px; }
.ck-prose figure { margin-left: 0; margin-right: 0; }
.ck-prose figcaption { margin-top: 8px; font-size: 14px; color: var(--ck-slate); }
.ck-prose blockquote {
	margin-left: 0;
	margin-right: 0;
	padding: 18px 24px;
	background: var(--ck-paper);
	border: 1px solid var(--ck-line);
	border-radius: 6px;
	font-size: 19px;
	color: var(--ck-ink);
}
.ck-prose blockquote p:last-child { margin-bottom: 0; }
.ck-prose table {
	display: block;
	max-width: 100%;
	overflow-x: auto;
	border-collapse: collapse;
	font-size: 16px;
	line-height: 1.5;
	border: 1px solid var(--ck-line);
}
.ck-prose th, .ck-prose td { padding: 12px 16px; border: 1px solid var(--ck-line); text-align: left; vertical-align: top; }
.ck-prose th { background: var(--ck-ink); color: #fff; font-weight: 700; border-color: var(--ck-ink); }
.ck-prose tr:nth-child(even) td { background: #F8FAFC; }
.ck-prose pre { overflow-x: auto; padding: 16px; background: var(--ck-ink); color: #E8EDF5; border-radius: 6px; font-size: 14px; }
.ck-prose hr { border: 0; border-top: 1px solid var(--ck-line); margin: 2em 0; }
.ck-pagelinks { margin-top: 24px; font-weight: 700; }

/* Post footer */
.ck-art-foot { display: flex; flex-direction: column; gap: 28px; margin-top: 40px; padding: 28px 0 56px; border-top: 1px solid var(--ck-line); }
.ck-tags, .ck-share { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.ck-tags span, .ck-share span { margin-right: 6px; font-family: var(--ck-mono); font-size: 11px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ck-slate); }
.ck-tags a, .ck-share a {
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	box-sizing: border-box;
	padding: 0 16px;
	border: 1px solid var(--ck-line-strong);
	border-radius: 999px;
	background: var(--ck-white);
	color: var(--ck-ink);
	font-size: 14px;
	font-weight: 500;
}
.ck-tags a:hover, .ck-share a:hover { border-color: var(--ck-green); color: var(--ck-green); }

.ck-author { display: flex; gap: 20px; align-items: flex-start; padding: 24px; background: var(--ck-paper); border: 1px solid var(--ck-line); border-radius: 8px; }
.ck-author > div { min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.ck-author__name { font-size: 20px; font-weight: 800; letter-spacing: -0.01em; color: var(--ck-ink); }
.ck-author__name:hover { color: var(--ck-green); }
.ck-author p { margin: 0; font-size: 15px; line-height: 1.55; color: var(--ck-slate); }
.ck-disclaimer { margin: 0; font-size: 13px; line-height: 1.55; color: var(--ck-slate); }
.ck-disclaimer a { color: var(--ck-green); text-decoration: underline; }

/* Related */
.ck-related { background: var(--ck-paper); border-top: 1px solid var(--ck-line); padding: 56px 0 72px; }

/* Comments (if enabled) */
.ck-article .comments-area { margin: 0 0 56px; font-size: 16px; }
.ck-article .comment-form input[type="text"],
.ck-article .comment-form input[type="email"],
.ck-article .comment-form input[type="url"],
.ck-article .comment-form textarea { width: 100%; box-sizing: border-box; padding: 12px 14px; border: 1.5px solid var(--ck-line-strong); border-radius: 6px; font: 16px var(--ck-sans); }
.ck-article .comment-form input[type="submit"] { min-height: 44px; padding: 0 22px; border: 0; border-radius: 6px; background: var(--ck-green); color: #fff; font: 700 15px var(--ck-sans); cursor: pointer; }

@media (max-width: 600px) {
	.ck-prose { font-size: 17px; line-height: 1.7; }
	.ck-art-head { padding-top: 28px; }
	.ck-author { flex-direction: column; }
	.ck-card--lead { gap: 18px; }
}
