.pc-footer {
	margin-top: var(--pc-s9);
	padding-top: var(--pc-s8);
	background: linear-gradient(180deg, transparent, var(--pc-cream-2) 30%, var(--pc-cream-2));
	color: var(--pc-ink);
	position: relative;
}
.pc-footer::before {
	content: '';
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 80px;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'><path fill='%23F4ECDF' d='M0 40 Q120 0 240 40 T480 40 T720 40 T960 40 T1200 40 T1440 40 V80 H0 Z'/></svg>");
	background-size: cover;
	background-repeat: no-repeat;
}

.pc-footer__grid {
	display: grid;
	grid-template-columns: 1.2fr 1fr 1.4fr;
	gap: var(--pc-s8);
	padding-bottom: var(--pc-s7);
}

.pc-footer__wordmark {
	font-family: var(--pc-font-display);
	font-size: 1.7rem;
	font-weight: 600;
	display: block;
	margin-bottom: var(--pc-s3);
}
.pc-footer__tagline { color: var(--pc-fg-soft); max-width: 32ch; }

.pc-footer__list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: var(--pc-s3); }
.pc-footer__list a { color: var(--pc-ink); font-weight: 500; }

.pc-footer__newsletter label {
	font-family: var(--pc-font-display);
	font-size: 1.4rem;
	font-weight: 500;
	margin-bottom: var(--pc-s3);
	display: block;
}

.pc-footer__bottom {
	border-top: 1px solid var(--pc-line);
	padding-block: var(--pc-s5);
	color: var(--pc-fg-soft);
	font-size: var(--pc-fs-small);
	text-align: center;
}

@media (max-width: 880px) {
	.pc-footer__grid { grid-template-columns: 1fr; gap: var(--pc-s6); }
}
