/* HOMESTAR — Calendário do Advento Black Friday 2026
 * Tema filho: css/blackfriday.css
 * Portas como painéis de boiserie: linho e branco do site, bronze da barra
 * de topo e o preto do Black Friday só na porta do dia.
 * Tudo com prefixo #hs-bf-advento para ganhar ao CSS dos botões do tema.
 */

#hs-bf-advento,
body .hsbf-topbar {
	--bf-black: #000;
	--bf-text: #212529;
	--bf-white: #fff;
	--bf-linen: #f6f6f3;
	--bf-line: #e4e0d6;
	--bf-mould: #d8d2c4;
	--bf-bronze: #796f51;
	--bf-bronze-soft: #c2b58c;
	--bf-muted: #6e6c66;
	--bf-gone: #b3aea2;
}

/* ---------- bloco ---------- */

#hs-bf-advento {
	background: var(--bf-linen);
	color: var(--bf-text);
	font-family: inherit;
	padding: clamp(22px, 4vw, 48px);
	max-width: 1120px;
	margin: 0 auto 48px;
	box-sizing: border-box;
	text-align: left;
}

#hs-bf-advento * { box-sizing: border-box; }

#hs-bf-advento .hsbf-head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 16px 32px;
	margin-bottom: 28px;
}

#hs-bf-advento .hsbf-title {
	color: var(--bf-black);
	font-size: clamp(28px, 4.2vw, 46px);
	font-weight: 300;
	line-height: 1.05;
	letter-spacing: -0.02em;
	margin: 0 0 8px;
	text-transform: none;
}

#hs-bf-advento .hsbf-sub,
#hs-bf-advento .hsbf-msg {
	margin: 0;
	color: var(--bf-muted);
	font-size: 15px;
	line-height: 1.5;
}

#hs-bf-advento .hsbf-countdown {
	margin: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 2px;
	color: var(--bf-muted);
	font-size: 13px;
}

#hs-bf-advento .hsbf-cd-val {
	color: var(--bf-black);
	font-size: 26px;
	font-weight: 400;
	letter-spacing: -0.01em;
	font-variant-numeric: tabular-nums;
}

#hs-bf-advento .hsbf-sim {
	display: inline-block;
	margin: 0 0 18px;
	padding: 4px 10px;
	border: 1px dashed var(--bf-bronze);
	color: var(--bf-bronze);
	font-size: 12px;
}

/* ---------- progresso e bónus ---------- */

#hs-bf-advento .hsbf-progress { margin-bottom: 28px; }

#hs-bf-advento .hsbf-progress-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 4px 16px;
	font-size: 14px;
	margin-bottom: 10px;
}

#hs-bf-advento .hsbf-muted { color: var(--bf-muted); }

#hs-bf-advento .hsbf-track {
	height: 3px;
	background: var(--bf-line);
	overflow: hidden;
}

#hs-bf-advento .hsbf-fill {
	height: 100%;
	background: var(--bf-bronze);
	transition: width 0.6s ease;
}

#hs-bf-advento .hsbf-bonus {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 14px;
	margin-top: 16px;
	padding: 14px 16px;
	background: var(--bf-white);
	border: 1px solid var(--bf-bronze);
	font-size: 14px;
}

#hs-bf-advento .hsbf-code {
	background: var(--bf-black);
	color: var(--bf-white);
	padding: 4px 12px;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0.06em;
}

#hs-bf-advento .hsbf-bonus small { color: var(--bf-muted); font-size: 12px; }

/* ---------- portas: base (por abrir) ---------- */

#hs-bf-advento .hsbf-grid {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 12px;
}

#hs-bf-advento .hsbf-door {
	position: relative;
	aspect-ratio: 3 / 4;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 6px;
	margin: 0;
	padding: 34px 14px 16px;
	border: 0;
	border-radius: 0;
	background: var(--bf-white);
	color: var(--bf-text);
	/* moldura de boiserie + contorno exterior */
	box-shadow: inset 0 0 0 9px var(--bf-white), inset 0 0 0 10px var(--bf-mould), 0 0 0 1px var(--bf-line);
	font: inherit;
	text-transform: none;
	letter-spacing: normal;
	line-height: 1.2;
	text-align: center;
	cursor: pointer;
	transition: transform 0.15s ease, box-shadow 0.15s ease;
}

#hs-bf-advento .hsbf-door:hover { transform: translateY(-2px); }

#hs-bf-advento .hsbf-door:focus-visible {
	outline: 2px solid var(--bf-black);
	outline-offset: 3px;
}

#hs-bf-advento .hsbf-day {
	font-size: clamp(30px, 3.6vw, 44px);
	font-weight: 300;
	line-height: 1;
	color: #8d887b;
	font-variant-numeric: tabular-nums;
}

#hs-bf-advento .hsbf-state {
	position: absolute;
	top: 16px;
	left: 18px;
	font-size: 11px;
	font-weight: 500;
	line-height: 1;
}

#hs-bf-advento .hsbf-teaser {
	font-size: 12px;
	color: var(--bf-bronze);
}

/* ---------- porta de hoje ---------- */

#hs-bf-advento .hsbf-door.is-today {
	background: var(--bf-black);
	color: var(--bf-white);
	box-shadow: inset 0 0 0 9px var(--bf-black), inset 0 0 0 10px var(--bf-bronze), 0 0 0 1px var(--bf-black);
}

#hs-bf-advento .hsbf-door.is-today .hsbf-day { color: var(--bf-white); }
#hs-bf-advento .hsbf-door.is-today .hsbf-state { color: var(--bf-bronze-soft); }

#hs-bf-advento .hsbf-cta-mini {
	margin-top: 6px;
	padding: 6px 12px;
	background: var(--bf-bronze);
	color: var(--bf-white);
	font-size: 12px;
	font-weight: 500;
}

#hs-bf-advento .hsbf-door.is-today:hover .hsbf-cta-mini { background: var(--bf-bronze-soft); color: var(--bf-black); }

/* ---------- porta aberta ---------- */

#hs-bf-advento .hsbf-door.is-opened {
	justify-content: center;
	box-shadow: inset 0 0 0 9px var(--bf-white), inset 0 0 0 11px var(--bf-bronze), 0 0 0 1px var(--bf-line);
}

#hs-bf-advento .hsbf-door.is-opened .hsbf-day {
	position: absolute;
	top: 16px;
	right: 18px;
	font-size: 13px;
	font-weight: 500;
	color: var(--bf-muted);
}

#hs-bf-advento .hsbf-door.is-opened .hsbf-state { color: var(--bf-bronze); }
#hs-bf-advento .hsbf-door.is-opened .hsbf-state::before { content: "✓ "; }

#hs-bf-advento .hsbf-door-label {
	font-size: clamp(22px, 2.6vw, 32px);
	font-weight: 600;
	line-height: 1;
	letter-spacing: -0.02em;
	color: var(--bf-black);
}

#hs-bf-advento .hsbf-door-title {
	font-size: 13px;
	font-weight: 600;
	line-height: 1.25;
	color: var(--bf-text);
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* aberta e ainda ativa (hoje) */
#hs-bf-advento .hsbf-door.is-opened.is-current {
	background: var(--bf-black);
	box-shadow: inset 0 0 0 9px var(--bf-black), inset 0 0 0 11px var(--bf-bronze), 0 0 0 1px var(--bf-black);
}

#hs-bf-advento .hsbf-door.is-current .hsbf-door-label { color: var(--bf-white); }
#hs-bf-advento .hsbf-door.is-current .hsbf-door-title { color: #e8e4da; }
#hs-bf-advento .hsbf-door.is-current .hsbf-state,
#hs-bf-advento .hsbf-door.is-opened.is-current .hsbf-day { color: var(--bf-bronze-soft); }

/* ---------- porta perdida ---------- */

#hs-bf-advento .hsbf-door.is-missed {
	background: linear-gradient(to top right, transparent calc(50% - 0.5px), var(--bf-mould) calc(50% - 0.5px), var(--bf-mould) calc(50% + 0.5px), transparent calc(50% + 0.5px));
	box-shadow: inset 0 0 0 1px var(--bf-mould);
	cursor: default;
}

#hs-bf-advento .hsbf-door.is-missed:hover { transform: none; }
#hs-bf-advento .hsbf-door.is-missed .hsbf-day { color: var(--bf-gone); }
#hs-bf-advento .hsbf-door.is-missed .hsbf-state { color: var(--bf-gone); }

/* ---------- legenda ---------- */

#hs-bf-advento .hsbf-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 22px;
	margin-top: 16px;
	font-size: 13px;
	color: var(--bf-muted);
}

#hs-bf-advento .hsbf-legend-item {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

#hs-bf-advento .hsbf-swatch {
	display: inline-block;
	width: 14px;
	height: 18px;
	background: var(--bf-white);
	box-shadow: inset 0 0 0 1px var(--bf-mould);
}

#hs-bf-advento .hsbf-swatch.is-today { background: var(--bf-black); box-shadow: none; }
#hs-bf-advento .hsbf-swatch.is-opened { box-shadow: inset 0 0 0 2px var(--bf-bronze); }
#hs-bf-advento .hsbf-swatch.is-missed {
	background: linear-gradient(to top right, transparent calc(50% - 0.5px), var(--bf-mould) calc(50% - 0.5px), var(--bf-mould) calc(50% + 0.5px), transparent calc(50% + 0.5px));
}

/* ---------- animações ---------- */

#hs-bf-advento .hsbf-door.is-flipping { animation: hsbf-open 0.45s ease forwards; }

@keyframes hsbf-open {
	0% { transform: perspective(700px) rotateY(0); }
	100% { transform: perspective(700px) rotateY(-75deg); opacity: 0.3; }
}

/* ---------- painel da porta ---------- */

#hs-bf-advento .hsbf-panel { margin-top: 24px; }
#hs-bf-advento .hsbf-panel:empty { display: none; }

#hs-bf-advento .hsbf-panel:not(:empty) {
	padding: 18px 22px;
	background: var(--bf-white);
	box-shadow: 0 0 0 1px var(--bf-line);
}

#hs-bf-advento .hsbf-panel.is-today {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px 28px;
	padding: 26px 28px;
	background: var(--bf-black);
	color: var(--bf-white);
	box-shadow: none;
}

#hs-bf-advento .hsbf-offer { flex: 1 1 340px; }

#hs-bf-advento .hsbf-tag {
	margin: 0 0 8px;
	font-size: 13px;
	color: var(--bf-bronze-soft);
}

#hs-bf-advento .hsbf-offer-title {
	margin: 0 0 8px;
	font-size: clamp(22px, 2.8vw, 30px);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
	color: var(--bf-white);
}

#hs-bf-advento .hsbf-offer-label {
	color: var(--bf-bronze-soft);
	margin-right: 10px;
}

#hs-bf-advento .hsbf-desc,
#hs-bf-advento .hsbf-coupon {
	margin: 0 0 4px;
	font-size: 14px;
	color: #cfcbc1;
}

#hs-bf-advento .hsbf-panel-title {
	margin: 0 0 4px;
	font-size: 16px;
	font-weight: 600;
}

#hs-bf-advento .hsbf-panel-msg {
	margin: 0;
	font-size: 14px;
	color: var(--bf-muted);
}

#hs-bf-advento .hsbf-btn,
#hs-bf-advento .hsbf-notify {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 0 26px;
	border-radius: 0;
	font: inherit;
	font-size: 14px;
	font-weight: 500;
	text-transform: none;
	letter-spacing: normal;
	text-decoration: none;
	cursor: pointer;
}

#hs-bf-advento .hsbf-btn {
	background: var(--bf-bronze);
	color: var(--bf-white);
	border: 0;
}

#hs-bf-advento .hsbf-btn:hover,
#hs-bf-advento .hsbf-btn:focus { background: var(--bf-bronze-soft); color: var(--bf-black); }

#hs-bf-advento .hsbf-notify {
	background: transparent;
	color: var(--bf-white);
	border: 1px solid #55524a;
}

#hs-bf-advento .hsbf-notify:hover { border-color: var(--bf-white); }

#hs-bf-advento .hsbf-btn:focus-visible,
#hs-bf-advento .hsbf-notify:focus-visible {
	outline: 2px solid var(--bf-bronze-soft);
	outline-offset: 2px;
}

#hs-bf-advento .hsbf-panel.is-today .hsbf-muted { color: #cfcbc1; }

/* ---------- barra no topo do site ---------- */

body .hsbf-topbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 6px 18px;
	padding: 9px 16px;
	background: var(--bf-black);
	color: var(--bf-white);
	font-size: 13px;
	text-align: center;
	position: relative;
	z-index: 9999;
}

body .hsbf-topbar-cta {
	color: var(--bf-bronze-soft);
	font-weight: 500;
	text-decoration: underline;
	text-underline-offset: 3px;
}

body .hsbf-topbar-cta:hover { color: var(--bf-white); }

/* ---------- responsivo e movimento ---------- */

@media (max-width: 900px) {
	#hs-bf-advento .hsbf-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (max-width: 560px) {
	#hs-bf-advento .hsbf-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
	#hs-bf-advento .hsbf-door { padding: 28px 8px 10px; }
	#hs-bf-advento .hsbf-state { top: 12px; left: 12px; font-size: 10px; }
	#hs-bf-advento .hsbf-door.is-opened .hsbf-day { top: 12px; right: 12px; }
	#hs-bf-advento .hsbf-door-title { font-size: 11px; }
	#hs-bf-advento .hsbf-countdown { align-items: flex-start; }
	#hs-bf-advento .hsbf-btn { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
	#hs-bf-advento .hsbf-door,
	#hs-bf-advento .hsbf-fill { transition: none; }
	#hs-bf-advento .hsbf-door.is-flipping { animation: none; }
}

/* ---------- popup ---------- */

html.hsbf-lock,
html.hsbf-lock body { overflow: hidden; }

body .hsbf-modal {
	position: fixed;
	inset: 0;
	z-index: 2147483000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
	background: rgba(0, 0, 0, 0.55);
	animation: hsbf-fade 0.2s ease;
}

body .hsbf-modal-box {
	position: relative;
	width: 100%;
	max-width: 1080px;
	max-height: calc(100vh - 32px);
	overflow-y: auto;
	overscroll-behavior: contain;
	background: #f6f6f3;
	animation: hsbf-rise 0.25s ease;
}

body .hsbf-modal-box #hs-bf-advento {
	max-width: none;
	margin: 0;
}

html body .hsbf-close.hsbf-close {
	position: sticky;
	top: 0;
	float: right;
	z-index: 2;
	width: 48px;
	height: 48px;
	margin: 0 0 -48px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: #000;
	color: #fff;
	font: inherit;
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
}

html body .hsbf-close.hsbf-close:hover { background: #796f51; }
html body .hsbf-close.hsbf-close:focus-visible { outline: 2px solid #c2b58c; outline-offset: -4px; }

@keyframes hsbf-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes hsbf-rise { from { transform: translateY(16px); opacity: 0; } to { transform: none; opacity: 1; } }

/* ---------- botão flutuante ---------- */

html body .hsbf-fab.hsbf-fab {
	position: fixed;
	left: 20px;
	bottom: 20px;
	z-index: 99990;
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 52px;
	padding: 6px 18px 6px 6px;
	border: 0;
	border-radius: 0;
	background: #000;
	color: #fff;
	box-shadow: inset 0 0 0 1px #796f51;
	font: inherit;
	font-size: 13px;
	font-weight: 500;
	text-transform: none;
	letter-spacing: normal;
	cursor: pointer;
}

body .hsbf-fab-day {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	background: #796f51;
	color: #fff;
	font-size: 18px;
	font-weight: 300;
	font-variant-numeric: tabular-nums;
}

html body .hsbf-fab.hsbf-fab.is-new::after {
	content: "";
	position: absolute;
	top: -4px;
	right: -4px;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #c2b58c;
	box-shadow: 0 0 0 2px #fff;
}

html body .hsbf-fab.hsbf-fab:hover .hsbf-fab-day { background: #c2b58c; color: #000; }
html body .hsbf-fab.hsbf-fab:focus-visible { outline: 2px solid #796f51; outline-offset: 3px; }

@media (max-width: 560px) {
	body .hsbf-modal { padding: 0; }
	body .hsbf-modal-box { max-height: 100vh; height: 100%; }
	html body .hsbf-fab.hsbf-fab { left: 12px; bottom: 12px; padding-right: 6px; }
	body .hsbf-fab-txt { display: none; }
}

@media (prefers-reduced-motion: reduce) {
	body .hsbf-modal,
	body .hsbf-modal-box { animation: none; }
}

/* =========================================================
 * Campanha "Obcecados pela Black Friday? Até as paredes…"
 * Portas abertas = pintadas de preto; porta de hoje = meia pintada.
 * ======================================================= */

/* ---------- portas ---------- */

#hs-bf-advento .hsbf-door.is-opened {
	background: var(--bf-black);
	box-shadow: inset 0 0 0 9px var(--bf-black), inset 0 0 0 10px #3b3b3b, 0 0 0 1px var(--bf-black);
}

#hs-bf-advento .hsbf-door.is-opened .hsbf-door-label { color: var(--bf-white); }
#hs-bf-advento .hsbf-door.is-opened .hsbf-door-title { color: #e9e6df; }
#hs-bf-advento .hsbf-door.is-opened .hsbf-state { color: var(--bf-bronze-soft); }
#hs-bf-advento .hsbf-door.is-opened .hsbf-day { color: #8f8b82; }

#hs-bf-advento .hsbf-door.is-opened.is-current {
	box-shadow: inset 0 0 0 9px var(--bf-black), inset 0 0 0 11px var(--bf-bronze-soft), 0 0 0 1px var(--bf-black);
}

#hs-bf-advento .hsbf-door.is-today {
	background: var(--bf-white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 100' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M40 0H3L1 3 4 7 0 11 3 15 1 19 4 24 2 28 0 33 3 37 1 42 4 46 2 51 0 55 3 60 1 64 4 69 2 73 0 78 3 82 1 87 4 91 2 96 3 100H40Z'/%3E%3C/svg%3E") right top / 58% 100% no-repeat;
	color: var(--bf-text);
	box-shadow: inset 0 0 0 1px var(--bf-line), 0 0 0 1px var(--bf-line);
}

#hs-bf-advento .hsbf-door.is-today .hsbf-day {
	color: var(--bf-white);
	mix-blend-mode: difference;
	font-weight: 600;
}

#hs-bf-advento .hsbf-door.is-today .hsbf-state { color: var(--bf-black); }
#hs-bf-advento .hsbf-swatch.is-today { background: linear-gradient(90deg, #fff 45%, #000 45%); box-shadow: inset 0 0 0 1px var(--bf-mould); }
#hs-bf-advento .hsbf-swatch.is-opened { background: var(--bf-black); box-shadow: none; }

/* ---------- popup com imagem da campanha ---------- */

body .hsbf-modal-box {
	display: grid;
	grid-template-columns: 1fr;
	height: min(880px, calc(100vh - 32px));
	max-height: none;
	overflow: hidden;
}

body .hsbf-modal-box.has-hero {
	grid-template-columns: minmax(300px, 40%) 1fr;
	max-width: 1240px;
}

body .hsbf-modal-main {
	min-height: 0;
	overflow-y: auto;
	overscroll-behavior: contain;
}

html body .hsbf-close.hsbf-close {
	position: absolute;
	top: 0;
	right: 0;
	float: none;
	margin: 0;
	z-index: 3;
}

body .hsbf-modal-main .hsbf-head { padding-right: 36px; }

body .hsbf-modal-box.has-hero #hs-bf-advento .hsbf-title {
	font-size: 20px;
	font-weight: 600;
	letter-spacing: 0;
	margin-bottom: 6px;
}

body .hsbf-hero {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 34px 30px;
	background-color: #d9d7d2;
	background-position: 36% center;
	background-size: cover;
	background-repeat: no-repeat;
	color: #fff;
	overflow: hidden;
}

body .hsbf-hero::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 45%;
	background: linear-gradient(to top, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0));
	pointer-events: none;
}

html body .hsbf-modal .hsbf-hero p {
	position: relative;
	z-index: 1;
	margin: 0;
	color: #fff;
	font-family: 'Poppins', 'Inter', sans-serif;
	font-weight: 800;
	text-transform: uppercase;
	line-height: 0.92;
	letter-spacing: -0.02em;
	text-align: left;
	text-shadow: 0 2px 18px rgba(0, 0, 0, 0.22);
}

body .hsbf-hero-l1 { display: block; font-size: clamp(36px, 4vw, 58px); }
body .hsbf-hero-l2 { display: block; font-size: clamp(26px, 2.9vw, 42px); margin-top: 4px; }
body .hsbf-hero-l2 small { font-size: 0.5em; font-weight: 800; }
body .hsbf-hero-l3 { display: block; font-size: clamp(24px, 2.5vw, 36px); }

html body .hsbf-modal .hsbf-hero .hsbf-hero-l4 {
	display: block;
	margin-top: 6px;
	font-size: clamp(18px, 1.8vw, 26px);
	font-weight: 300;
	text-transform: none;
	letter-spacing: 0;
	line-height: 1.1;
}

@media (max-width: 860px) {
	body .hsbf-modal-box.has-hero { grid-template-columns: 1fr; grid-template-rows: auto; overflow-y: auto; }
	body .hsbf-modal-box.has-hero .hsbf-modal-main { overflow: visible; }
	body .hsbf-hero { min-height: 260px; padding: 24px 20px; background-position: 40% 22%; }
	body .hsbf-hero-l1 { font-size: 38px; }
	body .hsbf-hero-l2 { font-size: 28px; }
	body .hsbf-hero-l3 { font-size: 22px; }
}

@media (max-width: 560px) {
	body .hsbf-modal-box { height: 100%; }
	body .hsbf-modal-main #hs-bf-advento { padding-top: 28px; }
}

/* ---------- afinações: portas abertas ---------- */

#hs-bf-advento .hsbf-door { overflow: hidden; }

#hs-bf-advento .hsbf-door.is-opened .hsbf-state {
	top: auto;
	bottom: 14px;
	left: 0;
	right: 0;
	text-align: center;
}

#hs-bf-advento .hsbf-door.is-opened .hsbf-day {
	left: 18px;
	right: auto;
}

#hs-bf-advento .hsbf-door.is-opened { padding-bottom: 30px; }
#hs-bf-advento .hsbf-door-title { -webkit-line-clamp: 2; }

@media (max-width: 560px) {
	#hs-bf-advento .hsbf-door.is-opened .hsbf-state { bottom: 10px; }
	#hs-bf-advento .hsbf-door.is-opened .hsbf-day { left: 12px; }
	#hs-bf-advento .hsbf-door-label { font-size: 20px; }
}

/* =========================================================
 * TEMA "PAREDES" (ativo por defeito)
 * Elegante e preto: cada dia revela uma parede decorada com um
 * produto HOMESTAR (boiserie, revestimento 3D, sancas, rodapés,
 * vigas, colunas). O tema "Pintura" acima fica como reserva.
 * ======================================================= */

#hs-bf-advento.hsbf-t-parede {
	--w-bg: #0b0b0b;
	--w-wall: #181817;
	--w-wall-2: #1f1f1d;
	--w-line: #2c2b28;
	--w-text: #f2eee6;
	--w-muted: #9a958b;
	--w-dim: #5a5750;
	--w-bronze: #a8996c;
	--w-bronze-soft: #cdbf93;
	--w-orn: rgba(205, 191, 147, 0.34);
	--w-orn-2: rgba(205, 191, 147, 0.16);
	background: var(--w-bg);
	color: var(--w-text);
}

#hs-bf-advento.hsbf-t-parede .hsbf-title,
body .hsbf-modal-box.has-hero #hs-bf-advento.hsbf-t-parede .hsbf-title {
	color: var(--w-text);
	font-family: 'Cormorant', Georgia, serif;
	font-style: italic;
	font-weight: 300;
	font-size: clamp(30px, 3.4vw, 42px);
	letter-spacing: 0;
	line-height: 1;
}

#hs-bf-advento.hsbf-t-parede .hsbf-sub,
#hs-bf-advento.hsbf-t-parede .hsbf-msg,
#hs-bf-advento.hsbf-t-parede .hsbf-countdown,
#hs-bf-advento.hsbf-t-parede .hsbf-muted { color: var(--w-muted); }

#hs-bf-advento.hsbf-t-parede .hsbf-cd-val { color: var(--w-text); font-weight: 300; }
#hs-bf-advento.hsbf-t-parede .hsbf-track { background: var(--w-line); }
#hs-bf-advento.hsbf-t-parede .hsbf-fill { background: var(--w-bronze-soft); }

#hs-bf-advento.hsbf-t-parede .hsbf-bonus { background: #141413; border-color: var(--w-bronze); }
#hs-bf-advento.hsbf-t-parede .hsbf-code { background: var(--w-bronze-soft); color: #0b0b0b; }

/* ---------- paredes: base (por revelar) ---------- */

#hs-bf-advento.hsbf-t-parede .hsbf-door {
	background: var(--w-wall);
	color: var(--w-text);
	box-shadow: inset 0 0 0 1px var(--w-line);
	isolation: isolate;
}

#hs-bf-advento.hsbf-t-parede .hsbf-door > span { position: relative; z-index: 1; }
#hs-bf-advento.hsbf-t-parede .hsbf-door > .hsbf-state,
#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened > .hsbf-day { position: absolute; }

#hs-bf-advento.hsbf-t-parede .hsbf-day {
	font-family: 'Cormorant', Georgia, serif;
	font-style: italic;
	font-weight: 300;
	font-size: clamp(36px, 4vw, 54px);
	color: var(--w-dim);
}

/* rodapé discreto: lê-se como parede nua */
#hs-bf-advento.hsbf-t-parede .hsbf-door.is-future::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 13%;
	height: 1px;
	background: var(--w-line);
}

#hs-bf-advento.hsbf-t-parede .hsbf-teaser { color: var(--w-bronze-soft); }

/* ---------- parede de hoje: marcação da moldura a aplicar ---------- */

#hs-bf-advento.hsbf-t-parede .hsbf-door.is-today {
	background: #000;
	color: var(--w-text);
	box-shadow: inset 0 0 0 1px var(--w-bronze);
}

#hs-bf-advento.hsbf-t-parede .hsbf-door.is-today::before {
	content: "";
	position: absolute;
	inset: 16px;
	border: 1px dashed var(--w-orn);
	pointer-events: none;
}

#hs-bf-advento.hsbf-t-parede .hsbf-door.is-today .hsbf-day {
	color: var(--w-text);
	mix-blend-mode: normal;
	font-weight: 300;
}

#hs-bf-advento.hsbf-t-parede .hsbf-door.is-today .hsbf-state { color: var(--w-bronze-soft); }

#hs-bf-advento.hsbf-t-parede .hsbf-cta-mini {
	background: var(--w-bronze-soft);
	color: #0b0b0b;
	letter-spacing: 0.04em;
}

#hs-bf-advento.hsbf-t-parede .hsbf-door.is-today:hover .hsbf-cta-mini { background: #fff; color: #000; }

/* ---------- parede revelada ---------- */

#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened {
	background: var(--w-wall-2);
	box-shadow: inset 0 0 0 1px var(--w-line);
}

#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened.is-current { box-shadow: inset 0 0 0 1px var(--w-bronze-soft); }

#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened .hsbf-day {
	font-size: 15px;
	color: var(--w-muted);
}

#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened .hsbf-state { color: var(--w-bronze-soft); }

#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened .hsbf-door-label {
	color: #fff;
	font-weight: 600;
	text-shadow: 0 1px 10px rgba(0, 0, 0, 0.9);
}

#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened .hsbf-door-title {
	color: #ddd8cd;
	font-weight: 500;
	text-shadow: 0 1px 8px rgba(0, 0, 0, 0.9);
}

/* decorações: desenhadas atrás do texto */
#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened::before,
#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened::after {
	content: "";
	position: absolute;
	pointer-events: none;
	z-index: 0;
}

/* boiserie / frisos: dois quadros com moldura dupla */
#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-boiserie::before,
#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-boiserie::after {
	left: 15%;
	right: 15%;
	border: 1px solid var(--w-orn);
	box-shadow: inset 0 0 0 4px var(--w-wall-2), inset 0 0 0 5px var(--w-orn-2);
}
#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-boiserie::before { top: 10%; height: 30%; }
#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-boiserie::after { top: 46%; bottom: 10%; }

/* revestimento 3D: ripado vertical */
#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-revestimento::before {
	inset: 0;
	background: repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.055) 0 2px, rgba(255, 255, 255, 0) 2px 8px, rgba(0, 0, 0, 0.45) 8px 10px, rgba(0, 0, 0, 0) 10px 13px);
}

/* sancas: moldura escalonada no topo */
#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-sancas::before {
	top: 0;
	left: 0;
	right: 0;
	height: 17%;
	background: linear-gradient(180deg, #32302c 0 18%, #191917 18% 26%, #3a3833 26% 48%, #1a1a18 48% 56%, #2b2a26 56% 82%, #1f1f1d 82% 100%);
	border-bottom: 1px solid var(--w-orn);
}

/* rodapés: rodapé alto em baixo */
#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-rodapes::before {
	bottom: 0;
	left: 0;
	right: 0;
	height: 19%;
	background: linear-gradient(0deg, #2a2925 0 58%, #1a1a18 58% 64%, #36342f 64% 84%, #1f1f1d 84% 100%);
	border-top: 1px solid var(--w-orn);
}

/* vigas: duas vigas horizontais com veio */
#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-vigas::before,
#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-vigas::after {
	left: 0;
	right: 0;
	height: 11%;
	background: repeating-linear-gradient(90deg, #2d2a24 0 22px, #27251f 22px 26px, #312e27 26px 40px);
	box-shadow: 0 6px 10px rgba(0, 0, 0, 0.5);
	border-bottom: 1px solid var(--w-orn-2);
}
#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-vigas::before { top: 6%; }
#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-vigas::after { top: 22%; }

/* colunas: duas pilastras caneladas */
#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-colunas::before,
#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-colunas::after {
	top: 0;
	bottom: 0;
	width: 15%;
	background: repeating-linear-gradient(90deg, #34322d 0 2px, #1b1b19 2px 5px);
	border-left: 1px solid var(--w-orn-2);
	border-right: 1px solid var(--w-orn-2);
}
#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-colunas::before { left: 7%; }
#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-colunas::after { right: 7%; }

/* ---------- parede perdida ---------- */

#hs-bf-advento.hsbf-t-parede .hsbf-door.is-missed {
	background: linear-gradient(to top right, transparent calc(50% - 0.5px), var(--w-line) calc(50% - 0.5px), var(--w-line) calc(50% + 0.5px), transparent calc(50% + 0.5px)), #0f0f0e;
	box-shadow: inset 0 0 0 1px #1f1e1c;
}

#hs-bf-advento.hsbf-t-parede .hsbf-door.is-missed .hsbf-day { color: #3d3b37; }
#hs-bf-advento.hsbf-t-parede .hsbf-door.is-missed .hsbf-state { color: var(--w-dim); }

/* ---------- legenda ---------- */

#hs-bf-advento.hsbf-t-parede .hsbf-legend { color: var(--w-muted); }
#hs-bf-advento.hsbf-t-parede .hsbf-swatch { background: var(--w-wall); box-shadow: inset 0 0 0 1px var(--w-line); }
#hs-bf-advento.hsbf-t-parede .hsbf-swatch.is-today { background: #000; box-shadow: inset 0 0 0 1px var(--w-bronze-soft); }
#hs-bf-advento.hsbf-t-parede .hsbf-swatch.is-opened { background: var(--w-wall-2); box-shadow: inset 0 0 0 1px var(--w-line), inset 0 0 0 3px var(--w-wall-2), inset 0 0 0 4px var(--w-orn); }
#hs-bf-advento.hsbf-t-parede .hsbf-swatch.is-missed { background: linear-gradient(to top right, transparent calc(50% - 0.5px), var(--w-line) calc(50% - 0.5px), var(--w-line) calc(50% + 0.5px), transparent calc(50% + 0.5px)), #0f0f0e; box-shadow: inset 0 0 0 1px #1f1e1c; }

/* ---------- painel ---------- */

#hs-bf-advento.hsbf-t-parede .hsbf-panel:not(:empty) { background: #141413; box-shadow: 0 0 0 1px var(--w-line); }
#hs-bf-advento.hsbf-t-parede .hsbf-panel-title { color: var(--w-text); }
#hs-bf-advento.hsbf-t-parede .hsbf-panel-msg { color: var(--w-muted); }

#hs-bf-advento.hsbf-t-parede .hsbf-panel.is-today {
	background: #000;
	box-shadow: inset 0 0 0 1px var(--w-line);
}

#hs-bf-advento.hsbf-t-parede .hsbf-tag { color: var(--w-bronze-soft); letter-spacing: 0.04em; }

#hs-bf-advento.hsbf-t-parede .hsbf-offer-title {
	font-family: 'Cormorant', Georgia, serif;
	font-style: italic;
	font-weight: 300;
	font-size: clamp(28px, 3.2vw, 40px);
	letter-spacing: 0;
}

#hs-bf-advento.hsbf-t-parede .hsbf-offer-label {
	font-family: 'Inter', sans-serif;
	font-style: normal;
	font-weight: 600;
	color: var(--w-bronze-soft);
}

#hs-bf-advento.hsbf-t-parede .hsbf-btn { background: var(--w-bronze-soft); color: #0b0b0b; }
#hs-bf-advento.hsbf-t-parede .hsbf-btn:hover,
#hs-bf-advento.hsbf-t-parede .hsbf-btn:focus { background: #fff; color: #000; }

/* ---------- popup: coluna tipográfica com boiserie ---------- */

body .hsbf-modal-box.hsbf-t-parede { background: #0b0b0b; }
html body .hsbf-modal-box.hsbf-t-parede .hsbf-close.hsbf-close { background: #151514; color: #f2eee6; box-shadow: inset 0 0 0 1px #2c2b28; }
html body .hsbf-modal-box.hsbf-t-parede .hsbf-close.hsbf-close:hover { background: #cdbf93; color: #000; }

body .hsbf-modal-box.hsbf-t-parede .hsbf-hero {
	background: #000;
	padding: 64px 54px;
	justify-content: center;
	gap: 48px;
}

body .hsbf-modal-box.hsbf-t-parede .hsbf-hero::before {
	content: "";
	position: absolute;
	inset: 26px;
	border: 1px solid rgba(205, 191, 147, 0.34);
	box-shadow: inset 0 0 0 10px #000, inset 0 0 0 11px rgba(205, 191, 147, 0.16);
	pointer-events: none;
}

body .hsbf-modal-box.hsbf-t-parede .hsbf-hero::after {
	left: 26px;
	right: 26px;
	bottom: 26px;
	height: 15%;
	background: linear-gradient(0deg, #141412 0 60%, #000 60% 66%, #1b1a18 66% 100%);
	border-top: 1px solid rgba(205, 191, 147, 0.34);
}

html body .hsbf-modal .hsbf-t-parede .hsbf-hero p {
	font-family: 'Cormorant', Georgia, serif;
	font-style: italic;
	font-weight: 300;
	text-transform: none;
	letter-spacing: 0;
	line-height: 0.95;
	text-shadow: none;
	color: #f2eee6;
}

body .hsbf-t-parede .hsbf-hero-l1 { font-size: clamp(48px, 5vw, 74px); }
body .hsbf-t-parede .hsbf-hero-l2 { font-size: clamp(34px, 3.4vw, 50px); margin-top: 6px; }
body .hsbf-t-parede .hsbf-hero-l2 small { font-size: 1em; font-weight: 300; }

html body .hsbf-modal .hsbf-t-parede .hsbf-hero .hsbf-hero-l3 {
	font-family: 'Inter', sans-serif;
	font-style: normal;
	font-weight: 500;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: 0.24em;
	color: #cdbf93;
}

html body .hsbf-modal .hsbf-t-parede .hsbf-hero .hsbf-hero-l4 {
	margin-top: 12px;
	font-family: 'Cormorant', Georgia, serif;
	font-style: italic;
	font-weight: 300;
	font-size: clamp(26px, 2.4vw, 34px);
	line-height: 1.05;
}

@media (max-width: 860px) {
	body .hsbf-modal-box.hsbf-t-parede .hsbf-hero { min-height: 0; padding: 44px 36px 56px; gap: 22px; }
	body .hsbf-modal-box.hsbf-t-parede .hsbf-hero::before { inset: 14px; }
	body .hsbf-modal-box.hsbf-t-parede .hsbf-hero::after { left: 14px; right: 14px; bottom: 14px; height: 18px; }
	body .hsbf-t-parede .hsbf-hero-l1 { font-size: 46px; }
	body .hsbf-t-parede .hsbf-hero-l2 { font-size: 32px; }
}

/* ---------- tema Paredes: afinações ---------- */

body .hsbf-modal-box.hsbf-t-parede .hsbf-hero::after { display: none; }

#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened { padding: 26px 10px 32px; gap: 4px; }
#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened .hsbf-door-label { font-size: clamp(20px, 2vw, 26px); }
#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened .hsbf-door-title { font-size: 12px; line-height: 1.2; -webkit-line-clamp: 2; }
#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened .hsbf-state { bottom: 10px; font-size: 10px; letter-spacing: 0.04em; }
#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened .hsbf-day { top: 10px; left: 12px; }

@media (max-width: 560px) {
	#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened .hsbf-door-label { font-size: 18px; }
	#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened .hsbf-door-title { font-size: 10px; }
}

/* ---------- tema Paredes: fotografia da campanha na coluna lateral ---------- */

body .hsbf-modal-box.hsbf-t-parede .hsbf-hero {
	justify-content: space-between;
	gap: 0;
	padding: 58px 50px 54px;
	background-color: #000;
	background-size: cover;
	background-position: 38% center;
	background-repeat: no-repeat;
}

body .hsbf-modal-box.hsbf-t-parede .hsbf-hero::before { z-index: 2; }

body .hsbf-modal-box.hsbf-t-parede .hsbf-hero::after {
	display: block;
	content: "";
	position: absolute;
	inset: 0;
	height: auto;
	border: 0;
	z-index: 0;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.78) 0%, rgba(0, 0, 0, 0.35) 26%, rgba(0, 0, 0, 0) 44%, rgba(0, 0, 0, 0) 58%, rgba(0, 0, 0, 0.55) 76%, rgba(0, 0, 0, 0.88) 100%);
}

html body .hsbf-modal .hsbf-t-parede .hsbf-hero p { text-shadow: 0 2px 16px rgba(0, 0, 0, 0.45); }

@media (max-width: 860px) {
	body .hsbf-modal-box.hsbf-t-parede .hsbf-hero { min-height: 300px; padding: 34px 30px; background-position: 40% 24%; }
}

/* ---------- tema Paredes: coluna lateral igual ao visual da campanha ---------- */

body .hsbf-modal-box.hsbf-t-parede .hsbf-hero {
	justify-content: space-between;
	gap: 0;
	padding: 34px 30px;
	background-position: 36% center;
}

body .hsbf-modal-box.hsbf-t-parede .hsbf-hero::before { display: none; }

body .hsbf-modal-box.hsbf-t-parede .hsbf-hero::after {
	display: block;
	inset: auto 0 0 0;
	height: 45%;
	border: 0;
	background: linear-gradient(to top, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0));
}

html body .hsbf-modal .hsbf-modal-box.hsbf-t-parede .hsbf-hero p {
	font-family: 'Poppins', 'Inter', sans-serif;
	font-style: normal;
	font-weight: 800;
	text-transform: uppercase;
	line-height: 0.92;
	letter-spacing: -0.02em;
	color: #fff;
	text-shadow: 0 2px 18px rgba(0, 0, 0, 0.22);
}

html body .hsbf-modal .hsbf-modal-box.hsbf-t-parede .hsbf-hero .hsbf-hero-l1 { font-size: clamp(36px, 4vw, 58px); }
html body .hsbf-modal .hsbf-modal-box.hsbf-t-parede .hsbf-hero .hsbf-hero-l2 { font-size: clamp(26px, 2.9vw, 42px); margin-top: 4px; }
html body .hsbf-modal .hsbf-modal-box.hsbf-t-parede .hsbf-hero .hsbf-hero-l2 small { font-size: 0.5em; font-weight: 800; }

html body .hsbf-modal .hsbf-modal-box.hsbf-t-parede .hsbf-hero .hsbf-hero-l3 {
	font-family: 'Poppins', 'Inter', sans-serif;
	font-style: normal;
	font-weight: 800;
	font-size: clamp(24px, 2.5vw, 36px);
	text-transform: uppercase;
	letter-spacing: -0.02em;
	color: #fff;
}

html body .hsbf-modal .hsbf-modal-box.hsbf-t-parede .hsbf-hero .hsbf-hero-l4 {
	margin-top: 6px;
	font-family: 'Poppins', 'Inter', sans-serif;
	font-style: normal;
	font-weight: 300;
	font-size: clamp(18px, 1.8vw, 26px);
	text-transform: none;
	letter-spacing: 0;
	line-height: 1.1;
}

@media (max-width: 860px) {
	body .hsbf-modal-box.hsbf-t-parede .hsbf-hero { min-height: 260px; padding: 24px 20px; background-position: 40% 22%; }
	html body .hsbf-modal .hsbf-modal-box.hsbf-t-parede .hsbf-hero .hsbf-hero-l1 { font-size: 38px; }
	html body .hsbf-modal .hsbf-modal-box.hsbf-t-parede .hsbf-hero .hsbf-hero-l2 { font-size: 28px; }
	html body .hsbf-modal .hsbf-modal-box.hsbf-t-parede .hsbf-hero .hsbf-hero-l3 { font-size: 22px; }
}

/* =========================================================
 * Tema Paredes: paredes reveladas em branco
 * ======================================================= */

#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened {
	--w-wall-2: #f4f1ea;
	--w-orn: rgba(121, 111, 81, 0.5);
	--w-orn-2: rgba(121, 111, 81, 0.22);
	background: #f4f1ea;
	box-shadow: inset 0 0 0 1px #f4f1ea;
}

#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened.is-current { box-shadow: inset 0 0 0 2px var(--w-bronze-soft), 0 0 0 1px var(--w-bronze); }
#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened .hsbf-door-label { color: #0b0b0b; text-shadow: none; }
#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened .hsbf-door-title { color: #3a3833; text-shadow: none; }
#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened .hsbf-day { color: #8a8578; }
#hs-bf-advento.hsbf-t-parede .hsbf-door.is-opened .hsbf-state { color: #796f51; }

#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-revestimento::before {
	background: repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.95) 0 2px, rgba(255, 255, 255, 0) 2px 8px, rgba(0, 0, 0, 0.07) 8px 10px, rgba(0, 0, 0, 0) 10px 13px);
}

#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-sancas::before {
	background: linear-gradient(180deg, #e2dccf 0 18%, #fbfaf6 18% 26%, #d8d1c2 26% 48%, #f7f5ef 48% 56%, #e6e1d5 56% 82%, #f4f1ea 82% 100%);
}

#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-rodapes::before {
	background: linear-gradient(0deg, #e3ddd0 0 58%, #fbfaf6 58% 64%, #d8d1c2 64% 84%, #f4f1ea 84% 100%);
}

#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-vigas::before,
#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-vigas::after {
	background: repeating-linear-gradient(90deg, #cfc4ae 0 22px, #c5b9a1 22px 26px, #d7cdb8 26px 40px);
	box-shadow: 0 6px 10px rgba(0, 0, 0, 0.12);
}

#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-colunas::before,
#hs-bf-advento.hsbf-t-parede .hsbf-door.deco-colunas::after {
	background: repeating-linear-gradient(90deg, #ffffff 0 2px, #e2ddd1 2px 5px);
}

#hs-bf-advento.hsbf-t-parede .hsbf-swatch.is-opened {
	background: #f4f1ea;
	box-shadow: inset 0 0 0 1px #d8d2c4, inset 0 0 0 3px #f4f1ea, inset 0 0 0 4px rgba(121, 111, 81, 0.5);
}

/* =========================================================
 * Formulário para visitantes sem login
 * ======================================================= */

#hs-bf-advento { position: relative; }

#hs-bf-advento .hsbf-gate {
	position: absolute;
	inset: 0;
	z-index: 20;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	padding: 56px 20px 20px;
	background: rgba(11, 11, 11, 0.8);
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
	animation: hsbf-fade 0.2s ease;
}

#hs-bf-advento .hsbf-gate-box {
	width: 100%;
	max-width: 440px;
	margin: 0;
	padding: 30px 28px 22px;
	background: #000;
	color: #f2eee6;
	box-shadow: inset 0 0 0 1px #a8996c, 0 20px 60px rgba(0, 0, 0, 0.6);
	text-align: left;
	animation: hsbf-rise 0.25s ease;
}

#hs-bf-advento .hsbf-gate-title {
	margin: 0 0 8px;
	font-family: 'Cormorant', Georgia, serif;
	font-style: italic;
	font-weight: 300;
	font-size: 32px;
	line-height: 1.05;
	color: #f2eee6;
}

#hs-bf-advento .hsbf-gate-text {
	margin: 0 0 20px;
	font-size: 14px;
	line-height: 1.5;
	color: #b9b3a7;
}

#hs-bf-advento .hsbf-gate-box.is-done { padding-bottom: 30px; }
#hs-bf-advento .hsbf-gate-box.is-done .hsbf-gate-text { margin: 0; }

#hs-bf-advento .hsbf-field { display: block; margin: 0 0 14px; }

#hs-bf-advento .hsbf-field-label {
	display: block;
	margin-bottom: 6px;
	font-size: 12px;
	letter-spacing: 0.04em;
	color: #cdbf93;
}

#hs-bf-advento .hsbf-gate input[type="text"],
#hs-bf-advento .hsbf-gate input[type="email"],
#hs-bf-advento .hsbf-gate input[type="tel"] {
	display: block;
	width: 100%;
	height: 46px;
	margin: 0;
	padding: 0 14px;
	background: #141413;
	color: #f2eee6;
	border: 1px solid #2c2b28;
	border-radius: 0;
	box-shadow: none;
	font: inherit;
	font-size: 15px;
}

#hs-bf-advento .hsbf-gate input:focus {
	outline: none;
	border-color: #cdbf93;
}

#hs-bf-advento .hsbf-tel { display: flex; gap: 8px; }
#hs-bf-advento .hsbf-gate .hsbf-tel input.hsbf-ddi { flex: 0 0 78px; width: 78px; text-align: center; }
#hs-bf-advento .hsbf-tel input[type="tel"] { flex: 1 1 auto; }

#hs-bf-advento .hsbf-gate input.hsbf-hp {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	opacity: 0;
}

#hs-bf-advento .hsbf-consent {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin: 4px 0 16px;
	font-size: 12px;
	line-height: 1.45;
	color: #b9b3a7;
	cursor: pointer;
}

#hs-bf-advento .hsbf-consent input {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	margin: 1px 0 0;
	accent-color: #cdbf93;
}

#hs-bf-advento .hsbf-consent a { color: #cdbf93; text-decoration: underline; }

#hs-bf-advento .hsbf-gate-err {
	margin: 0 0 12px;
	font-size: 13px;
	color: #ff9b8a;
}

#hs-bf-advento .hsbf-gate-err:empty { display: none; }

#hs-bf-advento .hsbf-btn.hsbf-gate-submit {
	width: 100%;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	font-size: 13px;
}

#hs-bf-advento .hsbf-btn.hsbf-gate-submit[disabled] { opacity: 0.6; cursor: wait; }

#hs-bf-advento .hsbf-gate-later {
	display: block;
	width: 100%;
	margin: 10px 0 0;
	padding: 8px;
	background: none;
	border: 0;
	box-shadow: none;
	color: #9a958b;
	font: inherit;
	font-size: 13px;
	text-transform: none;
	letter-spacing: normal;
	text-decoration: underline;
	cursor: pointer;
}

#hs-bf-advento .hsbf-gate-later:hover { background: none; color: #f2eee6; }

@media (max-width: 560px) {
	#hs-bf-advento .hsbf-gate { padding: 16px 8px; }
	#hs-bf-advento .hsbf-gate-box { padding: 24px 18px 18px; }
	#hs-bf-advento .hsbf-gate-title { font-size: 27px; }
}

#hs-bf-advento .hsbf-consent,
#hs-bf-advento .hsbf-consent span { font-weight: 400; }
#hs-bf-advento .hsbf-field-label { font-weight: 500; }

#hs-bf-advento .hsbf-gate-box.is-done .hsbf-gate-submit { margin-top: 20px; }

/* ---------- parede final (27/11) ---------- */

#hs-bf-advento .hsbf-final { color: #cdbf93; font-weight: 500; }

#hs-bf-advento .hsbf-door.is-locked,
#hs-bf-advento.hsbf-t-parede .hsbf-door.is-locked {
	background: #0f0f0e;
	box-shadow: inset 0 0 0 1px #3a3833;
	cursor: default;
}

#hs-bf-advento .hsbf-door.is-locked::before,
#hs-bf-advento.hsbf-t-parede .hsbf-door.is-locked::before {
	content: "";
	position: absolute;
	inset: 16px;
	border: 1px dashed rgba(205, 191, 147, 0.3);
	pointer-events: none;
}

#hs-bf-advento .hsbf-door.is-locked:hover { transform: none; }
#hs-bf-advento.hsbf-t-parede .hsbf-door.is-locked .hsbf-day { color: #5a5750; }
#hs-bf-advento.hsbf-t-parede .hsbf-door.is-locked .hsbf-state { color: #cdbf93; }

/* =========================================================
 * Popup Elementor do Black Friday (PT 992396 · ES 992951)
 * Imagem sempre inteira no ecrã, sem caixa branca nem scroll.
 * ======================================================= */

#elementor-popup-modal-992396,
#elementor-popup-modal-992951 {
	background-color: rgba(8, 8, 8, 0.78) !important;
}

#elementor-popup-modal-992396 .dialog-widget-content,
#elementor-popup-modal-992951 .dialog-widget-content {
	width: auto !important;
	max-width: 92vw !important;
	max-height: none !important;
	background: #000 !important;
	border-radius: 0 !important;
	overflow: hidden !important;
	box-shadow: 0 30px 90px rgba(0, 0, 0, 0.55), 0 0 0 1px rgba(205, 191, 147, 0.4) !important;
}

#elementor-popup-modal-992396 .dialog-message,
#elementor-popup-modal-992951 .dialog-message {
	width: auto !important;
	height: auto !important;
	max-height: none !important;
	padding: 0 !important;
	overflow: hidden !important;
}

#elementor-popup-modal-992396 .e-con,
#elementor-popup-modal-992951 .e-con,
#elementor-popup-modal-992396 .e-con-inner,
#elementor-popup-modal-992951 .e-con-inner,
#elementor-popup-modal-992396 .elementor-widget-image,
#elementor-popup-modal-992951 .elementor-widget-image,
#elementor-popup-modal-992396 .elementor-widget-container,
#elementor-popup-modal-992951 .elementor-widget-container {
	--padding-top: 0px;
	--padding-right: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--width: auto;
	width: auto !important;
	max-width: none !important;
	min-height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
}

#elementor-popup-modal-992396 .elementor-widget-image a,
#elementor-popup-modal-992951 .elementor-widget-image a {
	display: block;
	line-height: 0;
}

#elementor-popup-modal-992396 img,
#elementor-popup-modal-992951 img {
	display: block !important;
	width: auto !important;
	height: auto !important;
	max-width: min(92vw, 640px) !important;
	max-height: 88vh !important;
	max-height: 88dvh !important;
	object-fit: contain;
	transition: opacity 0.2s ease;
}

#elementor-popup-modal-992396 .elementor-widget-image a:hover img,
#elementor-popup-modal-992951 .elementor-widget-image a:hover img {
	opacity: 0.94;
}

#elementor-popup-modal-992396 .dialog-close-button,
#elementor-popup-modal-992951 .dialog-close-button {
	top: 12px !important;
	right: 12px !important;
	width: 36px !important;
	height: 36px !important;
	padding: 0 !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	background: rgba(0, 0, 0, 0.55) !important;
	border: 1px solid rgba(205, 191, 147, 0.7) !important;
	border-radius: 50% !important;
	color: #fff !important;
	font-size: 15px !important;
	box-shadow: none !important;
}

#elementor-popup-modal-992396 .dialog-close-button i,
#elementor-popup-modal-992951 .dialog-close-button i,
#elementor-popup-modal-992396 .dialog-close-button svg,
#elementor-popup-modal-992951 .dialog-close-button svg {
	color: #fff !important;
	fill: #fff !important;
}

#elementor-popup-modal-992396 .dialog-close-button:hover,
#elementor-popup-modal-992951 .dialog-close-button:hover {
	background: #cdbf93 !important;
	border-color: #cdbf93 !important;
}

@media (max-width: 560px) {
	#elementor-popup-modal-992396 img,
#elementor-popup-modal-992951 img {
		max-width: 90vw !important;
		max-height: 82vh !important;
		max-height: 82dvh !important;
	}
	#elementor-popup-modal-992396 .dialog-close-button,
#elementor-popup-modal-992951 .dialog-close-button {
		top: 8px !important;
		right: 8px !important;
		width: 32px !important;
		height: 32px !important;
	}
}
