/* Tema Habitat (premium): casa e design - verde-oliva, terracota e pedra, titulos em Syne, arcos como portas,
   linhas finas e fotos grandes. Carregado depois do CSS do Vitrine e do premium.css (pagina do produto premium). */

.tema-habitat { --hb-tinta: var(--titulos, #2f3a2f); --hb-pedra: #e7e0d4; --hb-linha: #d9d1c3; --hb-papel: #faf7f1; }
body.vitrine.tema-habitat h1, body.vitrine.tema-habitat h2, body.vitrine.tema-habitat h3 { font-family: var(--fonte-titulos), var(--fonte), sans-serif; font-weight: 700 !important; letter-spacing: -.02em; }

/* titulos das secoes: grandes, alinhados a esquerda, com o "ver tudo" na mesma linha e um fio */
.tema-habitat .vt-secao-cab { align-items: flex-end; padding-bottom: 14px; margin-bottom: 26px; border-bottom: 1px solid var(--hb-linha); }
.tema-habitat .vt-secao-cab h2 { font-size: 38px; line-height: 1; color: var(--hb-tinta); }
.tema-habitat .vt-secao-cab a { font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--loja) !important; }

/* cartao: foto em pedra com cantos retos, nome forte, preco e parcelas */
.tema-habitat .vt-card { border: 0; border-radius: 0; background: transparent; box-shadow: none !important; }
.tema-habitat .vt-card-img { aspect-ratio: 1; background: var(--hb-pedra); border-radius: 6px; }
.tema-habitat .vt-card-img img { object-fit: cover; }
.tema-habitat .vt-card-info { padding: 14px 0 4px; }
.tema-habitat .vt-card-nome { font-size: 15px; font-weight: 600; color: var(--hb-tinta); }
.tema-habitat .vt-card-preco strong { font-size: 17px; font-weight: 700; color: var(--hb-tinta); }
.tema-habitat .ppc-marca { display: none; }
.tema-habitat .vt-card-botao { display: none; }
.tema-habitat .ppc .ppc-ver { border-radius: 6px; background: var(--hb-tinta); color: #fff; }
.tema-habitat .vt-selo { border-radius: 4px; background: var(--loja); font-weight: 700; }

/* numeros da marca (bloco HTML hb-numeros) */
.hb-numeros { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid #d9d1c3; border-bottom: 1px solid #d9d1c3; }
.hb-numeros p { display: grid; gap: 4px; margin: 0; padding: 26px 24px; border-left: 1px solid #d9d1c3; }
.hb-numeros p:first-child { border-left: 0; }
.hb-numeros b { font-family: var(--fonte-titulos), sans-serif; font-size: 34px; line-height: 1; color: var(--loja, #c2643c); }
.hb-numeros span { font-size: 14px; color: #5d6359; }

/* mosaico de ambientes: arcos no alto das fotos */
.tema-habitat .hdl-mos a { border-radius: 999px 999px 6px 6px !important; overflow: hidden; }
.tema-habitat .hdl-mos a:first-child { border-radius: 260px 260px 6px 6px !important; }
.tema-habitat .hdl-mos-img { border-radius: 0 !important; transition: transform .8s ease; }
.tema-habitat .hdl-mos a:hover .hdl-mos-img { transform: scale(1.05); }
.tema-habitat .hdl-mos-sobre b { font-family: var(--fonte-titulos), sans-serif; font-size: 20px; font-weight: 700; }

/* banners com texto, imagem e texto, depoimentos, blog, newsletter */
.tema-habitat .hdl-hero { border-radius: 6px; overflow: hidden; }
.tema-habitat .hdl-hero h2 { font-size: 40px; color: var(--hb-tinta) !important; text-shadow: none; }
.tema-habitat .hdl-hero p { color: #4b5146 !important; text-shadow: none; }
.tema-habitat .hdl-hero .vt-botao { border-radius: 6px; background: var(--hb-tinta) !important; color: #fff !important; }
.tema-habitat .hdl-it-img img { border-radius: 300px 300px 6px 6px; }
.tema-habitat .hdl-it-txt h2 { font-size: 42px; line-height: 1.02; color: var(--hb-tinta); }
.tema-habitat .hdl-depo figure { border: 1px solid var(--hb-linha); border-radius: 6px; background: var(--hb-papel); box-shadow: none; }
.tema-habitat .vt-blog a { border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.tema-habitat .vt-blog img { border-radius: 6px; }
.tema-habitat .vt-blog strong { font-family: var(--fonte-titulos), sans-serif; font-size: 20px; color: var(--hb-tinta); }
body.vitrine.tema-habitat .vt-news { background: var(--loja); }
body.vitrine.tema-habitat .vt-news h3 { font-size: 32px; }
body.vitrine.tema-habitat .vt-news-campo button { background: var(--hb-tinta); border-radius: 6px; }
.tema-habitat .vt-vantagens > * { border: 0; border-radius: 6px; background: var(--hb-papel); }
.tema-habitat .vt-vantagens i { border-radius: 999px 999px 4px 4px; background: var(--hb-pedra); color: var(--loja); }

/* ---------- topo proprio (topo.php): menu em letras grandes e arco ao passar o mouse ---------- */
.hb-topo .vt-aviso { font-size: 12.5px; letter-spacing: .04em; }
.hb-topo .vt-marca img { width: auto; height: var(--logo-altura, 46px); max-width: 220px; border: 0; border-radius: 0; background: none; object-fit: contain; }
body.vitrine .hb-topo .vt-busca input { height: 44px; border: 1px solid var(--hb-linha); border-radius: 6px; background: var(--hb-papel); }
body.vitrine .hb-topo .vt-busca button { border-radius: 4px !important; background: var(--hb-tinta) !important; color: #fff !important; }
.hb-topo .vt-acao:hover { background: transparent; color: var(--loja) !important; }
.hb-topo .vt-sacola .counter { background: var(--loja); }
@media (min-width: 992px) {
	.hb-topo .vt-barra .container { min-height: 90px; }
	body.vitrine .hb-topo .vt-busca { max-width: 420px; margin-left: auto; margin-right: 20px; }
	body.vitrine .hb-topo .vt-menu { background: transparent; border-top: 1px solid var(--hb-linha); border-bottom: 1px solid var(--hb-linha); }
	.hb-topo .vt-menu .container { justify-content: flex-start; gap: 0; }
	body.vitrine .hb-topo .vt-menu > .container > a, body.vitrine .hb-topo .vt-menu-cat > a, body.vitrine .hb-topo .vt-menu-dep-link { position: relative; color: var(--hb-tinta) !important; font-family: var(--fonte-titulos), sans-serif; font-size: 14.5px; font-weight: 600; border-radius: 0; background: transparent !important; white-space: nowrap; }
	body.vitrine .hb-topo .vt-menu > .container > a::after, body.vitrine .hb-topo .vt-menu-cat > a::after { content: ""; position: absolute; left: 50%; bottom: 4px; width: 16px; height: 8px; margin-left: -8px; border: 2px solid var(--loja); border-bottom: 0; border-radius: 16px 16px 0 0; opacity: 0; transform: translateY(4px); transition: opacity .2s, transform .2s; }
	body.vitrine .hb-topo .vt-menu > .container > a:hover::after, body.vitrine .hb-topo .vt-menu-cat:hover > a::after { opacity: 1; transform: none; }
	body.vitrine .hb-topo .vt-menu a.vt-ofertas { color: var(--loja) !important; }
	body.vitrine .hb-topo .vt-menu-cat > a > .lni-chevron-down { display: none; }
	body.vitrine .hb-topo .vt-menu-dep-link { border: 0; }
	body.vitrine .hb-topo .vt-mega-painel, body.vitrine .hb-topo .vt-menu-cat-lista, body.vitrine .hb-topo .vt-menu-dep-lista { border-radius: 6px; border: 1px solid var(--hb-linha); background: var(--hb-papel); box-shadow: 0 30px 60px rgba(47, 58, 47, .12); }
	body.vitrine .hb-topo .vt-mega-prod img { border-radius: 60px 60px 4px 4px; }
}

/* ---------- rodape proprio (rodape.php): arco grande com a frase da marca ---------- */
.hb-rodape { padding-top: 60px; }
.hb-assinatura { display: grid; justify-items: center; padding-bottom: 46px; }
.hb-arco { display: grid; justify-items: center; align-content: center; gap: 16px; width: min(640px, 100%); min-height: 280px; padding: 70px 44px 40px; border: 1px solid rgba(201, 203, 189, .3); border-bottom: 0; border-radius: 320px 320px 0 0; text-align: center; }
.hb-arco-frase { margin: 0; font-family: var(--fonte-titulos), sans-serif; font-size: 28px; font-weight: 700; line-height: 1.15; color: var(--rodape-titulo); }
.hb-arco-avisos { margin: 0; font-size: 13px; color: var(--rodape-texto); }
.hb-arco-avisos i { display: inline-block; width: 6px; height: 6px; margin: 0 10px; border-radius: 50%; background: var(--loja); vertical-align: 2px; }
.hb-rodape-escuro .vt-marca img { filter: brightness(0) invert(1); }
.hb-rodape h3 { font-family: var(--fonte-titulos), sans-serif !important; font-size: 16px !important; color: var(--rodape-titulo) !important; }
.hb-rodape .vt-redes a { border-radius: 999px 999px 4px 4px; }

/* ---------- pagina do produto premium ---------- */
.tema-habitat .pp, .tema-habitat .ppa { --pp-titulo-tam: 38px; --pp-preco-tam: 32px; --pp-suave: var(--hb-papel); --pp-borda: var(--hb-linha); --pp-raio: 6px; --pp-card: #fff; }
.tema-habitat .pp-nome { font-weight: 700; letter-spacing: -.03em; }
.tema-habitat .pp-galeria-grade .pp-foto { background: var(--hb-pedra); }
.tema-habitat .pp-galeria-grade .pp-foto:first-child { border-radius: 300px 300px 6px 6px; }
.tema-habitat .pp-preco { background: var(--hb-papel); border: 1px solid var(--hb-linha); }
.tema-habitat .pp-preco-off { background: var(--loja); border-radius: 4px; }
.tema-habitat .pp-var-nome { font-family: var(--fonte-titulos), sans-serif; }
.tema-habitat .pp .pp-botao { background: var(--hb-tinta); }
.tema-habitat .pp .pp-botao:hover { background: var(--loja); }
.tema-habitat .pp-garantias svg { border-radius: 999px 999px 6px 6px; background: var(--hb-pedra); }
.tema-habitat .ppa-titulo, .tema-habitat .ppa-abas button { font-family: var(--fonte-titulos), sans-serif; }

/* ---------- carrinho (carrinho.php): casinha que vai sendo construida ate o frete gratis ---------- */
body.vitrine.tema-habitat .ck h1 { font-size: 40px; color: var(--hb-tinta); }
body.vitrine.tema-habitat .co-passos .atual { color: var(--loja); }
body.vitrine.tema-habitat .ck-item, body.vitrine.tema-habitat .co-bloco { border: 0; border-bottom: 1px solid var(--hb-linha); border-radius: 0; background: transparent; box-shadow: none; }
body.vitrine.tema-habitat .ck-foto img { background: var(--hb-pedra); border-radius: 60px 60px 4px 4px; }
body.vitrine.tema-habitat .co-bloco h2, body.vitrine.tema-habitat .ck-resumo h2 { color: var(--hb-tinta); }
body.vitrine.tema-habitat .co-bloco h2 span { background: var(--loja); }
body.vitrine.tema-habitat .ck-resumo { border: 1px solid var(--hb-linha); border-radius: 6px; background: var(--hb-papel); box-shadow: none; }
body.vitrine.tema-habitat .ck-finalizar { border-radius: 6px !important; background: var(--hb-tinta) !important; }
.hb-frete { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 6px 18px; padding: 18px 22px; border: 1px solid var(--hb-linha, #d9d1c3); border-radius: 6px; background: var(--hb-papel, #faf7f1); }
.hb-frete p { grid-column: 2; margin: 0; font-size: 14px; }
.hb-frete p b { color: var(--loja); }
.hb-casa { position: relative; grid-row: span 2; width: 48px; height: 46px; }
.hb-casa b { position: absolute; left: 6px; right: 6px; bottom: 0; height: 24px; border: 2px solid var(--hb-linha, #d9d1c3); border-top: 0; }
.hb-casa i { position: absolute; left: 0; right: 0; top: 2px; height: 20px; background: var(--hb-linha, #d9d1c3); clip-path: polygon(50% 0, 100% 100%, 0 100%); }
.hb-casa em { position: absolute; left: 50%; bottom: 7px; width: 10px; height: 10px; margin-left: -5px; background: var(--hb-linha, #d9d1c3); }
.hb-c1 b { border-color: var(--titulos, #2f3a2f); }
.hb-c2 i { background: var(--loja, #c2643c); }
.hb-c3 em { background: #f2c14e; box-shadow: 0 0 10px #f2c14e; }
.hb-barra { grid-column: 2; display: block; height: 6px; border-radius: 3px; background: var(--hb-pedra, #e7e0d4); overflow: hidden; }
.hb-barra i { display: block; height: 100%; background: var(--loja, #c2643c); transition: width .6s ease; }

@media (max-width: 991px) {
	.hb-numeros { grid-template-columns: 1fr 1fr; }
	.hb-numeros p:nth-child(3) { border-left: 0; }
	.hb-numeros p:nth-child(n+3) { border-top: 1px solid #d9d1c3; }
}
@media (max-width: 767px) {
	.tema-habitat .vt-secao-cab h2 { font-size: 27px; }
	.hb-numeros p { padding: 18px 14px; }
	.hb-numeros b { font-size: 26px; }
	.hb-arco { min-height: 0; padding: 50px 22px 30px; }
	.hb-arco-frase { font-size: 21px; }
	.hb-topo .vt-marca img { height: 34px; max-width: 160px; }
	.tema-habitat .pp, .tema-habitat .ppa { --pp-titulo-tam: 28px; --pp-preco-tam: 28px; }
	.tema-habitat .pp-galeria-grade .pp-foto:first-child { border-radius: 0; }
}

/* newsletter: a caixa do campo segue o formato do botao do tema (a base deixa em pilula) */
body.vitrine.tema-habitat .vt-news-campo { border-radius: 12px; }
