/**
 * SWELL 子テーマ共通シェル（記事・アーカイブ等）のヘッダー下アンカー調整・サイトフッター。
 * 本文の .l-content 内スタイルには極力触れない。
 */

:root {
	/* スティッキーヘッダー相当のスクロールマージン（SWELL目次アンカー用）。必要に応じて上書き可 */
	--pestbook-shell-scroll-padding: 72px;
}

html:has(#body_wrap .pestbook-area-selector[data-mode="header"]) {
	scroll-padding-top: var(--pestbook-shell-scroll-padding);
}

/* サイト共通フッター（pestbook-app.css の LP フッターと同等トーン・別セレクタで記事本文への干渉を抑制） */
.l-footer {
	background: #081627;
	margin: 0;
}

.l-footer .pestbook-site-footer-inner {
	max-width: 1120px;
	margin: 0 auto;
	padding: 44px 16px 24px;
	font-size: 13px;
	color: #98a6bf;
}

.pestbook-site-footer__grid {
	display: grid;
	grid-template-columns: 2fr 1fr 1fr 1fr;
	gap: 28px;
	margin-bottom: 28px;
}

@media (max-width: 820px) {
	.pestbook-site-footer__grid {
		grid-template-columns: 1fr 1fr;
	}
}

.pestbook-site-footer__logo {
	color: #fff;
	font-weight: 800;
	font-size: 15px;
	margin-bottom: 8px;
}

.pestbook-site-footer__lead {
	line-height: 1.6;
}

.pestbook-site-footer__h {
	color: #fff;
	margin: 0 0 12px;
	font-size: 13px;
	font-weight: 700;
}

.pestbook-site-footer__list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.pestbook-site-footer__list a {
	color: #98a6bf;
	text-decoration: none;
}

.pestbook-site-footer__list a:hover {
	color: #fff;
}

.pestbook-site-footer__muted {
	opacity: 0.75;
	cursor: default;
}

.pestbook-site-footer__bot {
	padding-top: 8px;
	border-top: 1px solid rgba(152, 166, 191, 0.25);
	font-size: 12px;
	line-height: 1.5;
}
