/* Porto Liberal presentation layer for Real Cookie Banner. */

.pl-flagship .pl-cookie-settings,
.pl-flagship .pl-cookie-policy-action {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 32px;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	cursor: pointer;
	text-align: left;
	text-decoration: underline;
	text-decoration-color: transparent;
	text-underline-offset: 4px;
	transition: color .2s ease, text-decoration-color .2s ease;
}

.pl-flagship .pl-cookie-settings::before,
.pl-flagship .pl-cookie-policy-action::before {
	width: 19px;
	height: 19px;
	flex: 0 0 19px;
	background: currentColor;
	content: "";
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.8' d='M19.7 8.4a4.7 4.7 0 0 1-4.1-4.1A8.2 8.2 0 1 0 19.7 8.4ZM8.4 9.2h.01M13.3 13.1h.01M8.9 16h.01'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.8' d='M19.7 8.4a4.7 4.7 0 0 1-4.1-4.1A8.2 8.2 0 1 0 19.7 8.4ZM8.4 9.2h.01M13.3 13.1h.01M8.9 16h.01'/%3E%3C/svg%3E") center / contain no-repeat;
	transition: transform .25s ease;
}

.pl-flagship .pl-cookie-settings:hover,
.pl-flagship .pl-cookie-policy-action:hover {
	color: #fff;
	text-decoration-color: currentColor;
}

.pl-flagship .pl-cookie-settings:hover::before,
.pl-flagship .pl-cookie-policy-action:hover::before {
	transform: rotate(-10deg) scale(1.06);
}

.pl-flagship .pl-cookie-settings:focus-visible,
.pl-flagship .pl-cookie-policy-action:focus-visible {
	outline: 2px solid var(--pl-cyan, #00a5e5);
	outline-offset: 4px;
}

.pl-flagship .pl-cookie-policy-action {
	padding: 10px 0;
	color: var(--pl-ink, #082743);
	font-family: var(--pl-display, Montserrat, sans-serif);
	font-size: 14px;
	font-weight: 800;
}

.pl-flagship .pl-cookie-policy-action:hover {
	color: var(--pl-cyan, #007cb3);
}

/* RCB owns behaviour and consent state; these selectors only shape its UI. */
body.pl-flagship dialog.first-layer,
body.pl-flagship dialog.second-layer {
	font-family: var(--pl-display, Montserrat, sans-serif) !important;
	letter-spacing: 0 !important;
}

body.pl-flagship dialog.first-layer > div {
	max-width: var(--pl-cookie-width, 390px) !important;
}

body.pl-flagship dialog.first-layer :where(button, a),
body.pl-flagship dialog.second-layer :where(button, a) {
	letter-spacing: 0 !important;
}

body.pl-flagship dialog.first-layer button,
body.pl-flagship dialog.second-layer button {
	min-height: 42px;
	border-radius: 2px !important;
}

body.pl-flagship dialog.first-layer :where(a, button):focus-visible,
body.pl-flagship dialog.second-layer :where(a, button):focus-visible {
	outline: 2px solid var(--pl-cookie-accent, #00a5e5) !important;
	outline-offset: 2px !important;
}

body.pl-flagship dialog.second-layer > [aria-hidden="true"][aria-label] {
	display: none !important;
}

.pl-flagship .pl-editorial-page--politica-de-privacidade .pl-editorial-page__content,
.pl-flagship .pl-editorial-page--politica-de-cookies .pl-editorial-page__content {
	font-size: 18px;
}

.pl-flagship .pl-editorial-page--politica-de-privacidade .pl-editorial-page__content > :where(p, h2, h3, ul, ol, .wp-block-table),
.pl-flagship .pl-editorial-page--politica-de-cookies .pl-editorial-page__content > :where(p, h2, h3, ul, ol, .wp-block-table) {
	max-width: 1120px;
}

.pl-flagship .pl-editorial-page--politica-de-cookies .wp-block-table {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.pl-flagship .pl-editorial-page--politica-de-cookies table {
	width: 100%;
	min-width: 760px;
	border-collapse: collapse;
	font-size: 15px;
}

.pl-flagship .pl-editorial-page--politica-de-cookies :where(th, td) {
	padding: 16px;
	border-bottom: 1px solid var(--pl-line, #d7e1e8);
	text-align: left;
	vertical-align: top;
}

.pl-flagship .pl-editorial-page--politica-de-cookies th {
	background: var(--pl-mist, #eef5f8);
	color: var(--pl-ink, #082743);
	font-family: var(--pl-display, Montserrat, sans-serif);
	font-size: 12px;
	font-weight: 800;
	text-transform: uppercase;
}

@media (max-width: 640px) {
	body.pl-flagship dialog.first-layer,
	body.pl-flagship dialog.second-layer {
		align-items: flex-end !important;
		padding: 12px !important;
	}

	body.pl-flagship dialog.first-layer > div,
	body.pl-flagship dialog.second-layer > div {
		width: 100% !important;
		max-width: none !important;
		max-height: min(75svh, 620px) !important;
		overflow-y: auto !important;
	}

	.pl-flagship .pl-editorial-page--politica-de-privacidade .pl-editorial-page__content,
	.pl-flagship .pl-editorial-page--politica-de-cookies .pl-editorial-page__content {
		font-size: 16px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.pl-flagship .pl-cookie-settings,
	.pl-flagship .pl-cookie-settings::before,
	.pl-flagship .pl-cookie-policy-action,
	.pl-flagship .pl-cookie-policy-action::before {
		transition: none;
	}
}
