/* Site footer (template-parts/site-footer.php), after the redesign's footer strip:
   soft background, top line, small muted text. Loaded on every page, so it
   carries its own tokens instead of relying on base.css. */

.pma-footer {
	--pma-purple: #7141cc;
	--pma-ink: #282337;
	--pma-muted: #756d83;
	--pma-line: #eae5f0;
	--pma-soft: #f7f4fc;
	background: var(--pma-soft);
	border-top: 1px solid var(--pma-line);
	color: var(--pma-muted);
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px; line-height: 1.7;
}
.pma-footer a { color: var(--pma-ink); text-decoration: none; }
.pma-footer a:hover { color: var(--pma-purple); }
.pma-footer a:focus-visible { outline: 3px solid var(--pma-purple); outline-offset: 3px; }
.pma-footer .pma-icon { width: 1em; height: 1em; flex-shrink: 0; }

.pma-footer-inner {
	max-width: 1110px; margin: 0 auto; padding: 36px 34px 30px;
	display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1.2fr) minmax(0, .8fr);
	gap: 32px;
}

.pma-footer .pma-footer-logo {
	display: inline-flex; align-items: center; gap: 7px; margin-bottom: 10px;
	color: var(--pma-purple); font-size: 20px; font-weight: 700; letter-spacing: -.5px;
}
.pma-footer-logo img { width: 30px; height: 30px; }
.pma-footer-brand p { margin: 0 0 12px; max-width: 360px; }
.pma-footer .pma-footer-trust { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 11px; }
.pma-footer-trust .pma-icon { font-size: 14px; color: var(--pma-purple); }

.pma-footer .pma-footer-col h2 {
	margin: 4px 0 12px; color: var(--pma-ink);
	font-family: inherit; font-size: 13px; font-weight: 500; line-height: 1.3;
	letter-spacing: 0; text-transform: none;
}
.pma-footer-col ul { margin: 0; padding: 0; list-style: none; }
.pma-footer-col li { margin: 0 0 7px; padding: 0; }
.pma-footer-col ul.pma-footer-services { display: grid; grid-template-columns: repeat(2, max-content); gap: 0 28px; }

.pma-footer-bottom {
	margin: 0 max(34px, calc((100% - 1042px) / 2)); padding: 16px 0 20px;
	display: flex; justify-content: space-between; flex-wrap: wrap; gap: 6px 18px;
	border-top: 1px solid var(--pma-line);
	font-size: 11px;
}
.pma-footer-legal { display: flex; gap: 18px; }
.pma-footer-legal a { color: var(--pma-muted); }

@media (max-width: 780px) {
	.pma-footer-inner { grid-template-columns: 1fr 1fr; padding: 30px 22px 24px; gap: 26px; }
	.pma-footer-brand { grid-column: 1 / -1; }
	.pma-footer-bottom { margin: 0 22px; padding: 14px 0 18px; }
}

@media (max-width: 420px) {
	.pma-footer-col ul.pma-footer-services { grid-template-columns: 1fr; }
	.pma-footer-bottom { flex-direction: column; }
}
