/*vr-theme-generic/assets/site.css*/
:root { --cor-texto: #1e2640; --cor-suave: #6a7495; --cor-fundo: #f6f8fc; --cor-linha: #e8ecf4; --raio: 16px; }
* { box-sizing: border-box; outline: none; }
body { margin: 0; min-height: 100vh; display: flex; flex-direction: column; background: var(--cor-fundo); color: var(--cor-texto); font: 16px/1.6 Inter, system-ui, -apple-system, 'Segoe UI', sans-serif; }
a { color: var(--cor-principal); }
img { max-width: 100%; }
h1, h2, h3 { line-height: 1.2; }
.div-header { position: sticky; top: 0; z-index: 40; background: #fff; border-bottom: 1px solid var(--cor-linha); }
.div-header-linha-um { display: flex; align-items: center; gap: 24px; max-width: 1200px; margin: 0 auto; padding: 14px 20px; }
.div-header-linha-um-esquerda { flex: none; }
.div-header-logo { display: flex; align-items: center; color: var(--cor-texto); text-decoration: none; }
.div-header-logo-texto { font-weight: 800; font-size: 1.25rem; }
.div-header-logo-imagem { display: block; max-height: 64px; width: auto; }
.div-header-linha-um-centro { flex: 1; display: flex; justify-content: center; gap: 6px; }
.div-header-menu-link { padding: 8px 14px; border-radius: 999px; color: var(--cor-texto); font-weight: 500; text-decoration: none; }
.div-header-menu-link:hover, .div-header-menu-link.is-ativo { background: var(--cor-fundo); color: var(--cor-principal); }
.div-header-linha-um-direita { display: flex; align-items: center; gap: 10px; flex: none; }
.div-header-botao-whatsapp { padding: 9px 18px; border-radius: 999px; background: var(--cor-principal); color: #fff; font-weight: 600; text-decoration: none; }
.div-header-botao-menu { display: none; flex-direction: column; gap: 5px; padding: 8px; border: 0; background: none; cursor: pointer; }
.div-header-botao-menu span { display: block; width: 24px; height: 2px; border-radius: 2px; background: var(--cor-texto); }
.div-conteudo { flex: 1; width: 100%; max-width: 1200px; margin: 0 auto; padding: 40px 20px 64px; }
.div-pagina-titulo { margin: 0 0 24px; font-size: clamp(1.8rem, 4vw, 2.6rem); }
.div-pagina-vazio { color: var(--cor-suave); }
.div-secao-topo { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 56px 0 20px; }
.div-secao-titulo { margin: 0; font-size: 1.6rem; }
.div-secao-link { font-weight: 600; text-decoration: none; }
.div-botao-principal, .div-botao-secundario { display: inline-flex; align-items: center; justify-content: center; padding: 12px 22px; border: 2px solid var(--cor-principal); border-radius: 999px; font: 600 1rem inherit; text-decoration: none; cursor: pointer; }
.div-botao-principal { background: var(--cor-principal); color: #fff; }
.div-botao-principal:disabled { opacity: .6; }
.div-botao-secundario { background: transparent; color: var(--cor-principal); }
.div-inicio-hero { display: flex; align-items: center; gap: 40px; padding: 56px 48px; border-radius: 28px; background: #fff; }
.div-inicio-hero-esquerda { flex: 1; }
.div-inicio-hero-titulo { margin: 0 0 12px; font-size: clamp(2.2rem, 6vw, 3.6rem); color: var(--cor-principal); }
.div-inicio-hero-texto { margin: 0 0 28px; font-size: 1.2rem; color: var(--cor-suave); }
.div-inicio-hero-botoes { display: flex; flex-wrap: wrap; gap: 12px; }
.div-inicio-hero-direita { flex: none; width: min(320px, 35%); }
.div-inicio-hero-direita img { display: block; width: 100%; height: auto; }
.div-inicio-sobre { margin-top: 56px; padding: 40px; border-radius: 24px; background: #fff; }
.div-inicio-sobre-texto { margin: 16px 0 24px; color: var(--cor-suave); }
.div-grade-servicos { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 20px; }
.div-cartao-servico { display: flex; flex-direction: column; padding: 24px; border-radius: var(--raio); background: #fff; }
.div-cartao-servico-titulo { margin: 0 0 8px; font-size: 1.15rem; }
.div-cartao-servico-texto { flex: 1; margin: 0 0 16px; color: var(--cor-suave); font-size: .95rem; }
.div-cartao-servico-rodape { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; margin-top: auto; }
.div-cartao-servico-preco { font-size: 1.15rem; color: var(--cor-principal); }
.div-cartao-servico-duracao { color: var(--cor-suave); font-size: .9rem; }
.div-cartao-servico-rodape .div-botao-principal { width: 100%; }
.div-grade-produtos { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 20px; }
.div-cartao-produto { display: flex; flex-direction: column; gap: 6px; padding: 12px 12px 18px; border-radius: var(--raio); background: #fff; color: var(--cor-texto); text-decoration: none; transition: transform .15s; }
.div-cartao-produto:hover { transform: translateY(-3px); }
.div-cartao-produto[hidden] { display: none; }
.div-cartao-produto-foto { display: block; aspect-ratio: 1; border-radius: 12px; background: var(--cor-fundo); overflow: hidden; }
.div-cartao-produto-foto img { width: 100%; height: 100%; object-fit: cover; }
.div-cartao-produto-nome { font-weight: 600; padding: 4px 4px 0; }
.div-cartao-produto-preco { padding: 0 4px; color: var(--cor-principal); }
.div-produtos-filtros { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 24px; }
.div-produtos-filtro { padding: 8px 16px; border: 1px solid var(--cor-linha); border-radius: 999px; background: #fff; font: 500 .92rem inherit; cursor: pointer; }
.div-produtos-filtro.is-ativo { border-color: var(--cor-principal); background: var(--cor-principal); color: #fff; }
.div-produto-colunas { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; margin-top: 20px; }
.div-produto-foto { display: block; width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 24px; background: #fff; }
.div-produto-categoria { color: var(--cor-suave); font-size: .9rem; text-transform: uppercase; letter-spacing: .06em; }
.div-produto-coluna-dois .div-pagina-titulo { margin: 6px 0 12px; }
.div-produto-preco { display: block; margin-bottom: 20px; font-size: 1.6rem; color: var(--cor-principal); }
.div-produto-texto { margin-bottom: 24px; color: var(--cor-suave); }
.div-sobre-colunas, .div-contato-colunas { display: grid; grid-template-columns: 2fr 1fr; gap: 40px; align-items: start; }
.div-sobre-texto { font-size: 1.05rem; }
.div-sobre-coluna-dois, .div-contato-informacoes { padding: 24px; border-radius: var(--raio); background: #fff; }
.div-sobre-subtitulo { margin: 0 0 4px; font-size: 1rem; }
.div-sobre-coluna-dois p { margin: 0 0 18px; color: var(--cor-suave); }
.div-contato-informacoes p { margin: 18px 0 0; color: var(--cor-suave); }
.div-contato-informacoes strong { color: var(--cor-texto); }
.div-contato-informacoes .div-botao-principal, .div-contato-informacoes .div-botao-secundario { width: 100%; margin-top: 18px; }
.div-contato-informacoes > :first-child { margin-top: 0; }
.div-contato-formulario { padding: 28px; border-radius: var(--raio); background: #fff; }
.div-conteudo-pagina-politica-privacidade { max-width: 780px; }
.div-conteudo-pagina-politica-privacidade h2 { margin: 32px 0 8px; font-size: 1.2rem; }
.div-politica-atualizacao { margin-top: 40px; color: var(--cor-suave); font-size: .85rem; }
.div-footer { background: var(--cor-texto); color: #c9cfe3; font-size: .93rem; }
.div-footer-linha-um { display: grid; grid-template-columns: 1.4fr 1fr 1.2fr 1fr; gap: 32px; max-width: 1200px; margin: 0 auto; padding: 48px 20px 32px; }
.div-footer-logo { display: inline-flex; color: #fff; text-decoration: none; }
.div-footer-logo-texto { font-weight: 800; font-size: 1.2rem; }
.div-footer-logo-imagem { display: block; max-height: 56px; width: auto; }
.div-footer-slogan, .div-footer-texto { margin: 10px 0 0; }
.div-footer-titulo { margin: 0 0 10px; color: #fff; font-size: .8rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.div-footer-titulo:not(:first-child) { margin-top: 20px; }
.div-footer-link { display: block; padding: 3px 0; color: #c9cfe3; text-decoration: none; }
.div-footer-link:hover { color: #fff; }
.div-footer-linha-dois { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 10px; width: calc(100% - 40px); max-width: 1160px; margin: 0 auto; padding: 18px 0; border-top: 1px solid rgba(255,255,255,.1); font-size: .85rem; }
.div-footer-linha-dois-centro { text-align: center; }
.div-footer-linha-dois-direita { text-align: right; }
.div-footer-link-politica, .div-footer-link-vrweb { color: #c9cfe3; text-decoration: none; }
.div-footer-link-politica:hover, .div-footer-link-vrweb:hover { color: #fff; }
.div-footer-coracao { color: #e0524d; }
@media (max-width: 900px) {
.div-header-linha-um-centro { position: fixed; top: 0; right: 0; bottom: 0; z-index: 60; flex-direction: column; justify-content: flex-start; width: min(300px, 82vw); padding: 80px 20px 20px; background: #fff; box-shadow: -10px 0 30px rgba(0,0,0,.15); transform: translateX(105%); transition: transform .25s; }
.menu-aberto .div-header-linha-um-centro { transform: none; }
.div-header-linha-um { justify-content: space-between; }
.div-header-menu-link { padding: 14px 16px; font-size: 1.05rem; }
.div-header-botao-menu { display: flex; position: relative; z-index: 61; }
.div-header-botao-whatsapp { display: none; }
.div-inicio-hero { flex-direction: column-reverse; align-items: flex-start; padding: 32px 24px; }
.div-inicio-hero-direita { width: 160px; }
.div-produto-colunas, .div-sobre-colunas, .div-contato-colunas { grid-template-columns: 1fr; }
.div-footer-linha-um { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
.div-conteudo { padding: 24px 16px 48px; }
.div-contato-formulario { padding: 20px; }
.div-grade-produtos { grid-template-columns: 1fr 1fr; gap: 12px; }
.div-footer-linha-um { grid-template-columns: 1fr; }
.div-footer-linha-dois { grid-template-columns: 1fr; text-align: center; }
.div-footer-linha-dois-direita { text-align: center; }
}
