.hpv-main--politicas,
.hpv-main--politicas .wp-block-post-content { margin: 0; padding: 0; }
.hpv-main--politicas .wp-block-post-content > * { margin-block: 0; }
body:has(.hpv-main--politicas) .hpv-rodape { padding-bottom: 6.5rem; }

.hpv-politicas-list,
.hpv-politicas-help,
.hpv-politica { padding-block: clamp(3.5rem, 6vw, 5rem); }
.hpv-politicas-help { padding-top: 0; }

.wp-site-blocks .hpv-main--politicas .hpv-politicas-list :is(.hpv-home__eyebrow, .hpv-unit__title, .hpv-unit__lead) {
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}
.wp-site-blocks .hpv-main--politicas .hpv-politicas-list .hpv-home__eyebrow::after {
	content: "";
	display: block;
	width: 2.25rem;
	height: 2px;
	margin: 0.65rem auto 0;
	border-radius: 2px;
	background: var(--wp--preset--color--grupo-mar-400);
}

.hpv-politicas-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.5rem;
	margin-top: 3rem;
}
.hpv-politica-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	padding: 1.5rem;
	border-radius: 1.5rem;
	background: var(--wp--preset--color--branco);
	box-shadow: 0 4px 16px color-mix(in srgb, var(--wp--preset--color--grupo-mar-950) 8%, transparent);
	transition: box-shadow 220ms ease;
}
.hpv-politica-card:hover { box-shadow: 0 10px 28px color-mix(in srgb, var(--wp--preset--color--grupo-mar-950) 16%, transparent); }
.hpv-politica-card__title { margin: 0; color: var(--wp--preset--color--tinta-900); font-size: 1.25rem; font-weight: 600; line-height: 1.35; }
.hpv-politica-card__title a { color: inherit; text-decoration: none; }
.hpv-politica-card__title a:hover { color: var(--wp--preset--color--grupo-mar-800); }
.hpv-politica-card__summary { flex: 1; margin: 0.75rem 0 0; color: var(--wp--preset--color--tinta-700); font-size: 0.875rem; line-height: 1.65; }
.hpv-politica-card__more { margin: 1.25rem 0 0; }

.hpv-politica__link,
.hpv-politica-card__more a,
.hpv-politica__back a {
	color: var(--wp--preset--color--grupo-mar-800);
	font-weight: 800;
	text-decoration: underline;
	text-decoration-color: var(--wp--preset--color--grupo-mar-300);
	text-decoration-thickness: 2px;
	text-underline-offset: 4px;
	transition: text-decoration-color 150ms ease;
}
.hpv-politica__link:hover,
.hpv-politica-card__more a:hover,
.hpv-politica__back a:hover { text-decoration-color: var(--wp--preset--color--grupo-mar-700); }
.hpv-politica-card__more a,
.hpv-politica__back a { font-size: 0.875rem; }

.hpv-politicas-help__box {
	max-width: 56rem;
	margin-inline: auto;
	padding: 2rem;
	border-radius: 1.5rem;
	background: var(--wp--preset--color--areia-100);
	text-align: center;
}
.hpv-politicas-help__title { margin: 0; color: var(--wp--preset--color--tinta-900); font-size: 1.5rem; font-weight: 600; line-height: 1.3; }
.hpv-politicas-help__text { max-width: 36rem; margin: 0.5rem auto 0; color: var(--wp--preset--color--tinta-700); font-size: 0.875rem; line-height: 1.65; }

.hpv-politica__layout {
	display: grid;
	grid-template-columns: 16rem minmax(0, 1fr);
	gap: 3.5rem;
	align-items: start;
}
.hpv-politica__aside { position: sticky; top: 6rem; align-self: start; }
.hpv-politica__toc-card {
	margin: 0;
	padding: 1.25rem;
	border-radius: 1rem;
	background: var(--wp--preset--color--branco);
	box-shadow: 0 4px 16px color-mix(in srgb, var(--wp--preset--color--grupo-mar-950) 8%, transparent);
}
.hpv-politica-toc { margin: 0; }
.hpv-politica-toc__label {
	margin: 0;
	color: var(--wp--preset--color--grupo-mar-700);
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}
.hpv-politica-toc ol { margin: 0.75rem 0 0; padding: 0; list-style: none; }
.hpv-politica-toc li + li { margin-top: 0.5rem; }
.hpv-politica-toc a {
	display: flex;
	gap: 0.5rem;
	color: var(--wp--preset--color--tinta-700);
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.4;
	text-decoration: none;
}
.hpv-politica-toc a:hover { color: var(--wp--preset--color--grupo-mar-800); }
.hpv-politica-toc__num { color: var(--wp--preset--color--grupo-mar-500); font-weight: 800; }
.hpv-politica__toc-meta {
	margin: 1.25rem 0 0;
	padding-top: 1rem;
	border-top: 1px solid var(--wp--preset--color--areia-200);
	color: var(--wp--preset--color--tinta-500);
	font-size: 0.75rem;
	line-height: 1.6;
}
.hpv-politica__back { margin: 1rem 0 0; }

.hpv-politica__article { max-width: 48rem; margin: 0; }
.hpv-politica__stamp {
	margin: 0;
	padding: 0.75rem 1.25rem;
	border-radius: 1rem;
	background: var(--wp--preset--color--areia-100);
	color: var(--wp--preset--color--tinta-500);
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}
.hpv-politica__section { margin: 2.5rem 0 0; }
.hpv-politica__heading {
	margin: 0;
	color: var(--wp--preset--color--tinta-900);
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1.35;
	scroll-margin-top: 7rem;
}
.hpv-politica__heading--note { font-size: 1.25rem; }
.hpv-politica__copy { margin: 1rem 0 0; color: var(--wp--preset--color--tinta-700); line-height: 1.7; }
.hpv-politica__copy + .hpv-politica__copy { margin-top: 1rem; }
.hpv-politica__callout {
	margin: 3rem 0 0;
	padding: 1.5rem;
	border-radius: 1.5rem;
	background: var(--wp--preset--color--grupo-mar-50);
}
.hpv-politica__fine { margin: 0.75rem 0 0; color: var(--wp--preset--color--tinta-500); font-size: 0.875rem; line-height: 1.65; }
.hpv-politica__closing {
	margin: 3rem 0 0;
	padding-top: 1.5rem;
	border-top: 1px solid var(--wp--preset--color--areia-200);
	color: var(--wp--preset--color--tinta-500);
	font-size: 0.875rem;
	line-height: 1.65;
}

@media (min-width: 783px) {
	.admin-bar .hpv-politica__aside { top: calc(6rem + 32px); }
	.admin-bar .hpv-main--politicas .hpv-politica__heading { scroll-margin-top: calc(7rem + 32px); }
}

@media (max-width: 1280px) {
	.hpv-politica__layout { gap: 2.5rem; }
}

@media (max-width: 899px) {
	.hpv-politicas-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.hpv-politica__layout { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
	.hpv-politica__aside { position: static; }
}

@media (max-width: 767px) {
	.hpv-politicas-grid { grid-template-columns: minmax(0, 1fr); }
	.hpv-politica-card,
	.hpv-politicas-help__box,
	.hpv-politica__callout { padding: 1.25rem; }
}

@media (prefers-reduced-motion: reduce) {
	html.hpv-js .hpv-main--politicas .hpv-unit-cascade__item,
	html.hpv-js .hpv-main--politicas .hpv-unit-cascade__item.is-in { opacity: 1; transform: none; transition: none; }
	.hpv-politica-card,
	.hpv-politica__link,
	.hpv-politica-card__more a,
	.hpv-politica__back a { transition: none; }
}
