/* Tema Nucleo (premium, 4a onda): audio premium com pagina de produto-heroi - grafite, cobre e cinza-quente, Sora nos
   titulos e Inter no texto. Topo da familia "transparente": na pagina inicial fica sobre a imagem grande (que ocupa a tela
   toda, de ponta a ponta) e ganha vidro escuro ao rolar. Faixa de numeros tecnicos, foto com produtos marcados, tabela comparativa
   aberta e rodape escuro com a frase em duas cores. Carregado depois do CSS do Vitrine e do premium.css. */

.tema-nucleo { --nc-grafite: #111317; --nc-cobre: var(--loja, #c8794a); --nc-cinza: #e9e7e3; --nc-linha: #dcd9d3; --nc-sub: #6b6f78; }
body.tema-nucleo { background: #f4f3f0; }

/* ---------- topo grafite */
.nc-topo .vt-aviso { font-size: 12px; font-weight: 600; letter-spacing: .04em; }
.nc-topo .vt-barra, .nc-topo .vt-menu { background: var(--nc-grafite); }
.nc-topo .vt-marca img { width: auto; height: var(--logo-altura, 40px); max-width: 220px; border: 0; border-radius: 0; background: none; object-fit: contain; }
body.vitrine .nc-topo .vt-busca input { height: 42px; border: 1px solid rgba(255, 255, 255, .14); border-radius: 999px; background: rgba(255, 255, 255, .06); color: #f2efea; }
body.vitrine .nc-topo .vt-busca input::placeholder { color: #8e929b; }
body.vitrine .nc-topo .vt-busca button { background: transparent !important; color: #f2efea !important; }
.nc-topo .vt-acao:hover { background: rgba(255, 255, 255, .08); }
.nc-topo .vt-sacola .counter { background: var(--nc-cobre); color: var(--nc-grafite); }
.nc-topo .vt-menu { border-top: 1px solid rgba(255, 255, 255, .08); }
.nc-topo .vt-menu .container { justify-content: center; min-height: 44px; }
.nc-topo .vt-menu a { padding: 6px 16px; border-radius: 0; color: #c9ccd2 !important; font-size: 12.5px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.nc-topo .vt-menu a:hover { background: transparent; color: var(--nc-cobre) !important; }
.nc-topo .vt-menu-dep-link { color: #f2efea !important; }

/* ---------- pagina inicial: topo transparente sobre o produto-heroi */
@media (min-width: 992px) {
	body.vitrine .nc-sobre { position: fixed; left: 0; right: 0; background: transparent; box-shadow: none; transition: background .35s, box-shadow .35s; }
	.nc-sobre .vt-barra, .nc-sobre .vt-menu { background: transparent; }
	.nc-sobre .vt-menu { border-top-color: transparent; }
	body.vitrine .nc-sobre.nc-solido { background: rgba(17, 19, 23, .82); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); box-shadow: 0 1px 0 rgba(255, 255, 255, .06); }
	body.tema-nucleo:has(.nc-sobre) .hdl-b-banner-texto:first-child .hdl-hero { min-height: clamp(560px, calc(35vw + 150px), 760px); padding-top: 150px; }
}
body.tema-nucleo:has(.nc-sobre) .hdl-b-banner-texto:first-child .container { width: 100%; max-width: none; padding: 0; }
body.vitrine.tema-nucleo:has(.nc-sobre) .hdl-b-banner-texto:first-child .hdl-hero { border-radius: 0; box-shadow: none; padding-left: max(32px, calc((100vw - 1320px) / 2 + 15px)); background-color: #050506; }
body.vitrine.tema-nucleo .hdl-hero h2 { font-size: clamp(38px, 5.4vw, 76px); font-weight: 700; line-height: 1; letter-spacing: -.035em; color: #f2efea !important; text-shadow: none; }
body.vitrine.tema-nucleo .hdl-hero p { max-width: 460px; color: #a7abb3 !important; font-size: 17px; text-shadow: none; }
body.vitrine.tema-nucleo .hdl-hero a { border-radius: 999px !important; background: var(--nc-cobre) !important; color: var(--nc-grafite) !important; font-weight: 700; padding: 15px 30px; }

/* ---------- titulos de secao: pequenos rotulos em cobre e titulo grande */
.tema-nucleo .vt-secao-cab { align-items: flex-end; margin-bottom: 28px; }
.tema-nucleo .vt-secao-cab h2 { font-size: 38px; font-weight: 700 !important; letter-spacing: -.03em; color: var(--nc-grafite); }
.tema-nucleo .vt-secao-cab a { color: var(--nc-cobre) !important; font-weight: 700; }

/* ---------- cartao tecnico: foto no cinza de estudio, sem moldura, "Ver" em pilula ao passar o mouse */
.tema-nucleo .vt-card { border: 0; border-radius: 18px; background: transparent; box-shadow: none !important; }
.tema-nucleo .vt-card-img { border-radius: 18px; background: var(--nc-cinza); }
.tema-nucleo .vt-card-info { padding: 14px 4px 0; }
.tema-nucleo .ppc-marca { display: none; }
.tema-nucleo .vt-card-nome { font-size: 15px; font-weight: 600; color: var(--nc-grafite); }
.tema-nucleo .vt-card-preco strong { font-family: var(--fonte-titulos), sans-serif; font-size: 18px; font-weight: 700; color: var(--nc-grafite); }
.tema-nucleo .ppc-parc { color: var(--nc-sub); }
.tema-nucleo .vt-card-botao { display: none; }
.tema-nucleo .ppc .ppc-ver { border-radius: 999px; background: var(--nc-grafite); color: #f2efea; }
.tema-nucleo .vt-selo { border-radius: 999px; background: var(--nc-cobre); color: var(--nc-grafite); font-weight: 800; }

/* ---------- abas como um seletor segmentado */
body.vitrine.tema-nucleo .hdl-abas-bts { display: inline-flex; gap: 2px; padding: 4px; border: 0; border-radius: 999px; background: var(--nc-cinza); }
body.vitrine.tema-nucleo .hdl-abas-bts button { padding: 9px 20px; border: 0; border-radius: 999px; background: transparent !important; color: var(--nc-sub) !important; font-weight: 600; }
body.vitrine.tema-nucleo .hdl-abas-bts button[aria-selected="true"] { background: var(--nc-grafite) !important; color: #f2efea !important; }

/* ---------- foto com produtos marcados e tabela comparativa */
@media (min-width: 992px) { .tema-nucleo .hdl-look { grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr); align-items: center; } }
.tema-nucleo .hdl-look-foto { aspect-ratio: 3 / 2; height: auto; border-radius: 22px; overflow: hidden; }
body.vitrine.tema-nucleo .hdl-look-foto img { width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover; }
.tema-nucleo .hdl-look-ponto { background: var(--nc-cobre); box-shadow: 0 0 0 6px rgba(200, 121, 74, .35); }
.tema-nucleo .hdl-med { padding: 34px; border-radius: 22px; background: #fff; }
.tema-nucleo .hdl-med-tab th { background: var(--nc-grafite); color: #f2efea; font-weight: 600; }
.tema-nucleo .hdl-med-tab tr:nth-child(2) td { background: #fbf3ed; font-weight: 600; }
.tema-nucleo .hdl-med-tab td:first-child { font-weight: 700; color: var(--nc-grafite); }

/* ---------- faixa de numeros tecnicos (bloco Destaques) */
.nc-specs-faixa { display: grid; gap: 34px; padding: 70px 0 64px; color: #f2efea; background: var(--nc-grafite); box-shadow: 0 0 0 100vmax var(--nc-grafite); clip-path: inset(0 -100vmax); }
.nc-specs-cab { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 18px; }
.nc-specs-cab small { display: block; margin-bottom: 8px; color: var(--nc-cobre); font-size: 12.5px; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; }
body.vitrine .nc-specs-cab h2 { margin: 0; font-family: var(--fonte-titulos), sans-serif; font-size: 40px; font-weight: 700; letter-spacing: -.03em; color: #f2efea; }
.nc-specs-cab a { color: #f2efea !important; font-weight: 600; text-decoration: none !important; border-bottom: 1px solid var(--nc-cobre); padding-bottom: 3px; }
.nc-numeros { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); border-top: 1px solid rgba(255, 255, 255, .12); }
.nc-numero { display: grid; gap: 6px; padding: 26px 22px 0 0; color: inherit; text-decoration: none; }
.nc-numero + .nc-numero { padding-left: 22px; border-left: 1px solid rgba(255, 255, 255, .12); }
.nc-numero b { font-family: var(--fonte-titulos), sans-serif; font-size: 64px; font-weight: 700; line-height: 1; letter-spacing: -.04em; }
.nc-numero b small { margin-left: 6px; color: var(--nc-cobre); font-size: 20px; letter-spacing: 0; }
.nc-numero span { color: #8e929b; font-size: 14.5px; }
@media (max-width: 767px) {
	.nc-numeros { grid-auto-flow: row; grid-template-columns: 1fr 1fr; }
	.nc-numero { padding: 20px 12px 0 0 !important; border-left: 0 !important; }
	.nc-numero b { font-size: 44px; }
	body.vitrine .nc-specs-cab h2 { font-size: 30px; }
}

/* ---------- carrinho: equalizador ate o frete gratis */
.nc-frete { display: flex; align-items: center; gap: 18px; padding: 16px 20px; border-radius: 18px; background: var(--nc-grafite); color: #f2efea; }
.nc-frete p { margin: 0; } .nc-frete b { color: var(--nc-cobre); }
.nc-eq { display: flex; align-items: flex-end; gap: 3px; height: 36px; }
.nc-eq i { width: 5px; height: 6px; border-radius: 3px; background: rgba(255, 255, 255, .16); transition: height .4s, background .4s; }
.nc-eq i.on { background: var(--nc-cobre); }
.nc-eq i.on:nth-child(3n+1) { height: 18px; } .nc-eq i.on:nth-child(3n+2) { height: 34px; } .nc-eq i.on:nth-child(3n) { height: 26px; }

/* ---------- rodape escuro com a frase em duas cores */
.nc-fecho { display: grid; gap: 20px; padding-top: 70px; padding-bottom: 30px; border-bottom: 1px solid rgba(255, 255, 255, .08); }
.nc-fecho-frase { max-width: 900px; margin: 0; font-family: var(--fonte-titulos), sans-serif; font-size: clamp(30px, 4.4vw, 56px); font-weight: 700; line-height: 1.05; letter-spacing: -.035em; color: #f2efea; }
.nc-fecho-frase::first-line { color: var(--nc-cobre); }
.nc-specs { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; margin: 0; color: #9a9ea8; font-size: 13px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.nc-specs i { width: 1px; height: 14px; background: rgba(255, 255, 255, .2); }
.nc-rodape .vt-rodape-grade h3 { color: #f2efea; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; }
