/* UP SCORE PRO® — complementos ao theme.json. Classes com prefixo up- são usadas nas páginas. */

:root {
	--up-ouro: linear-gradient(100deg, #8E7A4A 0%, #C2B38A 22%, #F3E6B8 48%, #C2B38A 70%, #8E7A4A 100%);
	--up-prata: linear-gradient(100deg, #8A8F94 0%, #E9ECEE 45%, #B5BABE 70%, #7D8286 100%);
	--up-borda: 1px solid var(--wp--preset--color--linha);
}

::selection { background: #C2B38A; color: #060807; }
body { -webkit-font-smoothing: antialiased; }
img { height: auto; }

/* Cabeçalho fixo e translúcido */
/* O sticky fica no <header> do template: o grupo interno não tem espaço para grudar */
header.wp-block-template-part { position: sticky; top: 0; z-index: 50; }
.up-cabecalho {
	position: relative; isolation: isolate;
	background: rgba(6, 8, 7, .72);
	border-bottom: var(--up-borda);
}
/* O desfoque fica numa camada à parte: backdrop-filter no próprio cabeçalho vira "caixa" para
   elementos fixed e prende o menu de celular dentro da altura do cabeçalho. */
.up-cabecalho::before {
	content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
	backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
}
.admin-bar header.wp-block-template-part { top: 32px; }
@media (max-width: 782px) { .admin-bar header.wp-block-template-part { top: 46px; } }
.up-cabecalho .wp-block-navigation a { color: var(--wp--preset--color--perola); text-decoration: none; }
.up-cabecalho .wp-block-navigation a:hover,
.up-cabecalho .wp-block-navigation .current-menu-item > a { color: var(--wp--preset--color--ouro); }
/* Menu de celular aberto. O bloco de navegação pinta de branco com seletores mais fortes: daí os !important. */
.up-cabecalho .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open {
	background-color: #060807 !important; color: var(--wp--preset--color--perola) !important;
	padding: 1.5rem clamp(1rem, 6vw, 2.5rem);
}
.up-cabecalho .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content,
.up-cabecalho .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog { align-items: flex-start !important; width: 100%; }
.up-cabecalho .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 4rem; gap: 1.4rem; }
.up-cabecalho .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { align-items: flex-start !important; }
.up-cabecalho .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item { font-family: var(--wp--preset--font-family--titulo); font-size: 1.6rem; font-weight: 200; }
.up-cabecalho .wp-block-navigation__responsive-container.is-menu-open a,
.up-cabecalho .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { color: var(--wp--preset--color--perola) !important; }
.up-cabecalho .wp-block-navigation__responsive-container.is-menu-open .current-menu-item > a,
.up-cabecalho .wp-block-navigation__responsive-container.is-menu-open a:hover { color: var(--wp--preset--color--ouro) !important; }
.up-cabecalho .wp-block-navigation__responsive-container-open { color: var(--wp--preset--color--perola); }
.up-cabecalho .wp-block-navigation__responsive-container-close { color: var(--wp--preset--color--ouro) !important; }
.up-logo img { width: auto; max-height: 46px; }

/* Texto em ouro e prata metálicos */
.up-ouro, .up-num { background: var(--up-ouro); -webkit-background-clip: text; background-clip: text; color: transparent !important; }
.up-prata { background: var(--up-prata); -webkit-background-clip: text; background-clip: text; color: transparent !important; }
.up-kicker { font-family: var(--wp--preset--font-family--script); color: var(--wp--preset--color--ouro); font-size: clamp(1.35rem, 2.6vw, 1.8rem); line-height: 1.35; letter-spacing: .01em; }
.up-rotulo {
	font-family: var(--wp--preset--font-family--larga); font-weight: 300;
	font-size: .75rem; letter-spacing: .28em; text-transform: uppercase;
	color: var(--wp--preset--color--ouro);
}
.up-num { font-family: var(--wp--preset--font-family--titulo); font-weight: 200; font-size: clamp(2.5rem, 5vw, 3.5rem); line-height: 1; }
.up-suave { color: var(--wp--preset--color--suave); }

/* Hero com partículas douradas (o canvas é criado por particulas.js) */
.up-hero { position: relative; overflow: hidden; isolation: isolate; }
.up-hero::before {
	content: ""; position: absolute; inset: 0; z-index: -2; pointer-events: none;
	background:
		radial-gradient(900px 520px at 78% 18%, rgba(194, 179, 138, .16), transparent 62%),
		radial-gradient(700px 480px at 8% 92%, rgba(217, 221, 224, .07), transparent 60%);
}
.up-particulas > canvas { position: absolute; inset: 0; width: 100%; height: 100%; z-index: -1; pointer-events: none; }

/* Cartões */
.up-card {
	background: linear-gradient(180deg, rgba(255, 255, 255, .035), rgba(255, 255, 255, .01));
	border: var(--up-borda); border-radius: 18px;
	transition: border-color .25s, transform .25s;
}
.up-card:hover { border-color: rgba(194, 179, 138, .55); transform: translateY(-2px); }
.up-card h3 { margin-top: .75rem; }

/* Linha dourada */
.up-linha-ouro { border: 0; height: 1px; background: var(--up-ouro); opacity: .7; max-width: 120px; }

/* Botão vazado dourado */
.wp-block-button.is-style-outline > .wp-block-button__link {
	background: transparent; color: var(--wp--preset--color--ouro);
	border: 1px solid var(--wp--preset--color--ouro);
}
.wp-block-button.is-style-outline > .wp-block-button__link:hover { background: rgba(194, 179, 138, .12); color: var(--wp--preset--color--ouro-claro); }

/* Faixa de chamada */
.up-chamada {
	border: 1px solid rgba(194, 179, 138, .35); border-radius: 24px;
	background: radial-gradient(700px 300px at 50% 0%, rgba(194, 179, 138, .14), transparent 70%), #0B0E0D;
}

/* Rodapé */
.up-rodape { border-top: var(--up-borda); }
.up-rodape a { color: var(--wp--preset--color--perola); text-decoration: none; }
.up-rodape a:hover { color: var(--wp--preset--color--ouro); }

/* WhatsApp flutuante */
.up-whats {
	position: fixed; right: 20px; bottom: 20px; z-index: 60;
	width: 56px; height: 56px; border-radius: 50%;
	display: grid; place-items: center;
	background: var(--up-ouro); color: #060807;
	box-shadow: 0 10px 30px rgba(0, 0, 0, .45);
	transition: transform .2s;
}
.up-whats:hover { transform: scale(1.06); }
.up-whats svg { width: 28px; height: 28px; }

@media (prefers-reduced-motion: reduce) {
	.up-card, .up-whats { transition: none; }
	.up-card:hover { transform: none; }
}

/* Seções de largura total encostam umas nas outras (sem o blockGap entre elas) */
.wp-site-blocks > * + *,
.wp-block-post-content > .alignfull,
.wp-block-post-content > .alignfull + * { margin-block-start: 0; }

/* Hero que ocupa a tela: conteúdo centrado na vertical */
.up-tela { display: flex; flex-direction: column; justify-content: center; }
.up-tela > * { width: 100%; }
.up-hero-texto > * { max-width: 820px; }

/* No celular o botão do topo espreme o logo; o mesmo botão aparece no hero */
@media (max-width: 600px) { .wp-block-buttons.up-cta-topo { display: none; } }
