/* Shared campaign geometry. Typography and commerce remain with their existing owners. */
body.pp2026-campaign-dock-visible {
	padding-bottom: var(--pp2026-campaign-dock-height, 0px);
}
.pp-store-credit-page .pp-store-credit-product__body {
	height: auto;
	min-height: 199px;
}
.pp-store-credit-page .pp-store-credit-product__actions {
	flex: 0 0 auto;
}
.pp-store-credit-page .pp-store-credit-more > h2 {
	display: block;
	max-width: 100%;
}
.pp-store-credit-more > h2::before,
.pp-store-credit-more > h2::after { display: none; }

@media (min-width: 768px) {
	.pp-store-credit-page .pp-store-credit-hero h1 {
		font-size: clamp(48px, 7vw, 83.2px);
		line-height: .98;
	}
	.pp-store-credit-page .pp-store-credit-hero {
		display: grid;
		grid-template-columns: 40% 60%;
		height: calc(100vh - 87px);
		min-height: 620px;
		margin-top: -84px;
	}
	.pp-store-credit-page .pp-store-credit-hero > .pp-store-credit-hero__media {
		position: absolute;
		inset: 0 0 0 40%;
		width: 60%;
		height: 100%;
		aspect-ratio: auto;
	}
	.pp-store-credit-page .pp-store-credit-hero__media img {
		transform: none;
		object-position: center;
	}
	.pp-store-credit-page .pp-store-credit-hero .pp2026-enhanced-department-hero__inner {
		grid-column: 1;
		width: 100%;
		padding: 69px 40px 64px;
		text-align: left;
	}
	.pp-store-credit-page .pp-store-credit-hero .pp2026-enhanced-department-hero__copy {
		width: 100%;
		max-width: 416px;
		margin: 0;
	}
	.pp-store-credit-page .pp-store-credit-hero .pp2026-enhanced-department-hero__copy > a { margin: 0; }
	.pp-store-credit-page .pp-store-credit-steps,
	.pp-store-credit-page .pp-store-credit-more-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.pp-store-credit-page .pp-store-credit-how { height: auto; min-height: 0; }
	.pp-store-credit-page .pp-store-credit-steps article { padding: 24px 32px; border-bottom: 0; border-right: 1px solid #ded7cd; }
	.pp-store-credit-page .pp-store-credit-steps article:last-child { border-right: 0; }
}
@media (min-width: 1280px) {
	.pp-store-credit-page .pp-store-credit-hero .pp2026-enhanced-department-hero__inner { padding-right: 48px; padding-left: 48px; }
}
@media (max-width: 767px) {
	.pp-store-credit-page .pp-store-credit-hero { display: flex; height: auto; min-height: 0; flex-direction: column; }
	.pp-store-credit-page .pp-store-credit-hero > .pp-store-credit-hero__media { position: relative; inset: auto; order: 1; width: 100%; height: 360px; aspect-ratio: auto; }
	.pp-store-credit-page .pp-store-credit-hero__media img { transform: none; }
	.pp-store-credit-page .pp-store-credit-hero .pp2026-enhanced-department-hero__inner { order: 2; height: auto; min-height: 396px; padding: 40px 24px 48px; text-align: center; }
	.pp-store-credit-page .pp-store-credit-hero .pp2026-enhanced-department-hero__copy { width: 100%; max-width: 416px; height: auto; min-height: 0; margin: auto; }
	.pp-store-credit-page .pp-store-credit-hero .pp2026-enhanced-department-hero__copy > a { margin: auto; }
	.pp-store-credit-page .pp-store-credit-how { height: auto; min-height: 0; padding: 40px 20px 24px; }
	.pp-store-credit-page .pp-store-credit-steps,
	.pp-store-credit-page .pp-store-credit-more-cards { grid-template-columns: minmax(0, 1fr); }
	.pp-store-credit-page .pp-store-credit-steps article,
	body.page-template-page-bundles-php .pp2026-bundle-steps__grid article {
		min-height: 0;
		padding: 20px 24px;
		border-right: 0;
		border-bottom: 1px solid #c5b4a247;
	}
	.pp-store-credit-page .pp-store-credit-steps article:last-child,
	body.page-template-page-bundles-php .pp2026-bundle-steps__grid article:last-child { border-bottom: 0; }
	.pp-store-credit-page .pp-store-credit-steps p,
	body.page-template-page-bundles-php .pp2026-bundle-steps__grid p { max-width: 100%; }
	body.page-template-page-bundles-php .pp2026-bundle-hero__copy > :is(p, h1, span) { width: 100%; max-width: 416px; margin-right: auto; margin-left: auto; }
	.pp-store-credit-page .pp-store-credit-grid { grid-template-columns: minmax(0, 1fr); }
	.pp-store-credit-page .pp-store-credit-redemption { padding-right: 16px; padding-left: 16px; }
	.pp-store-credit-page .pp-store-credit-filters { justify-content: flex-start; }
	.pp-store-credit-page .pp-store-credit-mobile-toggle__actions,
	.pp-store-credit-page .pp-store-credit-mobile-actions { grid-template-columns: auto auto minmax(0, 1fr); padding-bottom: max(12px, env(safe-area-inset-bottom, 0px)); }
}
@media (min-width: 640px) and (max-width: 767px) {
	.pp-store-credit-page .pp-store-credit-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
