/* =============================================================
   SHISEILABO Core — HOME アニメーション
   ※ .slabo-reveal は JS が付与（JS無効時は通常表示）
   ============================================================= */

.slabo-animate-home .slabo-reveal {
	opacity: 0;
	transform: translateY(34px);
	transition:
		opacity .8s var(--slabo-ease, cubic-bezier(.16,1,.3,1)),
		transform .8s var(--slabo-ease, cubic-bezier(.16,1,.3,1));
	will-change: opacity, transform;
}
.slabo-animate-home .slabo-reveal.is-visible {
	opacity: 1;
	transform: none;
}

/* 子要素のスタッグ（グリッド/カラム/カード群） */
.slabo-animate-home .slabo-stagger > * {
	opacity: 0;
	transform: translateY(26px);
	transition:
		opacity .7s var(--slabo-ease, cubic-bezier(.16,1,.3,1)),
		transform .7s var(--slabo-ease, cubic-bezier(.16,1,.3,1));
}
.slabo-animate-home .slabo-stagger.is-visible > * {
	opacity: 1;
	transform: none;
}
/* スタッグ遅延（最大8要素） */
.slabo-animate-home .slabo-stagger.is-visible > *:nth-child(1) { transition-delay: .00s; }
.slabo-animate-home .slabo-stagger.is-visible > *:nth-child(2) { transition-delay: .08s; }
.slabo-animate-home .slabo-stagger.is-visible > *:nth-child(3) { transition-delay: .16s; }
.slabo-animate-home .slabo-stagger.is-visible > *:nth-child(4) { transition-delay: .24s; }
.slabo-animate-home .slabo-stagger.is-visible > *:nth-child(5) { transition-delay: .32s; }
.slabo-animate-home .slabo-stagger.is-visible > *:nth-child(6) { transition-delay: .40s; }
.slabo-animate-home .slabo-stagger.is-visible > *:nth-child(7) { transition-delay: .48s; }
.slabo-animate-home .slabo-stagger.is-visible > *:nth-child(n+8) { transition-delay: .56s; }

/* ヒーロー（最初の cover）の緩やかなズーム */
.slabo-animate-home .slabo-hero-kenburns > .wp-block-cover__image-background,
.slabo-animate-home .slabo-hero-kenburns > .wp-block-cover__video-background {
	animation: slaboKenburns 18s ease-out both;
}
@keyframes slaboKenburns {
	from { transform: scale(1.12); }
	to   { transform: scale(1); }
}

/* カード/ボタンのホバー演出（lpブロック等） */
.slabo-animate-home .wp-block-lpc-blocks-label-card,
.slabo-animate-home .wp-block-lpc-blocks-original-button a,
.slabo-animate-home .wp-block-button__link {
	transition: transform .3s var(--slabo-ease, ease), box-shadow .3s var(--slabo-ease, ease);
}
.slabo-animate-home .wp-block-lpc-blocks-label-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 16px 40px rgba(0,0,0,.12);
}
.slabo-animate-home .wp-block-lpc-blocks-original-button a:hover,
.slabo-animate-home .wp-block-button__link:hover {
	transform: translateY(-2px);
}

@media (prefers-reduced-motion: reduce) {
	.slabo-animate-home .slabo-reveal,
	.slabo-animate-home .slabo-stagger > *,
	.slabo-animate-home .slabo-hero-kenburns > .wp-block-cover__image-background {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
		animation: none !important;
	}
}
