@font-face {
	font-display: swap;
	font-family: "Causten Round";
	font-style: normal;
	font-weight: 300 900;
	src: url("../fonts/CaustenRound.woff2") format("woff2");
}

:root {
	--pd-primary: #F8F8F8;
	--pd-secondary: #474849;
	--pd-mist: #E2EBE9;
	--pd-highlight: #F19B78;
	--pd-mint: #A0E6C4;
	--pd-shadow: 0 28px 80px rgba(71, 72, 73, 0.12);
}

html {
	scroll-behavior: smooth;
}

body {
	background: var(--pd-primary);
	color: var(--pd-secondary);
	font-family: "Causten Round", sans-serif;
	text-rendering: optimizeLegibility;
}

::selection {
	background: var(--pd-highlight);
	color: var(--pd-secondary);
}

.pd-topbar {
	backdrop-filter: blur(22px);
	border-bottom: 1px solid rgba(71, 72, 73, 0.14);
	position: sticky;
	top: 0;
	z-index: 20;
}

.pd-topbar a {
	text-decoration: none;
}

.pd-header-logo img,
.pd-footer-logo img {
	height: auto;
	max-width: 210px;
}

.pd-section {
	padding-bottom: clamp(4rem, 8vw, 8rem);
	padding-top: clamp(4rem, 8vw, 8rem);
}

.pd-section > * {
	max-width: none;
}

.pd-hero h1 {
	max-width: 11ch;
}

.pd-hero .wp-block-cover__inner-container {
	max-width: 1480px;
	padding: clamp(1.25rem, 4vw, 4rem);
}

.pd-logo-white img {
	filter: none;
}

.pd-eyebrow {
	color: var(--pd-highlight);
	font-size: 0.76rem;
	font-weight: 900;
	letter-spacing: 0.12em;
	line-height: 1.1;
	text-transform: uppercase;
}

.pd-source {
	border-left: 4px solid var(--pd-mint);
	color: rgba(71, 72, 73, 0.74);
	font-size: 0.9rem;
	margin-top: 1.25rem;
	padding-left: 1rem;
}

.pd-kpi-strip {
	background: var(--pd-mist);
	border-radius: 28px;
	box-shadow: var(--pd-shadow);
	margin-top: -4rem;
	padding: clamp(1.25rem, 3vw, 2.5rem);
	position: relative;
	z-index: 2;
}

.pd-kpi-strip h3,
.pd-metric-grid strong,
.pd-calculator-output strong {
	color: var(--pd-secondary);
	display: block;
	font-size: clamp(2.1rem, 5vw, 4.7rem);
	font-weight: 900;
	letter-spacing: -0.02em;
	line-height: 0.9;
}

.pd-card-row {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
	margin-top: 2rem;
}

.pd-card-row article,
.pd-carousel article,
.pd-slider-card,
.pd-risk,
.pd-proof,
.pd-two-asks .wp-block-column,
.pd-metric-grid > div,
.pd-timeline > div {
	background: rgba(226, 235, 233, 0.75);
	border: 1px solid rgba(71, 72, 73, 0.12);
	border-radius: 24px;
	box-shadow: var(--pd-shadow);
	padding: clamp(1.2rem, 2vw, 2rem);
}

.pd-card-row a {
	font-size: 0.88rem;
	font-weight: 800;
}

.pd-metric-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	margin-top: 2rem;
}

.pd-metric-grid span,
.pd-calculator-output span {
	display: block;
	font-size: 0.9rem;
	font-weight: 700;
	margin-top: 0.65rem;
}

.pd-calculator-section {
	background: var(--pd-secondary);
	color: var(--pd-primary);
}

.pd-calculator-section .pd-source,
.pd-calculator-section a {
	color: var(--pd-primary);
}

.pd-slider-card {
	background: var(--pd-primary);
	color: var(--pd-secondary);
}

.pd-slider-card label {
	display: block;
	font-size: 0.85rem;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.pd-slider-card input[type="range"] {
	accent-color: var(--pd-highlight);
	margin: 1.3rem 0 2rem;
	width: 100%;
}

.pd-calculator-output {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
}

.pd-calculator-output > div {
	border-top: 1px solid rgba(71, 72, 73, 0.16);
	padding-top: 1rem;
}

.pd-carousel {
	display: grid;
	gap: 1rem;
	grid-auto-columns: minmax(270px, 34%);
	grid-auto-flow: column;
	overflow-x: auto;
	padding-bottom: 1rem;
	scroll-snap-type: x mandatory;
}

.pd-carousel article {
	scroll-snap-align: start;
}

.pd-carousel-controls {
	display: flex;
	gap: 0.75rem;
	justify-content: flex-end;
	margin-top: 1rem;
}

.pd-carousel-controls button {
	background: var(--pd-secondary);
	border: 1px solid var(--pd-secondary);
	border-radius: 999px;
	color: var(--pd-primary);
	cursor: pointer;
	font: inherit;
	font-size: 0.74rem;
	font-weight: 900;
	letter-spacing: 0.08em;
	padding: 0.75rem 1rem;
	text-transform: uppercase;
}

.pd-gallery img {
	aspect-ratio: 4 / 3;
	border-radius: 24px;
	object-fit: cover;
	width: 100%;
}

.pd-table {
	overflow-x: auto;
}

.pd-table table {
	border-collapse: collapse;
	min-width: 780px;
	width: 100%;
}

.pd-table th,
.pd-table td {
	border-bottom: 1px solid rgba(71, 72, 73, 0.16);
	padding: 0.9rem;
	text-align: left;
}

.pd-table th {
	background: var(--pd-mist);
	font-weight: 900;
}

.pd-timeline {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
	margin-top: 2rem;
}

.pd-timeline span {
	color: var(--pd-highlight);
	font-size: 0.78rem;
	font-weight: 900;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.pd-dataroom-form {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 2rem;
	max-width: 780px;
}

.pd-dataroom-form label {
	display: grid;
	font-size: 0.78rem;
	font-weight: 900;
	gap: 0.4rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.pd-dataroom-form input {
	background: #fff;
	border: 1px solid rgba(71, 72, 73, 0.18);
	border-radius: 999px;
	color: var(--pd-secondary);
	font: inherit;
	padding: 0.9rem 1rem;
	text-transform: none;
}

.pd-dataroom-form button {
	grid-column: 1 / -1;
	justify-self: start;
}

.pd-notice,
.pd-form-error {
	background: var(--pd-mint);
	border-radius: 18px;
	font-weight: 800;
	padding: 1rem;
}

.pd-form-error {
	background: var(--pd-highlight);
}

.pd2026-gate-body {
	align-items: center;
	background: var(--pd-mist);
	display: flex;
	justify-content: center;
	min-height: 100vh;
	padding: 1rem;
}

.pd2026-gate {
	background: var(--pd-primary);
	border-radius: 28px;
	box-shadow: var(--pd-shadow);
	max-width: 620px;
	padding: clamp(1.5rem, 4vw, 3rem);
}

.pd2026-gate__logo {
	max-width: 240px;
}

.pd2026-gate input {
	border: 1px solid rgba(71, 72, 73, 0.22);
	border-radius: 999px;
	display: block;
	font: inherit;
	margin: 0.4rem 0 1rem;
	padding: 0.95rem 1rem;
	width: 100%;
}

@media (max-width: 760px) {
	.pd-dataroom-form {
		grid-template-columns: 1fr;
	}

	.pd-carousel {
		grid-auto-columns: 86%;
	}

	.pd-header-logo img {
		max-width: 170px;
	}
}
