/*
 * PixlDeals — pages de confiance, formulaires et footer global.
 * Cette feuille reste autonome afin de ne pas modifier les surfaces produit.
 */

:root,
[data-pxl-theme="dark"] {
	--pde-sf-page: #0e0e12;
	--pde-sf-surface: #13131a;
	--pde-sf-raised: #1b1b24;
	--pde-sf-control: #20202a;
	--pde-sf-border: #30303d;
	--pde-sf-border-strong: #494959;
	--pde-sf-text: #ffffff;
	--pde-sf-muted: #b7b7c3;
	--pde-sf-subtle: #9292a0;
	--pde-sf-accent: #e5163a;
	--pde-sf-accent-hover: #c8102e;
	--pde-sf-accent-soft: #3b151f;
	--pde-sf-success: #31ba7c;
	--pde-sf-success-soft: #133426;
	--pde-sf-warning: #f4b02c;
	--pde-sf-warning-soft: #3a2b10;
	--pde-sf-danger: #ff6b82;
	--pde-sf-danger-soft: #401720;
	--pde-sf-shadow: 0 18px 46px #08080c;
}

[data-pxl-theme="light"] {
	--pde-sf-page: #f2f1ed;
	--pde-sf-surface: #ffffff;
	--pde-sf-raised: #ebeae5;
	--pde-sf-control: #ffffff;
	--pde-sf-border: #d4d3ce;
	--pde-sf-border-strong: #a8a7a2;
	--pde-sf-text: #111117;
	--pde-sf-muted: #555563;
	--pde-sf-subtle: #6e6e79;
	--pde-sf-accent: #c8102e;
	--pde-sf-accent-hover: #a90d26;
	--pde-sf-accent-soft: #f7d9df;
	--pde-sf-success: #177548;
	--pde-sf-success-soft: #d8eee3;
	--pde-sf-warning: #835700;
	--pde-sf-warning-soft: #f8e8bf;
	--pde-sf-danger: #a90d26;
	--pde-sf-danger-soft: #f7d9df;
	--pde-sf-shadow: 0 18px 44px #c8c7c2;
}

/* Le footer historique figé et le footer vide du thème cèdent la place au footer de confiance. */
.pxl-footer,
#colophon.site-footer,
footer.site-footer:not(.pde-trust-footer) {
	display: none !important;
}

/* Kadence rend son propre bandeau de titre avant le contenu géré ici. */
body.pde-site-foundation-page .entry-hero.page-hero-section {
	display: none;
}

/* Ces pages rendent déjà la navigation PixlDeals complète dans leur contenu. */
body.pde-site-foundation-page #masthead,
body.pde-site-foundation-page header.site-header {
	display: none !important;
}

/* Le socle remplit le viewport sans hériter du cadre éditorial Kadence. */
body.pde-site-foundation-page .content-area,
body.pde-site-foundation-page #primary,
body.pde-site-foundation-page .content-area > .content-container.site-container,
body.pde-site-foundation-page .content-area .site-main,
body.pde-site-foundation-page .content-area .content-wrap,
body.pde-site-foundation-page .content-area article.entry,
body.pde-site-foundation-page .content-area .entry-content-wrap,
body.pde-site-foundation-page .content-area .entry-content {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Le parent est désormais pleine largeur : aucune compensation viewport n'est nécessaire. */
body.pde-site-foundation-page .entry-content-wrap .pxl-nav {
	width: 100% !important;
	max-width: none !important;
	margin-top: 0 !important;
	margin-left: 0 !important;
}

body.pde-site-foundation-page .pxl-price-pref-btn {
	min-height: 44px;
}

.pde-sf-page,
.pde-trust-footer {
	box-sizing: border-box;
	color: var(--pde-sf-text);
	font-family: "DM Sans", sans-serif;
}

.pde-sf-page *,
.pde-sf-page *::before,
.pde-sf-page *::after,
.pde-trust-footer *,
.pde-trust-footer *::before,
.pde-trust-footer *::after {
	box-sizing: inherit;
}

.pde-sf-page {
	width: 100%;
	min-width: 0;
	margin: 0;
	background: var(--pde-sf-page);
	color: var(--pde-sf-text);
	font-size: 1rem;
	line-height: 1.68;
	overflow-wrap: anywhere;
}

.pde-sf-shell,
.pde-trust-footer-inner {
	width: min(1180px, calc(100% - 56px));
	margin-inline: auto;
}

.pde-sf-hero {
	position: relative;
	isolation: isolate;
	padding: clamp(64px, 8vw, 108px) 0 clamp(46px, 6vw, 76px);
	background: var(--pde-sf-surface);
	border-bottom: 1px solid var(--pde-sf-border);
	overflow: hidden;
	animation: pde-sf-arrive 440ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

@keyframes pde-sf-arrive {
	from {
		transform: translateY(10px);
		filter: blur(3px);
	}
	to {
		transform: translateY(0);
		filter: blur(0);
	}
}

.pde-sf-hero .pde-sf-shell {
	position: relative;
	z-index: 1;
}

.pde-sf-hero h1 {
	max-width: 900px;
	margin: 0;
	color: var(--pde-sf-text);
	font-family: "Russo One", sans-serif;
	font-size: clamp(2.15rem, 5.2vw, 4.5rem);
	font-weight: 400;
	letter-spacing: -0.035em;
	line-height: 1.04;
	text-wrap: balance;
}

.pde-sf-hero h1 strong {
	color: var(--pde-sf-accent);
	font-weight: inherit;
}

.pde-sf-hero p {
	max-width: 720px;
	margin: 22px 0 0;
	color: var(--pde-sf-muted);
	font-size: clamp(1rem, 1.7vw, 1.16rem);
	line-height: 1.62;
}

.pde-sf-hero-pixels {
	position: absolute;
	top: 30px;
	right: max(28px, calc((100vw - 1180px) / 2));
	display: grid;
	grid-template-columns: repeat(4, 12px);
	gap: 7px;
	width: max-content;
	transform: rotate(-4deg);
	pointer-events: none;
}

.pde-sf-hero-pixels > * {
	display: block;
	width: 12px;
	height: 12px;
	background: var(--pde-sf-accent);
}

.pde-sf-hero-pixels > :nth-child(2),
.pde-sf-hero-pixels > :nth-child(5),
.pde-sf-hero-pixels > :nth-child(8) {
	background: var(--pde-sf-accent-soft);
}

.pde-sf-hero-pixels > :nth-child(3),
.pde-sf-hero-pixels > :nth-child(6) {
	visibility: hidden;
}

.pde-sf-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 46px;
	align-items: start;
	padding-block: clamp(48px, 7vw, 86px) clamp(72px, 9vw, 118px);
}

.pde-sf-toc {
	min-width: 0;
	padding: 18px;
	background: var(--pde-sf-surface);
	border: 1px solid var(--pde-sf-border);
	border-radius: 14px;
}

.pde-sf-toc > strong,
.pde-sf-toc > h2 {
	display: block;
	margin: 0 0 12px;
	color: var(--pde-sf-text);
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.05em;
	line-height: 1.3;
	text-transform: uppercase;
}

.pde-sf-toc ul {
	display: flex;
	gap: 8px;
	margin: 0;
	padding: 0 0 4px;
	list-style: none;
	overflow-x: auto;
	overscroll-behavior-inline: contain;
	scrollbar-color: var(--pde-sf-border-strong) var(--pde-sf-surface);
}

.pde-sf-toc li {
	flex: 0 0 auto;
	margin: 0;
}

.pde-sf-toc a {
	display: flex;
	align-items: center;
	min-height: 44px;
	padding: 8px 11px;
	color: var(--pde-sf-muted);
	background: var(--pde-sf-raised);
	border: 1px solid var(--pde-sf-border);
	border-radius: 8px;
	font-size: 0.84rem;
	font-weight: 700;
	line-height: 1.25;
	text-decoration: none;
	transition: color 160ms ease, border-color 160ms ease, background-color 160ms ease;
}

.pde-sf-toc a:hover {
	color: var(--pde-sf-text);
	background: var(--pde-sf-control);
	border-color: var(--pde-sf-border-strong);
}

.pde-sf-content {
	width: min(100%, 760px);
	min-width: 0;
}

.pde-sf-content > :first-child,
.pde-sf-section > :first-child {
	margin-top: 0;
}

.pde-sf-content > :last-child,
.pde-sf-section > :last-child {
	margin-bottom: 0;
}

.pde-sf-section {
	padding: 0 0 44px;
	margin: 0 0 44px;
	border-bottom: 1px solid var(--pde-sf-border);
	scroll-margin-top: 110px;
}

.pde-sf-section:last-child {
	padding-bottom: 0;
	margin-bottom: 0;
	border-bottom: 0;
}

.pde-sf-content h2,
.pde-sf-content h3 {
	color: var(--pde-sf-text);
	font-family: "DM Sans", sans-serif;
	text-wrap: balance;
}

.pde-sf-content h2 {
	margin: 0 0 18px;
	font-size: clamp(1.55rem, 3vw, 2.05rem);
	font-weight: 800;
	letter-spacing: -0.025em;
	line-height: 1.18;
}

.pde-sf-content h3 {
	margin: 32px 0 10px;
	font-size: 1.16rem;
	font-weight: 800;
	line-height: 1.3;
}

.pde-sf-content p,
.pde-sf-content li,
.pde-sf-content dd {
	color: var(--pde-sf-muted);
}

.pde-sf-content p {
	margin: 0 0 18px;
}

.pde-sf-content ul,
.pde-sf-content ol {
	margin: 18px 0 24px;
	padding-left: 1.3rem;
}

.pde-sf-content li + li {
	margin-top: 9px;
}

.pde-sf-content li::marker {
	color: var(--pde-sf-accent);
	font-weight: 800;
}

.pde-sf-content a,
.pde-trust-footer a {
	color: var(--pde-sf-text);
	text-decoration-color: var(--pde-sf-accent);
	text-decoration-thickness: 1px;
	text-underline-offset: 4px;
}

.pde-sf-content a:hover,
.pde-trust-footer a:hover {
	color: var(--pde-sf-accent);
}

.pde-sf-content strong,
.pde-sf-content dt {
	color: var(--pde-sf-text);
}

.pde-sf-content dl {
	display: grid;
	grid-template-columns: minmax(145px, 0.65fr) minmax(0, 1.35fr);
	gap: 14px 24px;
	margin: 24px 0;
}

.pde-sf-content dt,
.pde-sf-content dd {
	margin: 0;
}

.pde-sf-content .pde-sf-card-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	margin: 24px 0;
}

.pde-sf-card-grid > article {
	min-width: 0;
	padding: 22px;
	background: var(--pde-sf-surface);
	border: 1px solid var(--pde-sf-border);
	border-radius: 14px;
}

.pde-sf-card-grid > article > :first-child {
	margin-top: 0;
}

.pde-sf-card-grid > article > :last-child {
	margin-bottom: 0;
}

.pde-sf-facts {
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 1px !important;
	padding: 1px;
	background: var(--pde-sf-border);
	border-radius: 14px;
	overflow: hidden;
}

.pde-sf-facts > div {
	min-width: 0;
	padding: 16px 18px;
	background: var(--pde-sf-surface);
}

.pde-sf-facts dt {
	margin-bottom: 5px;
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.pde-sf-processing {
	display: block !important;
	border-block: 1px solid var(--pde-sf-border);
}

.pde-sf-processing > div {
	display: grid;
	grid-template-columns: minmax(120px, 0.42fr) minmax(0, 1.58fr);
	gap: 18px;
	padding: 16px 0;
}

.pde-sf-processing > div + div {
	border-top: 1px solid var(--pde-sf-border);
}

.pde-sf-table-wrap {
	max-width: 100%;
	margin: 26px 0;
	border: 1px solid var(--pde-sf-border);
	border-radius: 14px;
	overflow-x: auto;
	overscroll-behavior-inline: contain;
}

.pde-sf-content .pde-sf-table-wrap > table {
	display: table;
	min-width: 560px;
	margin: 0;
	overflow: visible;
}

.pde-sf-content table {
	display: block;
	width: 100%;
	max-width: 100%;
	margin: 26px 0;
	border-collapse: collapse;
	overflow-x: auto;
	white-space: normal;
}

.pde-sf-content th,
.pde-sf-content td {
	min-width: 150px;
	padding: 14px 16px;
	border-bottom: 1px solid var(--pde-sf-border);
	text-align: left;
	vertical-align: top;
}

.pde-sf-content th {
	color: var(--pde-sf-text);
	background: var(--pde-sf-raised);
	font-size: 0.84rem;
	font-weight: 800;
}

.pde-sf-content td {
	color: var(--pde-sf-muted);
	background: var(--pde-sf-surface);
}

.pde-sf-callout {
	margin: 28px 0;
	padding: 22px 24px;
	color: var(--pde-sf-muted);
	background: var(--pde-sf-raised);
	border: 1px solid var(--pde-sf-border);
	border-radius: 14px;
}

.pde-sf-callout[data-tone="accent"] {
	background: var(--pde-sf-accent-soft);
	border-color: var(--pde-sf-accent);
}

.pde-sf-callout[data-tone="success"] {
	background: var(--pde-sf-success-soft);
	border-color: var(--pde-sf-success);
}

.pde-sf-callout[data-tone="warning"] {
	background: var(--pde-sf-warning-soft);
	border-color: var(--pde-sf-warning);
}

.pde-sf-callout strong:first-child {
	display: block;
	margin-bottom: 6px;
}

/* Mode Operate : formulaire public, dense et explicite. */
.pde-sf-form {
	width: 100%;
	margin-top: 30px;
	padding: clamp(22px, 4vw, 34px);
	background: var(--pde-sf-surface);
	border: 1px solid var(--pde-sf-border);
	border-radius: 14px;
	box-shadow: var(--pde-sf-shadow);
}

.pde-sf-form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 22px 18px;
}

.pde-sf-field {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 8px;
}

.pde-sf-field-full {
	grid-column: 1 / -1;
}

.pde-sf-label {
	color: var(--pde-sf-text);
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1.35;
}

.pde-sf-label small,
.pde-sf-field > small,
.pde-sf-help {
	color: var(--pde-sf-subtle);
	font-size: 0.8rem;
	font-weight: 500;
	line-height: 1.45;
}

.pde-sf-input,
.pde-sf-form input:not([type="hidden"]):not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.pde-sf-form select,
.pde-sf-form textarea {
	width: 100%;
	min-width: 0;
	min-height: 48px;
	padding: 12px 14px;
	color: var(--pde-sf-text);
	background: var(--pde-sf-control);
	border: 1px solid var(--pde-sf-border-strong);
	border-radius: 8px;
	font: inherit;
	line-height: 1.4;
	transition: border-color 150ms ease, background-color 150ms ease, box-shadow 150ms ease;
}

.pde-sf-form textarea.pde-sf-input,
.pde-sf-form textarea {
	min-height: 148px;
	resize: vertical;
}

.pde-sf-input::placeholder,
.pde-sf-form input::placeholder,
.pde-sf-form textarea::placeholder {
	color: var(--pde-sf-subtle);
}

.pde-sf-input:hover,
.pde-sf-form input:not([type="hidden"]):not([type="submit"]):hover,
.pde-sf-form select:hover,
.pde-sf-form textarea:hover {
	border-color: var(--pde-sf-text);
}

.pde-sf-input:focus-visible,
.pde-sf-form input:focus-visible,
.pde-sf-form select:focus-visible,
.pde-sf-form textarea:focus-visible,
.pde-sf-submit:focus-visible,
.pde-sf-toc a:focus-visible,
.pde-trust-footer a:focus-visible {
	outline: 2px solid var(--pde-sf-accent);
	outline-offset: 3px;
}

.pde-sf-input[aria-invalid="true"],
.pde-sf-form input[aria-invalid="true"],
.pde-sf-form select[aria-invalid="true"],
.pde-sf-form textarea[aria-invalid="true"] {
	border-color: var(--pde-sf-danger);
	box-shadow: 0 0 0 2px var(--pde-sf-danger-soft);
}

.pde-sf-file {
	position: relative;
	display: flex;
	min-height: 52px;
	align-items: center;
	gap: 12px;
	padding: 7px;
	background: var(--pde-sf-raised);
	border: 1px dashed var(--pde-sf-border-strong);
	border-radius: 10px;
}

.pde-sf-file input[type="file"] {
	min-height: 44px;
	padding: 8px;
	cursor: pointer;
}

.pde-sf-file-name {
	min-width: 0;
	color: var(--pde-sf-subtle);
	font-size: 0.82rem;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.pde-sf-submit {
	display: inline-flex;
	min-width: 170px;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	margin-top: 24px;
	padding: 11px 20px;
	color: #ffffff;
	background: var(--pde-sf-accent);
	border: 1px solid var(--pde-sf-accent);
	border-radius: 8px;
	font: inherit;
	font-size: 0.94rem;
	font-weight: 800;
	line-height: 1.2;
	cursor: pointer;
	transition: background-color 150ms ease, border-color 150ms ease, transform 150ms ease;
}

.pde-sf-submit:hover {
	background: var(--pde-sf-accent-hover);
	border-color: var(--pde-sf-accent-hover);
	transform: translateY(-1px);
}

.pde-sf-submit:disabled,
.pde-sf-submit[aria-disabled="true"] {
	color: var(--pde-sf-muted);
	background: var(--pde-sf-raised);
	border-color: var(--pde-sf-border-strong);
	cursor: wait;
	transform: none;
}

.pde-sf-form-status {
	margin: 18px 0 0;
	padding: 13px 15px;
	color: var(--pde-sf-text);
	background: var(--pde-sf-raised);
	border: 1px solid var(--pde-sf-border-strong);
	border-radius: 10px;
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1.45;
}

.pde-sf-form-status:empty,
.pde-sf-form-status[hidden] {
	display: none !important;
}

.pde-sf-form-status[data-state="success"] {
	background: var(--pde-sf-success-soft);
	border-color: var(--pde-sf-success);
}

.pde-sf-form-status[data-state="error"] {
	background: var(--pde-sf-danger-soft);
	border-color: var(--pde-sf-danger);
}

.pde-sf-error {
	margin: 0;
	color: var(--pde-sf-danger);
	font-size: 0.82rem;
	font-weight: 700;
	line-height: 1.4;
}

.pde-sf-error:empty,
.pde-sf-error[hidden] {
	display: none !important;
}

.pde-sf-honeypot {
	position: absolute !important;
	left: -10000px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

/* Footer global compact : identité, compréhension, aide, puis mentions légales. */
.pde-trust-footer {
	position: relative;
	z-index: 2;
	width: 100%;
	min-width: 0;
	padding: 44px 0 22px;
	background: var(--pde-sf-surface);
	border-top: 1px solid var(--pde-sf-border);
	overflow-wrap: anywhere;
}

.pde-trust-grid {
	display: grid;
	grid-template-columns: minmax(260px, 1.6fr) repeat(2, minmax(180px, 1fr));
	gap: 32px 40px;
	align-items: start;
}

.pde-trust-brand,
.pde-trust-column {
	min-width: 0;
}

.pde-trust-logo {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--pde-sf-text);
	font-family: "Russo One", sans-serif;
	font-size: 1.3rem;
	font-weight: 400;
	letter-spacing: -0.025em;
	line-height: 1.1;
	text-decoration: none !important;
}

.pde-trust-logo svg {
	flex-shrink: 0;
}
.pde-trust-logo svg:first-child {
	width: 28px;
	height: 28px;
}
.pde-trust-logo-word {
	width: 147px;
	height: 21px;
}

.pde-trust-brand p {
	max-width: 32ch;
	margin: 14px 0 0;
	color: var(--pde-sf-muted);
	font-size: 0.9rem;
	line-height: 1.6;
}

.pde-trust-column h2,
.pde-trust-column h3,
.pde-trust-column > strong {
	display: block;
	margin: 0 0 10px;
	color: var(--pde-sf-text);
	font-size: 0.84rem;
	font-weight: 800;
	line-height: 1.35;
}

.pde-trust-column ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.pde-trust-column li + li {
	margin-top: 0;
}

.pde-trust-column a {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	color: var(--pde-sf-muted);
	font-size: 0.88rem;
	line-height: 1.35;
	text-decoration: none;
}

.pde-trust-column a:hover {
	color: var(--pde-sf-text);
}

.pde-trust-bottom {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px 36px;
	margin-top: 32px;
	padding-top: 18px;
	color: var(--pde-sf-subtle);
	border-top: 1px solid var(--pde-sf-border);
	font-size: 0.78rem;
	line-height: 1.55;
}

.pde-trust-bottom p {
	max-width: 70ch;
	margin: 0;
}

.pde-trust-bottom ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 8px 18px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pde-trust-bottom li {
	display: flex;
	min-height: 44px;
	align-items: center;
}

.pde-trust-bottom a {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	color: var(--pde-sf-muted);
}

@media (min-width: 1040px) {
	.pde-sf-layout {
		grid-template-columns: 220px minmax(0, 760px);
		justify-content: space-between;
		gap: clamp(52px, 7vw, 104px);
	}

	.pde-sf-toc {
		position: sticky;
		top: 104px;
	}

	.pde-sf-toc ul {
		display: block;
		overflow: visible;
	}

	.pde-sf-toc li + li {
		margin-top: 3px;
	}

	.pde-sf-toc a {
		min-height: 44px;
		padding: 7px 9px;
		background: transparent;
		border-color: transparent;
	}
}

@media (max-width: 1039px) {
	.pde-sf-content .pde-sf-card-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pde-trust-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 26px 32px;
	}

	.pde-trust-brand {
		grid-column: 1 / -1;
	}
}

@media (max-width: 760px) {
	.pde-sf-shell,
	.pde-trust-footer-inner {
		width: min(100% - 32px, 1180px);
	}

	.pde-sf-hero {
		padding-block: 54px 42px;
	}

	.pde-sf-hero-pixels {
		top: 18px;
		right: 16px;
		grid-template-columns: repeat(4, 9px);
		gap: 5px;
	}

	.pde-sf-hero-pixels > * {
		width: 9px;
		height: 9px;
	}

	.pde-sf-layout {
		gap: 34px;
		padding-block: 36px 76px;
	}

	.pde-sf-toc {
		margin-inline: -4px;
		padding: 14px;
	}

	.pde-sf-form-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.pde-sf-field-full {
		grid-column: auto;
	}

	.pde-sf-form {
		padding: 20px 16px;
	}

	.pde-sf-content dl {
		grid-template-columns: minmax(0, 1fr);
		gap: 4px;
	}

	.pde-sf-content dd + dt {
		margin-top: 14px;
	}

	.pde-sf-facts {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.pde-sf-processing > div {
		grid-template-columns: minmax(0, 1fr);
		gap: 5px;
	}

	.pde-sf-submit {
		width: 100%;
		min-height: 48px;
	}

	.pde-trust-bottom {
		flex-direction: column;
	}

	.pde-trust-bottom ul {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		width: 100%;
		justify-content: initial;
		gap: 4px 16px;
	}

	.pde-trust-bottom li {
		justify-content: center;
		text-align: center;
	}

	.pde-trust-bottom li:first-child {
		grid-column: 1 / -1;
	}
}

@media (max-width: 639px) {
	.pde-sf-toc ul {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		gap: 6px;
		padding-bottom: 0;
		overflow: visible;
	}

	.pde-sf-toc li {
		min-width: 0;
	}

	.pde-sf-toc a {
		width: 100%;
	}

	.pde-sf-content .pde-sf-card-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.pde-trust-footer {
		padding-top: 36px;
	}

	.pde-sf-toc a,
	.pde-trust-logo,
	.pde-trust-column a,
	.pde-trust-bottom a {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
	}
}

@media (max-width: 390px) {
	.pde-sf-shell,
	.pde-trust-footer-inner {
		width: min(100% - 24px, 1180px);
	}

	.pde-sf-page {
		font-size: 0.96rem;
	}

	.pde-sf-hero h1 {
		font-size: clamp(2rem, 11vw, 2.55rem);
	}

	.pde-sf-section {
		padding-bottom: 34px;
		margin-bottom: 34px;
	}

	.pde-sf-callout {
		padding: 18px 16px;
	}

	.pde-sf-file {
		align-items: stretch;
		flex-direction: column;
	}

}

@media (max-width: 340px) {
	.pde-trust-grid,
	.pde-trust-bottom ul {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (prefers-reduced-motion: reduce) {
	.pde-sf-page,
	.pde-sf-page *,
	.pde-sf-page *::before,
	.pde-sf-page *::after,
	.pde-trust-footer *,
	.pde-trust-footer *::before,
	.pde-trust-footer *::after {
		animation: none !important;
		scroll-behavior: auto !important;
		transition: none !important;
	}
}
