/* Shared visual system for the six renderer-backed information pages.
 * Everything is rooted in .ppipd-page; affiliates and every other surface stay untouched.
 */

.ppipd-page {
	--ppipd-primary: #5d4f89;
	--ppipd-primary-dark: #4b3f73;
	--ppipd-accent: #6d5bd0;
	--ppipd-ink: #3a2f63;
	--ppipd-text: #48435c;
	--ppipd-muted: #6b6582;
	--ppipd-border: #d1c9e6;
	--ppipd-line: #e7e2f2;
	--ppipd-tint: #f0ecf8;
	--ppipd-tint-soft: #f7f5fb;
	--ppipd-gold: #e8b54a;
	--ppipd-gold-light: #f4d58d;
	--ppipd-gold-ink: #75520a;
	--ppipd-green: #558063;
	--ppipd-white: #fff;
	--ppipd-radius-lg: 28px;
	--ppipd-radius: 18px;
	--ppipd-radius-sm: 12px;
	--ppipd-shadow: 0 2px 4px rgba(58, 47, 99, .05), 0 12px 30px rgba(58, 47, 99, .09);
	--ppipd-shadow-lg: 0 4px 10px rgba(58, 47, 99, .08), 0 30px 58px rgba(58, 47, 99, .16);
	--ppipd-ease: cubic-bezier(.16, 1, .3, 1);
	--ppipd-gap: clamp(16px, 2.2vw, 28px);
	--ppipd-section-y: clamp(46px, 6.5vw, 92px);
	--ppipd-title-font: var(--wd-title-font, inherit);

	position: relative;
	width: 100%;
	max-width: 1220px;
	margin: 0 auto;
	color: var(--ppipd-text);
	font-size: 16px;
	line-height: 1.68;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	overflow-wrap: break-word;
}

.ppipd-page *,
.ppipd-page *::before,
.ppipd-page *::after {
	box-sizing: border-box;
}

.ppipd-page :where(h1, h2, h3, h4) {
	color: var(--ppipd-ink);
	font-family: var(--ppipd-title-font);
	text-transform: none;
	letter-spacing: -.015em;
}

.ppipd-page.ppipd-page :where(h1, h2, h3, p, ul, ol, figure, blockquote, dl) {
	max-width: 100%;
}

.ppipd-page.ppipd-page :where(a:not(.ppipd-btn):not(.ppipd-chip)) {
	color: var(--ppipd-primary);
	text-decoration-line: underline;
	text-decoration-thickness: max(1px, .08em);
	text-underline-offset: 3px;
}

.ppipd-page.ppipd-page :where(a, button, summary, input, select, textarea):focus-visible {
	outline: 3px solid rgba(109, 91, 208, .44);
	outline-offset: 3px;
}

.ppipd-page .ppipd-section {
	position: relative;
	padding-block: var(--ppipd-section-y);
	scroll-margin-top: 96px;
}

.ppipd-page .ppipd-section + .ppipd-section {
	padding-block-start: 0;
}

.ppipd-page .ppipd-section-head {
	max-width: 760px;
	margin-block-end: clamp(24px, 3.2vw, 40px);
}

.ppipd-page .ppipd-section-head::before {
	content: "";
	display: block;
	width: 44px;
	height: 4px;
	margin-block-end: 18px;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--ppipd-primary), var(--ppipd-gold));
}

.ppipd-page.ppipd-page .ppipd-h1,
.ppipd-page.ppipd-page .ppipd-hero h1 {
	margin: 0;
	font-size: clamp(34px, 4.5vw, 56px);
	font-weight: 700;
	line-height: 1.06;
	letter-spacing: -.035em;
	text-wrap: balance;
}

.ppipd-page.ppipd-page .ppipd-h2,
.ppipd-page.ppipd-page .ppipd-section h2 {
	margin: 0 0 16px;
	font-size: clamp(26px, 3vw, 40px);
	font-weight: 700;
	line-height: 1.14;
	letter-spacing: -.025em;
	text-wrap: balance;
}

.ppipd-page.ppipd-page .ppipd-h3,
.ppipd-page.ppipd-page .ppipd-section h3 {
	font-size: clamp(18px, 1.7vw, 21px);
	font-weight: 700;
	line-height: 1.3;
}

/* Hero */
.ppipd-page .ppipd-hero {
	padding-block: clamp(16px, 2.5vw, 32px) var(--ppipd-section-y);
	scroll-margin-top: 88px;
}

.ppipd-page .ppipd-hero-grid {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(260px, .75fr);
	gap: clamp(24px, 4vw, 58px);
	align-items: center;
	min-height: 430px;
	padding: clamp(30px, 5.2vw, 72px);
	border: 1px solid var(--ppipd-line);
	border-radius: var(--ppipd-radius-lg);
	background:
		radial-gradient(850px 420px at 100% -10%, rgba(93, 79, 137, .2), transparent 61%),
		radial-gradient(520px 320px at -5% 110%, rgba(232, 181, 74, .18), transparent 65%),
		linear-gradient(160deg, #fbfafe 0%, var(--ppipd-tint) 100%);
	overflow: hidden;
}

.ppipd-page .ppipd-hero-copy,
.ppipd-page .ppipd-hero-art {
	position: relative;
	z-index: 1;
	min-width: 0;
}

.ppipd-page .ppipd-eyebrow {
	display: inline-flex;
	align-items: center;
	margin: 0 0 20px !important;
	padding: 7px 14px;
	border: 1px solid var(--ppipd-line);
	border-radius: 999px;
	background: rgba(255, 255, 255, .88);
	box-shadow: 0 5px 16px rgba(58, 47, 99, .07);
	color: var(--ppipd-primary);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .04em;
	line-height: 1.2;
	text-transform: uppercase;
}

.ppipd-page.ppipd-page .ppipd-updated {
	margin: 14px 0 0 !important;
	color: var(--ppipd-muted);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: .01em;
	line-height: 1.4;
}

.ppipd-page.ppipd-page .ppipd-lead {
	margin: 18px 0 0 !important;
	max-width: 65ch;
	font-size: clamp(17px, 1.45vw, 19px);
	line-height: 1.62;
	color: var(--ppipd-text);
}

.ppipd-page .ppipd-hero-links,
.ppipd-page .ppipd-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: center;
	margin-block-start: 28px;
}

.ppipd-page .ppipd-hero-art {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 280px;
}

/* Buttons and section chips */
.ppipd-page.ppipd-page :is(.ppipd-btn, .ppipd-chip, .ppipd-hero-links > a, .ppipd-actions > a, button.ppipd-btn) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	min-height: 48px;
	padding: 10px 22px;
	border: 2px solid var(--ppipd-primary);
	border-radius: 999px;
	background: var(--ppipd-primary);
	color: #fff;
	font-family: inherit;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.25;
	text-align: center;
	text-decoration: none;
	text-transform: none;
	box-shadow: 0 11px 25px rgba(93, 79, 137, .27);
	transition: transform .22s var(--ppipd-ease), box-shadow .22s var(--ppipd-ease), background-color .22s, border-color .22s, color .22s;
}

.ppipd-page.ppipd-page :is(.ppipd-btn, .ppipd-chip, .ppipd-hero-links > a, .ppipd-actions > a, button.ppipd-btn):hover {
	transform: translateY(-2px);
	border-color: var(--ppipd-primary-dark);
	background: var(--ppipd-primary-dark);
	color: #fff;
	box-shadow: 0 15px 32px rgba(93, 79, 137, .34);
}

.ppipd-page .ppipd-topic-nav,
.ppipd-page .ppipd-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: stretch;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ppipd-page.ppipd-page .ppipd-topic-nav a,
.ppipd-page.ppipd-page .ppipd-chips a {
	display: inline-flex;
	align-items: center;
	min-height: 42px;
	padding: 8px 16px;
	border: 1px solid var(--ppipd-border);
	border-radius: 999px;
	background: #fff;
	color: var(--ppipd-ink);
	font-weight: 650;
	text-decoration: none;
	transition: transform .2s var(--ppipd-ease), border-color .2s, color .2s, box-shadow .2s;
}

.ppipd-page.ppipd-page .ppipd-topic-nav a:hover,
.ppipd-page.ppipd-page .ppipd-chips a:hover {
	transform: translateY(-2px);
	border-color: var(--ppipd-primary);
	color: var(--ppipd-primary);
	box-shadow: var(--ppipd-shadow);
}

/* Reusable cards */
.ppipd-page .ppipd-cards,
.ppipd-page .ppipd-card-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr));
	gap: var(--ppipd-gap);
	margin: 0;
	padding: 0;
	list-style: none;
}

.ppipd-page.ppipd-page .ppipd-card {
	position: relative;
	min-width: 0;
	padding: clamp(20px, 2.5vw, 28px);
	border: 1px solid var(--ppipd-line);
	border-radius: var(--ppipd-radius);
	background: #fff;
	box-shadow: 0 2px 4px rgba(58, 47, 99, .04);
	transition: transform .25s var(--ppipd-ease), box-shadow .25s var(--ppipd-ease), border-color .25s;
}

.ppipd-page.ppipd-page .ppipd-card:hover {
	transform: translateY(-4px);
	border-color: var(--ppipd-border);
	box-shadow: var(--ppipd-shadow);
}

/* The theme gives every li a bottom margin (last-child 0), which made the last grid item taller. */
.ppipd-page.ppipd-page :is(.ppipd-cards, .ppipd-card-grid, .ppipd-rail, .ppipd-steps) > li {
	margin: 0;
}

.ppipd-page .ppipd-card > :first-child {
	margin-block-start: 0;
}

.ppipd-page .ppipd-card > :last-child {
	margin-block-end: 0;
}

/* Numbered rail, with any number of items. */
.ppipd-page .ppipd-rail,
.ppipd-page .ppipd-steps {
	--ppipd-rail-columns: 3;
	position: relative;
	display: grid;
	grid-template-columns: repeat(var(--ppipd-rail-columns), minmax(0, 1fr));
	gap: var(--ppipd-gap);
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: ppipd-step;
}

.ppipd-page .ppipd-rail::before,
.ppipd-page .ppipd-steps::before {
	content: "";
	position: absolute;
	inset-inline: 9%;
	top: 58px;
	height: 2px;
	background: repeating-linear-gradient(90deg, var(--ppipd-border) 0 8px, transparent 8px 16px);
}

.ppipd-page .ppipd-step {
	position: relative;
	min-width: 0;
	text-align: center;
	counter-increment: ppipd-step;
}

.ppipd-page .ppipd-step-art {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 116px;
	height: 116px;
	margin: 0 auto 18px;
	border: 1px solid var(--ppipd-line);
	border-radius: 50%;
	background: #fff;
	box-shadow: var(--ppipd-shadow);
	transition: transform .28s var(--ppipd-ease), box-shadow .28s var(--ppipd-ease);
}

.ppipd-page .ppipd-step:hover .ppipd-step-art {
	transform: translateY(-4px) scale(1.025);
	box-shadow: var(--ppipd-shadow-lg);
}

.ppipd-page .ppipd-step-num {
	position: absolute;
	inset-block-start: -3px;
	inset-inline-end: -3px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: var(--ppipd-primary);
	color: #fff;
	font-size: 13px;
	font-weight: 800;
	line-height: 1;
	box-shadow: 0 0 0 4px #fff;
}

.ppipd-page .ppipd-step-num:empty::before {
	content: counter(ppipd-step, decimal-leading-zero);
}

/* Feature panels and information strips */
.ppipd-page.ppipd-page :where(.ppipd-dark, .ppipd-dark-panel, .ppipd-panel--dark) {
	padding: clamp(24px, 4vw, 48px);
	border-radius: var(--ppipd-radius-lg);
	background:
		radial-gradient(520px 250px at 100% 0%, rgba(232, 181, 74, .24), transparent 62%),
		linear-gradient(135deg, var(--ppipd-ink), var(--ppipd-primary));
	color: rgba(255, 255, 255, .9);
	box-shadow: var(--ppipd-shadow-lg);
}

.ppipd-page.ppipd-page :is(.ppipd-dark, .ppipd-dark-panel, .ppipd-panel--dark) :is(h2, h3, h4, strong),
.ppipd-page.ppipd-page :is(.ppipd-dark, .ppipd-dark-panel, .ppipd-panel--dark) a {
	color: #fff;
}

.ppipd-page.ppipd-page :is(.ppipd-dark, .ppipd-dark-panel, .ppipd-panel--dark) :where(a:not(.ppipd-btn):not(.ppipd-chip)) {
	text-decoration-line: underline;
	text-decoration-thickness: max(1px, .08em);
	text-underline-offset: 3px;
}

.ppipd-page.ppipd-page :is(.ppipd-dark, .ppipd-dark-panel, .ppipd-panel--dark) :where(a:not(.ppipd-btn):not(.ppipd-chip)):hover {
	color: var(--ppipd-gold-light);
}

.ppipd-page.ppipd-page :where(.ppipd-info, .ppipd-info-strip) {
	padding: clamp(18px, 2.6vw, 28px);
	border: 1px solid var(--ppipd-border);
	border-radius: var(--ppipd-radius);
	background: linear-gradient(135deg, var(--ppipd-tint-soft), #fff);
	color: var(--ppipd-text);
}

.ppipd-page.ppipd-page :where(.ppipd-dark, .ppipd-dark-panel, .ppipd-panel--dark, .ppipd-info, .ppipd-info-strip) > :first-child {
	margin-block-start: 0;
}

.ppipd-page.ppipd-page :where(.ppipd-dark, .ppipd-dark-panel, .ppipd-panel--dark, .ppipd-info, .ppipd-info-strip) > :last-child {
	margin-block-end: 0;
}

/* Native details accordions */
.ppipd-page .ppipd-details,
.ppipd-page .ppipd-faq-list {
	display: grid;
	gap: 12px;
}

.ppipd-page.ppipd-page :where(.ppipd-detail, .ppipd-qa) {
	border: 1px solid var(--ppipd-line);
	border-radius: var(--ppipd-radius);
	background: #fff;
	overflow: clip;
	transition: border-color .22s, box-shadow .22s;
}

.ppipd-page.ppipd-page :where(.ppipd-detail, .ppipd-qa)[open] {
	border-color: var(--ppipd-border);
	box-shadow: var(--ppipd-shadow);
}

.ppipd-page.ppipd-page :where(.ppipd-detail, .ppipd-qa) > summary {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	min-height: 62px;
	padding: 17px 54px 17px 22px;
	color: var(--ppipd-ink);
	font-size: 17px;
	font-weight: 700;
	line-height: 1.4;
	list-style: none;
	cursor: pointer;
}

.ppipd-page.ppipd-page :where(.ppipd-detail, .ppipd-qa) > summary::-webkit-details-marker {
	display: none;
}

.ppipd-page.ppipd-page :where(.ppipd-detail, .ppipd-qa) > summary::marker {
	content: "";
}

.ppipd-page.ppipd-page :where(.ppipd-detail, .ppipd-qa) > summary::after {
	content: "";
	position: absolute;
	inset-inline-end: 23px;
	width: 10px;
	height: 10px;
	border-inline-end: 2px solid var(--ppipd-primary);
	border-block-end: 2px solid var(--ppipd-primary);
	transform: rotate(45deg) translateY(-3px);
	transition: transform .25s var(--ppipd-ease);
}

.ppipd-page.ppipd-page :where(.ppipd-detail, .ppipd-qa)[open] > summary::after {
	transform: rotate(225deg) translate(-2px, -2px);
}

.ppipd-page .ppipd-detail-body,
.ppipd-page .ppipd-qa-answer {
	padding: 0 22px 20px;
	color: var(--ppipd-text);
}

/* Closing CTA */
.ppipd-page.ppipd-page .ppipd-cta {
	position: relative;
	padding: clamp(32px, 6vw, 76px) clamp(22px, 5vw, 68px);
	border-radius: var(--ppipd-radius-lg);
	background:
		radial-gradient(500px 260px at 100% 0%, rgba(232, 181, 74, .34), transparent 62%),
		radial-gradient(600px 320px at 0 100%, rgba(140, 123, 196, .45), transparent 61%),
		linear-gradient(135deg, var(--ppipd-ink), var(--ppipd-primary));
	color: rgba(255, 255, 255, .9);
	text-align: center;
	overflow: hidden;
}

.ppipd-page.ppipd-page .ppipd-cta :where(h2, h3, strong) {
	color: #fff;
}

.ppipd-page.ppipd-page .ppipd-cta > :where(p, h2, h3) {
	max-width: 65ch;
	margin-inline: auto;
}

.ppipd-page.ppipd-page .ppipd-cta :where(a:not(.ppipd-btn):not(.ppipd-chip)) {
	color: #fff;
	text-decoration-line: underline;
	text-decoration-thickness: max(1px, .08em);
	text-underline-offset: 3px;
}

.ppipd-page.ppipd-page .ppipd-cta :where(a:not(.ppipd-btn):not(.ppipd-chip)):hover {
	color: var(--ppipd-gold-light);
}

.ppipd-page .ppipd-cta .ppipd-actions {
	justify-content: center;
}

.ppipd-page.ppipd-page .ppipd-cta :is(.ppipd-btn, .ppipd-actions > a),
.ppipd-page.ppipd-page :is(.ppipd-dark, .ppipd-dark-panel, .ppipd-panel--dark) :is(.ppipd-btn, .ppipd-actions > a) {
	border-color: #fff;
	background: #fff;
	color: var(--ppipd-ink);
	text-decoration: none;
	box-shadow: 0 12px 30px rgba(24, 17, 50, .28);
}

.ppipd-page.ppipd-page .ppipd-cta :is(.ppipd-btn, .ppipd-actions > a):hover,
.ppipd-page.ppipd-page :is(.ppipd-dark, .ppipd-dark-panel, .ppipd-panel--dark) :is(.ppipd-btn, .ppipd-actions > a):hover {
	border-color: var(--ppipd-gold);
	background: var(--ppipd-gold);
	color: var(--ppipd-ink);
}

/* Stable Lottie geometry before the player or JSON exists. */
.ppipd-page .ppipd-animation {
	position: relative;
	display: block;
	flex: 0 0 auto;
	width: 92px;
	aspect-ratio: 1;
	line-height: 0;
	contain: layout paint;
}

.ppipd-page .ppipd-animation--hero {
	width: min(260px, 100%);
}

.ppipd-page .ppipd-animation--section {
	width: 150px;
}

.ppipd-page .ppipd-animation--step {
	width: 84px;
}

.ppipd-page .ppipd-animation--small {
	width: 68px;
}

.ppipd-page .ppipd-animation svg {
	display: block;
	width: 100% !important;
	height: 100% !important;
}

.ppipd-page .ppipd-animation.is-failed::after {
	content: "";
	position: absolute;
	inset: 12%;
	border: 1px dashed var(--ppipd-border);
	border-radius: 50%;
	background: rgba(255, 255, 255, .35);
}

/* Tables remain semantic; phones scroll instead of losing columns. */
.ppipd-page .ppipd-table-wrap {
	width: 100%;
	max-width: 100%;
	overflow-x: auto;
	overscroll-behavior-inline: contain;
	-webkit-overflow-scrolling: touch;
	border: 1px solid var(--ppipd-line);
	border-radius: var(--ppipd-radius);
}

.ppipd-page.ppipd-page .ppipd-table-wrap table {
	width: 100%;
	min-width: 620px;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	background: #fff;
}

.ppipd-page.ppipd-page .ppipd-table-wrap :where(th, td) {
	padding: 14px 16px;
	border: 0;
	border-block-end: 1px solid var(--ppipd-line);
	vertical-align: top;
	text-align: start;
	white-space: normal;
}

.ppipd-page.ppipd-page .ppipd-table-wrap th {
	background: var(--ppipd-tint-soft);
	color: var(--ppipd-ink);
	font-weight: 700;
}

.ppipd-page.ppipd-page .ppipd-table-wrap tr:last-child > * {
	border-block-end: 0;
}

/* Progressive reveal: JS only applies this below the initial viewport. */
.ppipd-page.ppipd-js .ppipd-reveal:not(.ppipd-card) {
	opacity: 0;
	filter: blur(3px);
	transform: translateY(18px);
	transition: opacity .55s var(--ppipd-ease), filter .55s var(--ppipd-ease), transform .55s var(--ppipd-ease);
	transition-delay: calc(var(--ppipd-i, 0) * 65ms);
}

.ppipd-page.ppipd-js .ppipd-card.ppipd-reveal {
	opacity: 0;
	filter: blur(3px);
	transform: translateY(18px);
	transition: opacity .55s var(--ppipd-ease), filter .55s var(--ppipd-ease), transform .55s var(--ppipd-ease), box-shadow .25s var(--ppipd-ease), border-color .25s;
	transition-delay: calc(var(--ppipd-i, 0) * 65ms), calc(var(--ppipd-i, 0) * 65ms), calc(var(--ppipd-i, 0) * 65ms), 0s, 0s;
}

.ppipd-page.ppipd-js .ppipd-reveal.is-in {
	opacity: 1;
	filter: none;
	transform: none;
}

.ppipd-page.ppipd-js .ppipd-card.ppipd-reveal.is-in:hover {
	transform: translateY(-4px);
}

@media (max-width: 960px) {
	.ppipd-page .ppipd-hero-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.ppipd-page .ppipd-hero-art {
		min-height: 230px;
	}

	/* !important: renderers set the desktop column count inline (style="--ppipd-rail-columns:N"),
	   and an inline custom property otherwise beats every media query. */
	.ppipd-page .ppipd-rail,
	.ppipd-page .ppipd-steps {
		--ppipd-rail-columns: 2 !important;
	}

	.ppipd-page .ppipd-rail::before,
	.ppipd-page .ppipd-steps::before {
		display: none;
	}
}

@media (max-width: 640px) {
	.ppipd-page {
		font-size: 15.5px;
	}

	.ppipd-page .ppipd-hero-grid {
		min-height: 0;
		padding: 27px 20px 30px;
		border-radius: 22px;
	}

	.ppipd-page .ppipd-hero-art {
		min-height: 190px;
	}

	.ppipd-page .ppipd-animation--hero {
		width: 190px;
	}

	.ppipd-page .ppipd-animation--section {
		width: 116px;
	}

	.ppipd-page .ppipd-rail,
	.ppipd-page .ppipd-steps {
		--ppipd-rail-columns: 1 !important;
		gap: 22px;
	}

	.ppipd-page .ppipd-step {
		display: grid;
		grid-template-columns: 92px minmax(0, 1fr);
		column-gap: 16px;
		align-items: center;
		text-align: start;
	}

	.ppipd-page .ppipd-step-art {
		grid-row: span 2;
		width: 92px;
		height: 92px;
		margin: 0;
		align-self: start;
	}

	.ppipd-page .ppipd-animation--step {
		width: 68px;
	}

	.ppipd-page .ppipd-step-num {
		width: 28px;
		height: 28px;
		font-size: 12px;
	}

	.ppipd-page.ppipd-page :where(.ppipd-detail, .ppipd-qa) > summary {
		padding: 16px 48px 16px 17px;
		font-size: 16px;
	}

	.ppipd-page .ppipd-detail-body,
	.ppipd-page .ppipd-qa-answer {
		padding: 0 17px 18px;
	}

	.ppipd-page .ppipd-hero-links > a,
	.ppipd-page .ppipd-actions > a {
		flex: 1 1 100%;
	}
}

/* Elementor globally disables transitions for reduced motion. Product direction keeps
 * this page's animation/reveal alive; only smooth scrolling is disabled by JS/CSS. */
@media (prefers-reduced-motion: reduce) {
	html .ppipd-page {
		scroll-behavior: auto !important;
	}

	html .ppipd-page :where(.ppipd-btn, .ppipd-chip, .ppipd-hero-links > a, .ppipd-actions > a, .ppipd-topic-nav a, .ppipd-chips a) {
		transition: transform .22s var(--ppipd-ease), box-shadow .22s var(--ppipd-ease), background-color .22s, border-color .22s, color .22s !important;
	}

	html .ppipd-page .ppipd-card {
		transition: transform .25s var(--ppipd-ease), box-shadow .25s var(--ppipd-ease), border-color .25s !important;
	}

	html .ppipd-page .ppipd-step-art {
		transition: transform .28s var(--ppipd-ease), box-shadow .28s var(--ppipd-ease) !important;
	}

	html .ppipd-page :where(.ppipd-detail, .ppipd-qa) {
		transition: border-color .22s, box-shadow .22s !important;
	}

	html .ppipd-page :where(.ppipd-detail, .ppipd-qa) > summary::after {
		transition: transform .25s var(--ppipd-ease) !important;
	}

	html .ppipd-page.ppipd-js .ppipd-reveal {
		transition: opacity .55s var(--ppipd-ease), filter .55s var(--ppipd-ease), transform .55s var(--ppipd-ease) !important;
		transition-delay: calc(var(--ppipd-i, 0) * 65ms) !important;
	}

	html .ppipd-page.ppipd-js .ppipd-card.ppipd-reveal {
		transition: opacity .55s var(--ppipd-ease), filter .55s var(--ppipd-ease), transform .55s var(--ppipd-ease), box-shadow .25s var(--ppipd-ease), border-color .25s !important;
		transition-delay: calc(var(--ppipd-i, 0) * 65ms), calc(var(--ppipd-i, 0) * 65ms), calc(var(--ppipd-i, 0) * 65ms), 0s, 0s !important;
	}
}

@media print {
	.ppipd-page .ppipd-animation {
		display: none !important;
	}

	.ppipd-page.ppipd-js .ppipd-reveal {
		opacity: 1;
		filter: none;
		transform: none;
	}

	.ppipd-page .ppipd-detail:not([open]) > :not(summary),
	.ppipd-page .ppipd-qa:not([open]) > :not(summary) {
		display: block;
	}
}
