.cc-journal-page,
.cc-post-page {
	background:var(--cc-bone);
	color:var(--cc-ink);
	font-family:var(--cc-sans);
}

.cc-journal-hero,
.cc-post-hero {
	padding:170px 0 90px;
	background:var(--cc-ink);
	color:#fff;
}

.cc-journal-hero__grid {
	display:grid;
	grid-template-columns:1fr;
	align-items:end;
	gap:clamp(35px,6vw,88px);
}

.cc-journal-hero h1,
.cc-post-hero h1 {
	margin:0;
	color:#fff;
	font:650 clamp(58px,7vw,100px)/.98 var(--cc-sans);
	letter-spacing:-.065em;
}

.cc-journal-hero__grid > p:last-child,
.cc-post-hero__grid > p:last-child {
	margin:0;
	font:400 18px/1.6 var(--cc-serif);
	color:rgba(255,255,255,.68);
}

.cc-journal-index {
	padding:clamp(80px,10vw,150px) 0;
}

.cc-journal-list {
	border-top:1px solid var(--cc-line);
}

.cc-journal-row {
	display:grid;
	grid-template-columns:160px minmax(0,1fr) 44px;
	gap:clamp(26px,5vw,70px);
	align-items:start;
	padding:48px 0;
	border-bottom:1px solid var(--cc-line);
}

.cc-journal-row time,
.cc-journal-row__type {
	font:500 14px/1.5 var(--cc-sans);
	letter-spacing:0;
	text-transform:none;
	color:rgba(17,21,19,.52);
}

.cc-journal-row__type {
	margin:0 0 12px;
	color:var(--cc-ember);
}

.cc-journal-row h2 {
	max-width:900px;
	margin:0 0 16px;
	font:620 clamp(32px,3.6vw,52px)/1.05 var(--cc-sans);
	letter-spacing:-.045em;
}

.cc-journal-row h2 a,
.cc-journal-row__arrow {
	color:inherit;
	text-decoration:none;
}

.cc-journal-row > div > p:last-child {
	max-width:700px;
	margin:0;
	font-size:14px;
	line-height:1.65;
	color:rgba(17,21,19,.62);
}

.cc-journal-row__arrow {
	justify-self:end;
	font-size:28px;
	transition:transform .3s var(--cc-ease);
}

.cc-journal-row:hover .cc-journal-row__arrow {
	transform:translate(4px,-4px);
	color:var(--cc-ember);
}

.cc-journal-pagination {
	margin-top:50px;
}

.cc-post-hero__grid {
	display:grid;
	grid-template-columns:180px minmax(0,1fr);
	gap:clamp(36px,7vw,100px);
	align-items:end;
}

.cc-post-hero h1 {
	max-width:990px;
	font-size:clamp(48px,6vw,82px);
	line-height:.9;
}

.cc-post-hero__grid > p:last-child {
	grid-column:2;
	max-width:650px;
	margin-top:28px;
}

@media (max-width:780px) {
	.cc-journal-hero__grid,
	.cc-post-hero__grid {
		grid-template-columns:1fr;
	}

	.cc-journal-hero h1,
	.cc-post-hero h1 {
		font-size:clamp(46px,14vw,68px);
	}

	.cc-post-hero__grid > p:last-child {
		grid-column:auto;
	}

	.cc-journal-row {
		grid-template-columns:1fr 34px;
	}

	.cc-journal-row time {
		grid-column:1 / 3;
	}

	.cc-journal-row__arrow {
		grid-column:2;
		grid-row:2;
	}
}


/* Journal refinement: tighter rhythm and more readable supporting text. */
.cc-journal-hero,
.cc-post-hero {
	padding: 142px 0 70px;
}

.cc-journal-hero__grid {
	grid-template-columns: 1fr;
	gap: clamp(30px, 5vw, 66px);
}

.cc-journal-hero .cc-overline,
.cc-post-hero .cc-overline {
	margin: 0;
	font-size: 14px;
	line-height: 1.45;
}

.cc-journal-hero h1 {
	font-size: clamp(54px, 6.3vw, 86px);
	line-height: .98;
}

.cc-journal-hero__grid > p:last-child,
.cc-post-hero__grid > p:last-child {
	font-family: var(--cc-sans);
	font-size: 18px;
	line-height: 1.55;
}

.cc-journal-index {
	padding: clamp(62px, 7vw, 92px) 0;
}

.cc-journal-row {
	grid-template-columns: 135px minmax(0, 1fr) 36px;
	gap: clamp(24px, 4vw, 52px);
	padding: 38px 0;
}

.cc-journal-row time,
.cc-journal-row__type {
	font-size: 14px;
	line-height: 1.5;
}

.cc-journal-row__type {
	margin-bottom: 9px;
}

.cc-journal-row h2 {
	margin-bottom: 13px;
	font-size: clamp(30px, 3.15vw, 44px);
	line-height: 1.07;
	letter-spacing: -.04em;
}

.cc-journal-row > div > p:last-child {
	max-width: 760px;
	font-size: 16px;
	line-height: 1.62;
	color: rgba(17,21,19,.68);
}

.cc-journal-row__arrow {
	font-size: 24px;
}

.cc-post-hero__grid {
	grid-template-columns: 150px minmax(0, 1fr);
	gap: clamp(30px, 5vw, 68px);
}

.cc-post-hero h1 {
	max-width: 920px;
	font-size: clamp(44px, 5.25vw, 70px);
	line-height: .98;
	letter-spacing: -.052em;
}

.cc-post-hero__grid > p:last-child {
	max-width: 720px;
	margin-top: 24px;
}

@media (max-width: 780px) {
	.cc-journal-hero,
	.cc-post-hero {
		padding: 108px 0 54px;
	}

	.cc-journal-hero__grid,
	.cc-post-hero__grid {
		gap: 22px;
	}

	.cc-journal-hero h1,
	.cc-post-hero h1 {
		font-size: clamp(44px, 13vw, 62px);
	}

	.cc-journal-hero__grid > p:last-child,
	.cc-post-hero__grid > p:last-child {
		font-size: 17px;
	}

	.cc-journal-index {
		padding: 50px 0 68px;
	}

	.cc-journal-row {
		grid-template-columns: 1fr 30px;
		gap: 10px 18px;
		padding: 32px 0;
	}

	.cc-journal-row time {
		grid-column: 1 / 3;
	}

	.cc-journal-row h2 {
		font-size: clamp(28px, 8.8vw, 38px);
	}

	.cc-journal-row > div > p:last-child {
		font-size: 16px;
	}

	.cc-journal-row__arrow {
		grid-column: 2;
		grid-row: 2;
	}
}

.cc-post-page .cc-prose > p:first-child {
	max-width: 820px;
	font-size: clamp(24px, 2.35vw, 31px);
	line-height: 1.38;
}

@media (max-width: 640px) {
	.cc-post-page .cc-prose > p:first-child {
		font-size: 23px;
		line-height: 1.42;
	}
}

