/* ============================================================
   Consentimento de cookies — identidade do site
   Uses the theme's own custom properties, with the literal values as
   fallbacks so the banner still looks right if it ever renders before
   the theme's CSS (or under a different theme).
   ============================================================ */
.hb-ck {
	position: fixed;
	/* Above the menu (10000) and the loader (10005), BELOW the custom
	   cursor (10010/10011). It was 10020, which put the panel over the
	   cursor: the pointer vanished the moment it crossed the banner —
	   on the one element the visitor most needs to click. The cursor is
	   the topmost thing on this site by definition. */
	z-index: 10006;
	/* `right` is NOT optional. Dropping it to move the panel into the
	   corner left the container shrink-to-fit, so the panel's
	   `width: min(100%, 420px)` resolved its 100% against a container
	   that was itself sized by the panel — it collapsed to 136px. The
	   container stays full-width; justify-content does the positioning. */
	left: 0; right: 0; bottom: 0;
	padding: clamp(12px, 2vw, 20px);
	display: flex;
	justify-content: flex-start;
	pointer-events: none;
}
.hb-ck[hidden] { display: none; }

.hb-ck__painel {
	pointer-events: auto;
	/* Deliberately small and in a corner. This was a 720px panel centred
	   across the screen, which read as a demand rather than a notice —
	   it covered the hero on a laptop and most of the page on a phone.
	   A cookie notice is housekeeping: it should be answerable without
	   interrupting what you came for. */
	width: min(100%, 420px);
	max-height: min(72vh, 560px);
	overflow-y: auto;
	background: var(--ink, #1A1512);
	color: var(--cream, #F7F5F0);
	border-radius: 10px;         /* o mesmo raio das imagens do site */
	padding: 20px;
	box-shadow: 0 12px 40px rgba(0,0,0,.32);
	/* Entra de baixo, como uma resposta e não como um alarme. */
	animation: hb-ck-entrar .5s cubic-bezier(.2,.7,.3,1) both;
}
@keyframes hb-ck-entrar { from { transform: translateY(24px); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .hb-ck__painel { animation: none; } }

.hb-ck__titulo {
	margin: 0 0 8px;
	font-family: 'Amatry', Arial, sans-serif;
	font-weight: 400;
	font-size: 1.05rem;
	line-height: 1.2;
	letter-spacing: -.01em;
	color: var(--gold, #D3AC6E);
}
/* A pontuação invertida em dourado, como em todo o site. */
.hb-ck__titulo i { font-style: normal; color: var(--cream, #F7F5F0); }

.hb-ck__texto {
	margin: 0;
	font-family: 'Franie', Arial, sans-serif;
	font-size: 13px;
	line-height: 1.55;
	opacity: .82;
}
.hb-ck__texto a { color: var(--gold, #D3AC6E); border-bottom: 1px solid currentColor; }

/* ---- escolha por categoria ---- */
.hb-ck__opcoes { margin-top: 20px; display: grid; gap: 2px; }
.hb-ck__opcoes[hidden] { display: none; }
.hb-ck__opcao {
	display: grid;
	grid-template-columns: 22px 1fr;
	gap: 4px 12px;
	align-items: start;
	padding: 14px 0;
	border-top: 1px solid rgba(247,245,240,.14);
	cursor: pointer;
}
.hb-ck__opcao--fixa { cursor: default; opacity: .72; }
.hb-ck__opcao input { width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--gold, #D3AC6E); }
.hb-ck__opcao-nome {
	font-family: 'Amatry', Arial, sans-serif;
	font-size: 14px;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: var(--gold, #D3AC6E);
}
.hb-ck__opcao-nome em {
	font-style: normal; text-transform: none; letter-spacing: 0;
	font-family: 'Franie', Arial, sans-serif; font-size: 12px;
	opacity: .6; margin-left: 8px;
}
.hb-ck__opcao-desc {
	grid-column: 2;
	font-family: 'Franie', Arial, sans-serif;
	font-size: 13px; line-height: 1.55; opacity: .75;
}

/* ---- ações ----
   Aceitar e Recusar têm exatamente o mesmo peso visual. Fazer o botão
   de recusa mais pequeno, mais claro ou escondido atrás de "gerir" é o
   padrão que a EDPB considera consentimento inválido. */
.hb-ck__acoes {
	margin-top: 16px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 12px;
}
/* Compact, but the two answers stay identical in size and weight —
   shrinking "Recusar" relative to "Aceitar" is exactly the dark pattern
   the EDPB treats as invalid consent, and "discreet" is not a reason to
   introduce one. Both keep the 44px touch minimum. */
.hb-ck__btn {
	flex: 1 1 0;
	min-width: 0;
	min-height: 44px;
	padding: 10px 16px;
	border: 2px solid var(--gold, #D3AC6E);
	border-radius: 999px;
	background: transparent;
	color: var(--gold, #D3AC6E);
	font: 700 13px/1 'Franie', Arial, sans-serif;
	cursor: pointer;
	transition: background-color .25s ease, color .25s ease;
}
.hb-ck__btn:hover, .hb-ck__btn:focus-visible {
	background: var(--gold, #D3AC6E);
	color: var(--ink, #1A1512);
}
.hb-ck__link {
	flex: 0 0 auto;
	min-height: 44px;
	padding: 0 4px;
	background: none; border: 0;
	color: var(--cream, #F7F5F0);
	font: 400 13px/1 'Franie', Arial, sans-serif;
	text-decoration: underline;
	text-underline-offset: 5px;
	cursor: pointer;
	opacity: .75;
}
.hb-ck__link:hover, .hb-ck__link:focus-visible { opacity: 1; }
.hb-ck__btn:focus-visible, .hb-ck__link:focus-visible { outline: 2px solid var(--cream, #F7F5F0); outline-offset: 3px; }

/* ---- reabrir, no rodapé ---- */
.hb-ck__reabrir {
	background: none; border: 0; padding: 0;
	font: inherit; color: inherit;
	cursor: pointer;
	opacity: .62;
	transition: opacity .25s ease;
}
.hb-ck__reabrir:hover, .hb-ck__reabrir:focus-visible { opacity: 1; }

/* Menos texto no painel de escolha, que é o que faz o cartão crescer. */
.hb-ck__opcoes { margin-top: 14px; }
.hb-ck__opcao { padding: 11px 0; }
.hb-ck__opcao-desc { font-size: 12px; line-height: 1.5; }

@media (max-width: 560px) {
	.hb-ck { padding: 10px; }
	.hb-ck__painel { width: 100%; padding: 18px; }
	.hb-ck__link { flex: 1 1 100%; text-align: center; }
}
