/*
 * PD Consultoria – tokens do sistema visual "Executive Precision" (DESIGN.md).
 * Carregado em todas as páginas e no editor de blocos.
 */

/* Montserrat hospedada no tema (SIL Open Font License, ver fonts/montserrat/OFL.txt). */
@font-face { font-family: "Montserrat"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/montserrat/montserrat-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "Montserrat"; font-style: normal; font-weight: 500; font-display: swap; src: url("../fonts/montserrat/montserrat-latin-500-normal.woff2") format("woff2"); }
@font-face { font-family: "Montserrat"; font-style: normal; font-weight: 600; font-display: swap; src: url("../fonts/montserrat/montserrat-latin-600-normal.woff2") format("woff2"); }
@font-face { font-family: "Montserrat"; font-style: normal; font-weight: 700; font-display: swap; src: url("../fonts/montserrat/montserrat-latin-700-normal.woff2") format("woff2"); }
@font-face { font-family: "Montserrat"; font-style: normal; font-weight: 800; font-display: swap; src: url("../fonts/montserrat/montserrat-latin-800-normal.woff2") format("woff2"); }
@font-face { font-family: "Montserrat"; font-style: italic; font-weight: 400; font-display: swap; src: url("../fonts/montserrat/montserrat-latin-400-italic.woff2") format("woff2"); }
@font-face { font-family: "Montserrat"; font-style: italic; font-weight: 600; font-display: swap; src: url("../fonts/montserrat/montserrat-latin-600-italic.woff2") format("woff2"); }

:root {
	/* Cores da marca */
	--pd-blue: #054ce1;
	--pd-blue-hover: #043db8;
	--pd-blue-active: #033296;
	--pd-dark: #333334;
	--pd-gray: #828182;          /* bordas, metadados e textos grandes */
	--pd-text-muted: #5c5b5d;    /* texto secundário: #828182 não passa em AA sobre branco */
	--pd-light: #8aa8e8;
	--pd-ice: #e3e7ed;
	--pd-canvas: #fbfcfe;
	--pd-surface-2: #f8fafd;
	--pd-white: #ffffff;
	--pd-star: #b57500;          /* estrelas (contraste AA sobre branco) */

	--pd-blue-tint: rgba(138, 168, 232, .25);
	--pd-border: rgba(130, 129, 130, .25);
	--pd-focus-ring: 0 0 0 3px rgba(138, 168, 232, .55);

	/* Tipografia */
	--pd-font: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	--pd-display: 700 clamp(2rem, 1.35rem + 2.6vw, 3rem) / 1.17 var(--pd-font);
	--pd-headline-lg: 700 clamp(1.5rem, 1.2rem + 1.2vw, 2.25rem) / 1.22 var(--pd-font);
	--pd-headline-md: 600 1.5rem / 1.33 var(--pd-font);
	--pd-headline-sm: 700 1.125rem / 1.4 var(--pd-font);
	--pd-title-md: 600 1rem / 1.5 var(--pd-font);
	--pd-title-sm: 700 .875rem / 1.43 var(--pd-font);
	--pd-body-lg: 400 1rem / 1.63 var(--pd-font);
	--pd-body-md: 400 .875rem / 1.6 var(--pd-font);
	--pd-body-sm: 400 .8125rem / 1.55 var(--pd-font);
	--pd-label-md: 500 .8125rem / 1.25 var(--pd-font);
	--pd-label-sm: 700 .75rem / 1.2 var(--pd-font);

	/* Raios */
	--pd-radius-sm: 4px;
	--pd-radius: 8px;
	--pd-radius-lg: 12px;
	--pd-radius-xl: 16px;

	/* Sombras (níveis do DESIGN.md) */
	--pd-shadow-1: 0 2px 8px -2px rgba(51, 51, 52, .06), 0 1px 3px 0 rgba(51, 51, 52, .04);
	--pd-shadow-2: 0 8px 24px -4px rgba(51, 51, 52, .10), 0 2px 6px -1px rgba(51, 51, 52, .04);
	--pd-shadow-3: 0 20px 32px -8px rgba(51, 51, 52, .16), 0 4px 12px -2px rgba(51, 51, 52, .06);
	--pd-shadow-blue: 0 4px 16px rgba(5, 76, 225, .30);

	/* Espaçamento e grade */
	--pd-container: 1280px;
	--pd-gutter: clamp(1rem, .5rem + 2vw, 3rem);
	--pd-gap: 1.5rem;
	--pd-section-y: clamp(3.5rem, 2.5rem + 4vw, 5rem);

	--pd-header-h: 80px;
	--pd-topbar-h: 40px;
}

/* Ícone genérico em linha: <span class="pd-ico pd-i-mail">texto</span> */
.pd-ico::before {
	content: "";
	display: inline-block;
	flex: none;
	width: 1.15em;
	height: 1.15em;
	vertical-align: -.2em;
	margin-right: .4em;
	background-color: currentColor;
	-webkit-mask: var(--pd-icon) center / contain no-repeat;
	mask: var(--pd-icon) center / contain no-repeat;
}
.pd-ico:empty::before { margin-right: 0; }
