.elementor-kit-6{--e-global-color-primary:#0F0D0C;--e-global-color-secondary:#EFEAE2;--e-global-color-text:#13110F;--e-global-color-accent:#0B0907;--e-global-typography-primary-font-family:"Cormorant Garamond";--e-global-typography-primary-font-weight:500;--e-global-typography-secondary-font-family:"Cormorant Garamond";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Karla";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Karla";--e-global-typography-accent-font-weight:600;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --vh-dourado:#b58a45; --vh-dourado-claro:#d5af71; --vh-grafite:#1c1c1c; --vh-preto:#0f0d0c; --vh-branco:#ffffff; --vh-promo:#eb0000; --vh-texto-suave:#68625e; --vh-linha:#dddad5; --vh-branco-suave:#a39d98; --vh-fonte-titulo:Cormorant Garamond; --vh-fonte-texto:Karla; --vh-creme:#efeae2; --vh-gelo:#f1eee9; --vh-nevoa:#f1eee9; --vh-cafe:#0b0907; --vh-noite:#0b0907; --vh-rodape:#0b0907; --vh-fundo:#fbfaf8; --vh-claro:#f4f1ed; }
/* Start custom CSS *//* Vheylel — padrão Lovable (clientes/vheylel/layout/lovable/). CSS personalizado do kit do Elementor (post 6): base do tema Hello,
   páginas nativas do WooCommerce (produto, coleção, categoria, carrinho, finalização), os blocos vh-p-* da descrição dos produtos e o
   que o script da loja (Custom Code 374) acrescenta: gaveta da sacola, busca, botões de cor e tamanho, selos.
   Tokens: fundo #fbfaf8 · texto #13110f · botão #0f0d0c/#faf8f5 · muted #f1eee9/#68625e · borda #dddad5 · ink #0b0907/#f4f1ed/#a39d98 · creme #efeae2.
   Fontes: Cormorant Garamond (títulos, 500) e Karla (texto). Os ícones .vh-ic-* e [id^="vhi-"] vêm no fim, gerados pelo icones.py. */

/* base */
body { font-family: 'Karla', system-ui, sans-serif; color: #13110f; background-color: #fbfaf8; line-height: 1.5; }
.site-main h1, .site-main h2, .site-main h3, .site-main h4, .woocommerce h1, .woocommerce h2, .woocommerce h3, .vh-sacola h2 {
	font-family: 'Cormorant Garamond', Georgia, serif; color: #13110f; font-weight: 500; letter-spacing: 0; }
.site-main a, .woocommerce a { color: #13110f; }
.site-main a:hover, .woocommerce a:hover { color: #13110f; opacity: 0.7; }
body:not(.elementor-page) .site-main { padding-top: 2.5rem; padding-bottom: 3.5rem; }
.page-header .entry-title { font-size: 2.25rem; line-height: 2.5rem; margin: 0 0 1.5rem; }
.page-content p, .page-content li { line-height: 1.65; }
.page-content h2, .page-content h3 { margin-top: 2rem; }
::selection { background-color: #13110f; color: #faf8f5; }
.vh-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* bloco do produto que mora no rodapé (comparativo, perguntas e WhatsApp): só na página de produto */
#vh-produto-extra { display: none !important; }
body.single-product #vh-produto-extra { display: flex !important; }
details[open] > summary [id^="vhi-mais--"] { transform: rotate(45deg); }
[id^="vhi-mais--"], [id^="vhi-seta-baixo--"] { transition: transform 0.2s; }

/* campos */
.site-main input[type=text], .site-main input[type=email], .site-main input[type=tel], .site-main input[type=number],
.site-main input[type=password], .site-main input[type=search], .site-main select, .site-main textarea {
	border: 1px solid #dddad5; border-radius: 0; background-color: #ffffff; color: #13110f; font-family: 'Karla', sans-serif; }
.site-main input:focus, .site-main select:focus, .site-main textarea:focus { border-color: #13110f; outline: none; }

/* botões (o "eyebrow" do padrão) */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit,
.woocommerce a.button.alt, .woocommerce button.button.alt, .site-main button[type=submit] {
	background-color: #0f0d0c; color: #faf8f5; border: 0; border-radius: 0; font-family: 'Karla', sans-serif;
	font-size: 0.7rem; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; padding: 1rem 1.5rem; line-height: 1rem; }
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .site-main button[type=submit]:hover {
	background-color: #0f0d0c; color: #faf8f5; opacity: 0.9; }
.woocommerce button.button.alt.disabled, .woocommerce button.button.alt.disabled:hover, .woocommerce button.button:disabled[disabled] {
	background-color: #0f0d0c; color: #faf8f5; opacity: 0.45; }

/* avisos */
.woocommerce-message, .woocommerce-info { border-top-color: #13110f; background-color: #f1eee9; color: #13110f; }
.woocommerce-message::before, .woocommerce-info::before { color: #13110f; }
.woocommerce-error { border-top-color: #b4231b; }

/* trilha, contagem e ordenação */
.woocommerce .woocommerce-breadcrumb { font-size: 0.75rem; color: #68625e; margin-bottom: 1.25rem; }
.woocommerce .woocommerce-breadcrumb a { color: #68625e; }
.woocommerce .woocommerce-result-count { font-size: 0.875rem; color: #68625e; }
.woocommerce .woocommerce-ordering select { padding: 0.55rem 2rem 0.55rem 0.8rem; font-size: 0.875rem; }
.woocommerce-products-header__title.page-title { font-size: 2.25rem; line-height: 2.5rem; margin-bottom: 0.5rem; }
.term-description { color: #68625e; font-size: 0.875rem; margin-bottom: 1rem; }

/* selo de promoção (só na vitrine) */
.woocommerce span.onsale { background-color: #0f0d0c; color: #faf8f5; border-radius: 0; min-width: 0; min-height: 0; line-height: 1;
	padding: 0.4rem 0.55rem; font-size: 0.625rem; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; top: 0.75rem; left: 0.75rem; right: auto; margin: 0; }
.single-product div.product > span.onsale, .single-product div.product .images span.onsale { display: none; }

/* vitrine (coleção, categoria, busca) */
.woocommerce ul.products { margin-top: 1rem; }
.woocommerce ul.products li.product a img { margin-bottom: 1rem; background-color: #f1eee9; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-family: 'Cormorant Garamond', serif; font-size: 1.25rem; line-height: 1.6rem;
	font-weight: 500; color: #13110f; padding: 0 0 0.25rem; }
.woocommerce ul.products li.product .price { color: #13110f; font-size: 0.875rem; font-weight: 600; margin-bottom: 0.9rem; }
.woocommerce ul.products li.product .button { display: block; width: 100%; text-align: center; margin-top: 0; }
.woocommerce .price del, .woocommerce div.product p.price del, .woocommerce div.product span.price del { color: #68625e; font-weight: 400; opacity: 1; font-size: 0.8em; }
.woocommerce .price ins, .woocommerce div.product p.price ins, .woocommerce div.product span.price ins { text-decoration: none; font-weight: 600; }

/* página do produto (produto.tsx): miniaturas 80px · foto · compra, em max-w-6xl */
.single-product .site-main { max-width: 1152px; padding-left: 1.5rem; padding-right: 1.5rem; }
.single-product .woocommerce-breadcrumb, .single-product .related.products, .single-product .upsells.products { display: none; }
.woocommerce div.product { display: grid; grid-template-columns: 80px minmax(0, 1fr) minmax(0, 1fr); column-gap: 2rem; align-items: start; }
.woocommerce div.product > * { grid-column: 1 / -1; }
.woocommerce div.product div.images.woocommerce-product-gallery { grid-column: 1 / span 2; grid-row: 1; float: none; width: auto; margin: 0;
	display: grid; grid-template-columns: 80px minmax(0, 1fr); gap: 2rem; align-items: start; }
.woocommerce div.product div.images > .woocommerce-product-gallery__wrapper, .woocommerce div.product div.images .flex-viewport { grid-column: 2; grid-row: 1; }
.woocommerce div.product div.images .woocommerce-product-gallery__image img { aspect-ratio: 4 / 5; object-fit: cover; background-color: #f1eee9; }
.woocommerce div.product div.images .flex-control-thumbs { grid-column: 1; grid-row: 1; display: flex; flex-direction: column; gap: 0.5rem; margin: 0; padding: 0; }
.woocommerce div.product div.images .flex-control-thumbs li { width: 66px; float: none; margin: 0; }
.woocommerce div.product div.images .flex-control-thumbs li.vh-oculto { display: none; }
.woocommerce div.product div.images .flex-control-thumbs li img { opacity: 1; aspect-ratio: 1 / 1; object-fit: cover; border: 1px solid transparent; }
.woocommerce div.product div.images .flex-control-thumbs li img.flex-active, .woocommerce div.product div.images .flex-control-thumbs li img:hover { border-color: #13110f; }
.woocommerce div.product div.images .woocommerce-product-gallery__trigger { top: 0.75rem; right: 0.75rem; background: #fbfaf8; }
.woocommerce div.product div.summary { grid-column: 3; grid-row: 1; float: none; width: auto; margin: 0; }
.vh-titulo-linha { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; }
.woocommerce div.product .product_title { font-size: 2.25rem; line-height: 2.5rem; font-weight: 500; margin: 0; }
.vh-subtitulo { margin: 0; font-size: 0.875rem; line-height: 1.25rem; color: #68625e; }
.vh-compartilhar { all: unset; cursor: pointer; display: inline-flex; padding: 0.25rem; color: #13110f; }
.vh-compartilhar .vh-svg { width: 16px; height: 16px; }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: #13110f; font-size: 1.5rem; line-height: 2rem; font-weight: 600; margin: 1.25rem 0 0; }
.woocommerce div.product .woocommerce-product-details__short-description { display: none; }
.woocommerce div.product form.cart { margin: 1.5rem 0 0; }
.woocommerce div.product form.cart .variations { margin: 0; border: 0; }
.woocommerce div.product form.cart .variations tr, .woocommerce div.product form.cart .variations th,
.woocommerce div.product form.cart .variations td { background: transparent; border: 0; }
.woocommerce div.product form.cart .variations th, .woocommerce div.product form.cart .variations td.label { display: block; padding: 0 0 0.5rem; text-align: left; line-height: 1.25rem; }
.woocommerce div.product form.cart .variations td.value { display: block; padding: 0 0 1.5rem; }
.woocommerce div.product form.cart .variations tr:last-child td.value { padding-bottom: 0; }
.woocommerce div.product form.cart .variations label { font-family: 'Karla', sans-serif; font-size: 0.875rem; font-weight: 400; letter-spacing: 0; text-transform: none; color: #13110f; }
.woocommerce div.product form.cart .variations select { width: 100%; min-width: 0; height: 2.75rem; padding: 0 0.8rem; font-size: 0.875rem; margin: 0; }
.woocommerce div.product form.cart .reset_variations { display: none !important; }
.woocommerce div.product form.cart .woocommerce-variation-price, .woocommerce div.product form.cart .woocommerce-variation-availability,
.woocommerce div.product form.cart .woocommerce-variation-description { display: none; }
.woocommerce div.product form.cart div.quantity { display: none !important; }
.woocommerce div.product form.cart .woocommerce-variation-add-to-cart, .woocommerce div.product form.cart:not(.variations_form) { display: block; }
.woocommerce div.product form.cart .single_add_to_cart_button { display: block; width: 100%; margin-top: 1.5rem; padding: 1rem; float: none; }
.woocommerce div.product .product_meta { display: none; }

/* botões de cor e tamanho (o select segue no formulário, escondido; o script da loja cria os botões) */
.variations_form.vh-com-opcoes .variations select { position: absolute !important; width: 1px !important; height: 1px !important; opacity: 0; pointer-events: none; }
.vh-opcoes { display: flex; flex-wrap: wrap; }
.vh-opcoes-cor { gap: 0.75rem; padding: 2px; }
.vh-opcoes-tamanho { gap: 0.5rem; }
.vh-opcoes button { all: unset; box-sizing: border-box; cursor: pointer; font-family: 'Karla', sans-serif; transition: box-shadow 0.15s, background-color 0.15s, color 0.15s; }
.vh-opcoes button:focus-visible { outline: 2px solid #13110f; outline-offset: 3px; }
.vh-opcoes .vh-opcao-cor { position: relative; width: 24px; height: 24px; border-radius: 50%; background-color: var(--cor, #cccccc); border: 1px solid #dddad5; }
.vh-opcoes .vh-opcao-cor[aria-pressed="true"] { box-shadow: 0 0 0 2px #fbfaf8, 0 0 0 4px #13110f; }
.vh-opcoes .vh-opcao-tam { width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid #dddad5;
	background-color: transparent; color: #13110f; font-size: 0.875rem; }
.vh-opcoes .vh-opcao-tam:hover { border-color: #13110f; }
.vh-opcoes .vh-opcao-tam[aria-pressed="true"] { background-color: #0f0d0c; border-color: #13110f; color: #faf8f5; }
.vh-opcoes .vh-indisponivel { opacity: 0.35; text-decoration: line-through; }
.woocommerce div.product a.vh-guia { display: inline-flex; align-items: center; gap: 0.25rem; margin-top: 0.75rem; font-size: 0.75rem; line-height: 1rem; color: #68625e; text-decoration: none; }
.vh-guia .vh-svg { width: 12px; height: 12px; }
.vh-confianca-produto { display: flex; justify-content: space-between; gap: 0.75rem 1.5rem; flex-wrap: wrap; margin-top: 1rem; }
.vh-confianca-produto span, .vh-confianca-sacola span, .vh-confianca-carrinho span { display: inline-flex; align-items: center; gap: 0.5rem; font-size: 0.75rem; line-height: 1rem; color: #68625e; }
.vh-svg { width: 16px; height: 16px; flex: 0 0 auto; }

/* descrição: sem as abas (o conteúdo vem nos blocos vh-p-*) */
.woocommerce div.product .woocommerce-tabs { margin: 0; padding: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs { display: none; }
.woocommerce div.product .woocommerce-tabs #tab-additional_information { display: none !important; }
.woocommerce div.product .woocommerce-tabs #tab-description { display: block !important; padding: 0; margin: 0; }
.woocommerce div.product .woocommerce-tabs .panel > h2:first-child { display: none; }

/* blocos da descrição do produto (gerados pelo l5_produtos.py), como em produto.tsx */
.vh-produto { margin-top: 2.5rem; color: #13110f; }
.vh-produto img { max-width: 100%; height: auto; display: block; }
.vh-produto h2, .vh-produto h3, .vh-produto p, .vh-produto figure { margin: 0; }
.vh-produto .vh-p-rotulo { font-family: 'Cormorant Garamond', serif; font-size: 0.7rem; line-height: 1rem; letter-spacing: 0.15em; text-transform: uppercase; font-weight: 600; }
.vh-produto .vh-p-titulo { font-size: 1.875rem; line-height: 2.25rem; }
.vh-p-sub { color: #68625e; font-size: 0.875rem; line-height: 1.25rem; }
.vh-p-diferenca, .vh-p-tecnicos { border-top: 1px solid #dddad5; padding: 3rem 0; }
.vh-p-beneficios { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2rem; margin-top: 2rem; text-align: center; }
.vh-p-beneficio { display: flex; flex-direction: column; align-items: center; }
.vh-p-circulo { width: 48px; height: 48px; display: flex; align-items: center; justify-content: center; border: 1px solid #dddad5; border-radius: 50%; }
.vh-p-circulo .vh-ic { width: 20px; height: 20px; }
.vh-produto .vh-p-beneficio p { margin-top: 0.25rem; max-width: 10rem; font-size: 0.75rem; line-height: 1rem; color: #68625e; }
.vh-produto .vh-p-beneficio .vh-p-forte { margin-top: 0.75rem; font-size: 0.875rem; line-height: 1.25rem; font-weight: 600; color: #13110f; max-width: none; }
.vh-p-itens { margin-top: 1rem; }
.vh-p-item { border-bottom: 1px solid #dddad5; padding: 0.75rem 0; font-size: 0.875rem; line-height: 1.25rem; }
.vh-p-item > summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.vh-p-item > summary::-webkit-details-marker { display: none; }
.vh-p-item > summary .vh-ic { width: 16px; height: 16px; transition: transform 0.2s; }
.vh-p-item[open] > summary .vh-ic { transform: rotate(180deg); }
.vh-p-resposta { padding-top: 0.5rem; color: #68625e; }
.vh-produto table.vh-p-medidas { width: 100%; border-collapse: collapse; margin: 0.25rem 0 0.75rem; font-size: 0.8125rem; }
.vh-produto table.vh-p-medidas th, .vh-produto table.vh-p-medidas td { border: 0; border-bottom: 1px solid #dddad5; padding: 0.5rem 0.25rem; text-align: center; background: transparent; line-height: 1.25rem; color: #13110f; }
.vh-produto table.vh-p-medidas thead th { background-color: #f1eee9; font-weight: 600; border-bottom: 0; }
.vh-produto table.vh-p-medidas tbody th { text-align: left; font-weight: 400; padding-left: 0; }
.vh-produto table.vh-p-medidas tbody > tr:nth-child(odd) > td, .vh-produto table.vh-p-medidas tbody > tr:nth-child(odd) > th { background: transparent; }
.vh-p-nota { font-size: 0.75rem; line-height: 1rem; color: #68625e; }
.vh-p-angulos { padding: 3rem 0; }
.vh-p-grade-angulos { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; margin-top: 1.5rem; }
.vh-p-grade-angulos img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; background-color: #f1eee9; }
.vh-p-grade-angulos figcaption { margin-top: 0.5rem; text-align: center; font-size: 0.75rem; line-height: 1rem; color: #68625e; }
.vh-p-tecido { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 2rem; margin-top: 2.5rem; background-color: #f1eee9; }
.vh-p-tecido img.vh-p-tecido-foto { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.vh-p-tecido-texto { padding: 2rem; }
.vh-produto .vh-p-tecido-texto p { margin-top: 0.75rem; color: #68625e; font-size: 0.875rem; line-height: 1.25rem; }
.vh-p-combina { padding: 3.5rem 0; text-align: center; background-color: #f1eee9; box-shadow: 0 0 0 100vmax #f1eee9; clip-path: inset(0 -100vmax); }
.vh-produto .vh-p-combina .vh-p-sub { margin-top: 0.25rem; }
.vh-p-looks { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin-top: 2rem; }
.vh-p-looks img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }

/* gaveta da sacola (script da loja), como o carrinho de produto.tsx */
.vh-sacola-fundo { position: fixed; inset: 0; z-index: 400; display: flex; justify-content: flex-end; background-color: rgba(11,9,7,0.5);
	opacity: 0; visibility: hidden; transition: opacity 0.25s, visibility 0.25s; }
.vh-sacola-fundo.aberta { opacity: 1; visibility: visible; }
.vh-sacola { display: flex; flex-direction: column; width: 100%; max-width: 24rem; height: 100%; overflow-y: auto; padding: 1.5rem; background-color: #ffffff;
	color: #13110f; font-family: 'Karla', sans-serif; transform: translateX(100%); transition: transform 0.25s ease; }
.vh-sacola-fundo.aberta .vh-sacola { transform: none; }
.vh-sacola-topo { display: flex; justify-content: space-between; align-items: center; }
.vh-sacola h2 { margin: 0; font-size: 1.5rem; line-height: 2rem; }
.vh-sacola button { all: unset; box-sizing: border-box; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; color: #13110f; }
.vh-sacola .vh-fechar .vh-svg { width: 20px; height: 20px; }
.vh-sacola-item { display: flex; gap: 1rem; margin-top: 1.5rem; padding-bottom: 1.5rem; border-bottom: 1px solid #dddad5; font-size: 0.875rem; line-height: 1.25rem; }
.vh-sacola-item img { width: 80px; height: 80px; object-fit: cover; background-color: #f1eee9; flex: 0 0 80px; }
.vh-sacola-info { flex: 1; min-width: 0; }
.vh-sacola-nome { font-weight: 600; margin: 0; }
.vh-sacola-var { color: #68625e; margin: 0; }
.vh-sacola-preco { font-weight: 600; margin: 0.25rem 0 0; }
.vh-sacola-acoes { display: flex; align-items: center; justify-content: space-between; margin-top: 0.5rem; }
.vh-qtd { display: inline-flex; align-items: center; border: 1px solid #dddad5; }
.vh-sacola .vh-qtd button { padding: 0.25rem; }
.vh-qtd .vh-svg { width: 12px; height: 12px; }
.vh-qtd span { padding: 0 0.75rem; }
.vh-sacola .vh-remover { font-size: 0.75rem; color: #68625e; text-decoration: underline; text-underline-offset: 2px; }
.vh-sacola-vazia { margin-top: 1.5rem; color: #68625e; font-size: 0.875rem; }
.vh-sacola-vazia a { color: #13110f; text-decoration: underline; }
.vh-sacola-subtotal { display: flex; justify-content: space-between; margin-top: 1.5rem; font-weight: 600; }
.vh-sacola a.vh-finalizar { display: block; margin-top: 1.5rem; padding: 1rem; text-align: center; background-color: #0f0d0c; color: #faf8f5;
	font-size: 0.7rem; line-height: 1rem; letter-spacing: 0.15em; text-transform: uppercase; font-weight: 600; text-decoration: none; }
.vh-sacola a.vh-finalizar:hover { opacity: 0.9; color: #faf8f5; }
.vh-sacola a.vh-ver-carrinho { display: block; margin-top: 0.75rem; text-align: center; font-size: 0.75rem; color: #68625e; }
.vh-confianca-sacola { display: grid; grid-template-columns: 1fr 1fr; gap: 0.75rem; margin-top: 1.5rem; }
.vh-sacola.carregando { opacity: 0.6; pointer-events: none; }

/* carrinho e finalização (blocos do WooCommerce) */
.wc-block-grid .wc-block-grid__product .wc-block-grid__product-link, .wc-block-grid__product-title,
.wc-block-cart .wc-block-components-product-name, .wc-block-checkout .wc-block-components-product-name,
.wc-block-mini-cart__drawer .wc-block-components-product-name { text-decoration: none !important; color: #13110f; }
.woocommerce-cart .site-main .alignwide, .woocommerce-checkout .site-main .alignwide { margin-left: 0; margin-right: 0; width: auto; max-width: 100%; }
.wc-block-grid__product-onsale, .wc-block-components-product-sale-badge { background-color: #0f0d0c; color: #faf8f5; border: 0; border-radius: 0; font-weight: 600; letter-spacing: 0.1em; }
.wc-block-cart .wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button, .wc-block-components-button.contained {
	background-color: #0f0d0c; color: #faf8f5; border-radius: 0; font-family: 'Karla', sans-serif; font-size: 0.7rem; font-weight: 600;
	letter-spacing: 0.15em; text-transform: uppercase; min-height: 3.25rem !important; text-decoration: none !important; } /* o bloco impõe 3em (33,6 px com a letra de 0,7rem) */
.wc-block-cart .wc-block-cart__submit-button:hover, .wc-block-components-checkout-place-order-button:hover, .wc-block-components-button.contained:hover { background-color: #0f0d0c; color: #faf8f5; opacity: 0.9; }
.wc-block-components-totals-item__label, .wc-block-components-totals-item__value { font-family: 'Karla', sans-serif; }
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value, .wc-block-components-totals-footer-item .wc-block-components-totals-item__label { font-size: 1.125rem; font-weight: 600; }
.wc-block-grid__product-add-to-cart .wp-block-button__link, .wc-block-grid__product-add-to-cart .add_to_cart_button {
	background-color: #0f0d0c !important; color: #faf8f5 !important; border-radius: 0 !important; text-decoration: none !important; font-family: 'Karla', sans-serif;
	font-size: 0.7rem !important; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; padding: 0.75rem 1.1rem !important; }
.wc-block-grid__product-title { font-family: 'Cormorant Garamond', serif; font-size: 1.125rem !important; font-weight: 500; }
.vh-confianca-carrinho { display: grid; grid-template-columns: 1fr 1fr; gap: 0.75rem; margin-top: 1.5rem; }

/* finalização clássica ([woocommerce_checkout], 22/10/2026): o plugin de CPF, número e bairro que o Bling exige não funciona na de blocos.
   Mesmo desenho da de blocos: formulário à esquerda e "Resumo do pedido" numa caixa branca à direita. */
.woocommerce-checkout form.checkout { display: grid; grid-template-columns: minmax(0, 1fr) 360px; grid-template-rows: auto auto 1fr; column-gap: 3rem; align-items: start; }
.woocommerce-checkout form.checkout .woocommerce-NoticeGroup { grid-column: 1 / -1; grid-row: 1; }
.woocommerce-checkout form.checkout #customer_details { grid-column: 1; grid-row: 2 / 4; }
.woocommerce-checkout form.checkout #order_review_heading { grid-column: 2; grid-row: 2; }
.woocommerce-checkout form.checkout #order_review { grid-column: 2; grid-row: 3; }
.woocommerce-checkout #customer_details.col2-set .col-1, .woocommerce-checkout #customer_details.col2-set .col-2 { float: none; width: 100%; max-width: none; padding: 0; }
.woocommerce-checkout #customer_details h3, .woocommerce-checkout .woocommerce-additional-fields h3 {
	margin: 2rem 0 1rem; font-family: 'Cormorant Garamond', serif; font-size: 1.375rem; font-weight: 500; color: #13110f; }
.woocommerce-checkout #customer_details .col-1 h3:first-child { margin-top: 0; }
.woocommerce-checkout #ship-to-different-address { font-family: 'Karla', sans-serif; font-size: 0.9rem; font-weight: 400; }
.woocommerce-checkout .form-row { margin: 0 0 0.9rem; padding: 0; }
/* campos em linha inteira (os do plugin vêm em meia largura, soltos); só nome e sobrenome lado a lado */
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper, .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 1rem; }
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row, .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper > .form-row { grid-column: 1 / -1; float: none; width: auto; }
.woocommerce-checkout #billing_first_name_field, .woocommerce-checkout #shipping_first_name_field { grid-column: 1; }
.woocommerce-checkout #billing_last_name_field, .woocommerce-checkout #shipping_last_name_field { grid-column: 2; }
/* pseudoelementos de "clearfix" viram itens da grade e ocupam célula */
.woocommerce-checkout form.checkout::before, .woocommerce-checkout form.checkout::after,
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper::before, .woocommerce-checkout .woocommerce-billing-fields__field-wrapper::after,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper::before, .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper::after { display: none; }
.woocommerce-checkout .form-row label { display: block; margin-bottom: 0.35rem; font-family: 'Karla', sans-serif; font-size: 0.8rem; color: #13110f; line-height: 1.3; }
.woocommerce-checkout .form-row .required { color: #13110f; text-decoration: none; }
.woocommerce-checkout .form-row input.input-text, .woocommerce-checkout .form-row select { width: 100%; height: 3rem; padding: 0 0.9rem; font-size: 0.95rem; }
.woocommerce-checkout .form-row textarea { width: 100%; min-height: 6rem; padding: 0.75rem 0.9rem; font-size: 0.95rem; }
/* listas (País, Estado, Tipo de pessoa) com a mesma borda e altura dos campos de texto */
.woocommerce-checkout .form-row .select2-container { width: 100% !important; }
.woocommerce-checkout .select2-container .select2-selection--single { height: 3rem; border: 1px solid rgba(32, 7, 7, 0.8); border-radius: 0; background-color: #ffffff; }
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered { padding: 0 2rem 0 0.9rem; line-height: calc(3rem - 2px);
	color: #13110f; font-family: 'Karla', sans-serif; font-size: 0.95rem; }
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow { height: 3rem; right: 0.5rem; }
.woocommerce-checkout .select2-container--focus .select2-selection--single, .woocommerce-checkout .select2-container--open .select2-selection--single { border-color: #13110f; }
.select2-dropdown { border-color: #dddad5; border-radius: 0; font-family: 'Karla', sans-serif; }
.select2-results__option--highlighted[aria-selected], .select2-results__option--highlighted[data-selected] { background-color: #13110f !important; color: #faf8f5 !important; }
.woocommerce-checkout .woocommerce-invalid input.input-text, .woocommerce-checkout .woocommerce-invalid .select2-selection { border-color: #b4231b; }
/* o verde de "campo válido" do WooCommerce aparecia no CPF ainda vazio */
.woocommerce-checkout form.checkout .form-row.woocommerce-validated input.input-text, .woocommerce-checkout form.checkout .form-row.woocommerce-validated select,
.woocommerce-checkout form.checkout .form-row.woocommerce-validated .select2-selection { border-color: rgba(32, 7, 7, 0.8); }
.woocommerce-checkout #order_review_heading { margin: 0; padding: 1.5rem 1.25rem 0.75rem; background: #ffffff; border: 1px solid #dddad5; border-bottom: 0;
	font-family: 'Karla', sans-serif; font-size: 1.25rem; font-weight: 500; color: #13110f; }
.woocommerce-checkout #order_review { padding: 0 1.25rem 1.25rem; background: #ffffff; border: 1px solid #dddad5; border-top: 0; }
.woocommerce-checkout table.shop_table { margin: 0 0 1.25rem; border: 0; border-collapse: collapse; border-radius: 0; font-family: 'Karla', sans-serif; font-size: 0.875rem; }
/* o tema põe borda em toda célula ("table td, table th"): fica só a linha entre as linhas, como na de blocos */
.woocommerce-checkout table.shop_table th, .woocommerce-checkout table.shop_table td { padding: 0.85rem 0; border-style: solid; border-width: 1px 0 0; border-color: #dddad5;
	background: none; color: #13110f; }
.woocommerce-checkout table.shop_table thead th { border-top: 0; font-size: 0.75rem; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: #68625e; }
.woocommerce-checkout table.shop_table td:last-child, .woocommerce-checkout table.shop_table th:last-child { text-align: right; }
.woocommerce-checkout table.shop_table .product-name .variation, .woocommerce-checkout table.shop_table .product-name .variation p { margin: 0.25rem 0 0; font-size: 0.75rem; color: #68625e; }
.woocommerce-checkout table.shop_table .product-name .variation dt, .woocommerce-checkout table.shop_table .product-name .variation dd { display: inline; margin: 0; float: none; }
.woocommerce-checkout table.shop_table .order-total th, .woocommerce-checkout table.shop_table .order-total td { font-size: 1.125rem; font-weight: 600; }
.woocommerce-checkout #payment { background: none; border-radius: 0; }
.woocommerce-checkout #payment ul.payment_methods { padding: 0 0 1rem; border-bottom: 1px solid #dddad5; }
.woocommerce-checkout #payment ul.payment_methods li { font-family: 'Karla', sans-serif; font-size: 0.9rem; }
.woocommerce-checkout #payment div.payment_box { background-color: #f1eee9; color: #13110f; border-radius: 0; font-size: 0.85rem; }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: #f1eee9; }
.woocommerce-checkout #payment div.form-row.place-order { padding: 1rem 0 0; margin: 0; }
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper, .woocommerce-checkout .woocommerce-privacy-policy-text { font-family: 'Karla', sans-serif; font-size: 0.75rem; color: #68625e; }
.woocommerce-checkout #place_order { width: 100%; min-height: 3.25rem; float: none; }
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info, .woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info { font-family: 'Karla', sans-serif; font-size: 0.85rem; }
@media (max-width: 900px) {
	.woocommerce-checkout form.checkout { grid-template-columns: minmax(0, 1fr); grid-template-rows: none; }
	.woocommerce-checkout form.checkout .woocommerce-NoticeGroup, .woocommerce-checkout form.checkout #customer_details,
	.woocommerce-checkout form.checkout #order_review_heading, .woocommerce-checkout form.checkout #order_review { grid-column: 1; grid-row: auto; }
	.woocommerce-checkout form.checkout #order_review_heading { margin-top: 2rem; }
}

/* busca (painel aberto pela lupa do cabeçalho) */
.vh-busca { position: fixed; top: 0; left: 0; right: 0; z-index: 300; display: flex; align-items: center; gap: 1rem; padding: 1.1rem 1.5rem;
	background-color: #fbfaf8; border-bottom: 1px solid #dddad5; transform: translateY(-110%); transition: transform 0.25s ease; }
.vh-busca.aberta { transform: none; }
.vh-busca form { flex: 1; display: flex; max-width: 720px; margin: 0 auto; }
.vh-busca input[type=search] { flex: 1; min-width: 0; height: 44px; padding: 0 0.9rem; border: 1px solid #dddad5; border-right: 0; border-radius: 0;
	font-family: 'Karla', sans-serif; font-size: 0.875rem; color: #13110f; background: #ffffff; outline: none; }
.vh-busca input[type=search]:focus { border-color: #13110f; }
.vh-busca form button { all: unset; box-sizing: border-box; cursor: pointer; height: 44px; padding: 0 1.25rem; background-color: #0f0d0c; color: #faf8f5;
	font-family: 'Karla', sans-serif; font-size: 0.7rem; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; }
.vh-busca .vh-busca-fechar { all: unset; cursor: pointer; display: flex; padding: 0.4rem; color: #13110f; }
.vh-busca .vh-busca-fechar .vh-svg { width: 20px; height: 20px; }

/* celular */
@media (max-width: 767px) {
	body:not(.elementor-page) .site-main { padding-top: 1.25rem; }
	.page-header .entry-title, .woocommerce-products-header__title.page-title { font-size: 1.875rem; line-height: 2.25rem; }
	.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 1.05rem; line-height: 1.35rem; }
	.woocommerce ul.products li.product .button { padding-left: 0.5rem; padding-right: 0.5rem; letter-spacing: 0.08em; }
	.single-product .site-main { padding-left: 1.25rem; padding-right: 1.25rem; }
	.woocommerce div.product { grid-template-columns: minmax(0, 1fr); }
	.woocommerce div.product div.images.woocommerce-product-gallery { grid-column: 1; grid-template-columns: minmax(0, 1fr); gap: 0.5rem; margin-bottom: 1.75rem; }
	.woocommerce div.product div.images > .woocommerce-product-gallery__wrapper, .woocommerce div.product div.images .flex-viewport { grid-column: 1; grid-row: 2; }
	.woocommerce div.product div.images .flex-control-thumbs { grid-column: 1; grid-row: 1; flex-direction: row; overflow-x: auto; scrollbar-width: none; }
	.woocommerce div.product div.images .flex-control-thumbs li { flex: 0 0 64px; width: 64px; }
	/* a lupa vai para dentro da foto grande: no celular as miniaturas ficam em cima (64px + 0,5rem de espaço) */
	.woocommerce div.product div.images .woocommerce-product-gallery__trigger { top: calc(64px + 0.5rem + 0.75rem); }
	.woocommerce div.product div.summary { grid-column: 1; grid-row: auto; }
	.woocommerce div.product .product_title { font-size: 1.875rem; line-height: 2.25rem; }
	.vh-p-beneficios { grid-template-columns: repeat(2, 1fr); gap: 2rem 1rem; }
	.vh-p-grade-angulos { grid-template-columns: repeat(2, 1fr); }
	.vh-produto .vh-p-titulo { font-size: 1.625rem; line-height: 2rem; }
	.vh-p-tecido { grid-template-columns: 1fr; gap: 0; }
	.vh-p-tecido-texto { padding: 1.5rem 1.25rem 2rem; }
	.vh-p-combina { padding: 2.5rem 0; }
	.vh-p-looks { grid-template-columns: 1fr; }
	.vh-produto table.vh-p-medidas { font-size: 0.75rem; }
	.vh-busca { padding: 0.75rem 1rem; gap: 0.5rem; }
	.vh-busca form button { padding: 0 0.9rem; }
}

/* ---------------- celular (22/10/2026): alinhamento, toque e teclado ---------------- */
/* área de toque de 44 px sem mudar o desenho: um "halo" invisível em volta do ícone */
header a[href*="post_type=product"], header a[href$="/minha-conta/"], header a[href$="/carrinho/"],
footer a.e-flexbox-base[href*="instagram.com"], footer a.e-flexbox-base[href*="facebook.com"], footer a.e-flexbox-base[href*="wa.me"],
.vh-compartilhar, .vh-sacola .vh-fechar, .vh-qtd button, .woocommerce-account .show-password-input { position: relative; }
header a[href*="post_type=product"]::after, header a[href$="/minha-conta/"]::after, header a[href$="/carrinho/"]::after,
footer a.e-flexbox-base[href*="instagram.com"]::after, footer a.e-flexbox-base[href*="facebook.com"]::after, footer a.e-flexbox-base[href*="wa.me"]::after,
.vh-compartilhar::after, .vh-sacola .vh-fechar::after, .vh-qtd button::after, .woocommerce-account .show-password-input::after {
	content: ""; position: absolute; left: 50%; top: 50%; width: 44px; height: 44px; transform: translate(-50%, -50%); }
.vh-opcoes .vh-opcao-cor::after { content: ""; position: absolute; left: 50%; top: 50%; width: 40px; height: 40px; transform: translate(-50%, -50%); border-radius: 50%; }
.vh-opcoes .vh-opcao-tam { position: relative; }
.vh-opcoes .vh-opcao-tam::after { content: ""; position: absolute; inset: -2px; }
/* perguntas do produto (Composição, Modelagem…): a linha inteira é clicável, com 44 px */
.vh-p-item { padding: 0; }
.vh-p-item > summary { padding: 0.75rem 0; }
.vh-p-item[open] { padding-bottom: 0.75rem; }
/* links de texto curtos: o preenchimento vertical aumenta a área de toque sem mexer na linha */
.woocommerce .woocommerce-breadcrumb a, .woocommerce div.product a.vh-guia { padding: 0.75rem 0; margin: -0.75rem 0; }
/* o li vira "flow-root" para as margens negativas não se juntarem com as do vizinho (o rodapé crescia 63 px) */
footer .elementor-nav-menu > li { display: flow-root; }
footer .elementor-nav-menu a.elementor-item { padding-top: 0.6rem !important; padding-bottom: 0.6rem !important; margin-top: -0.6rem !important; margin-bottom: -0.6rem !important; }
.vh-busca .vh-busca-fechar { padding: 0.75rem; margin: -0.35rem; }
header .elementor-menu-toggle { position: relative; }
header .elementor-menu-toggle::after { content: ""; position: absolute; left: 50%; top: 50%; width: 44px; height: 44px; transform: translate(-50%, -50%); }
.woocommerce-account .woocommerce-form-login__rememberme { display: inline-flex; align-items: center; gap: 0.5rem; min-height: 44px; }
.woocommerce-account .woocommerce-form-login__rememberme input { width: 18px; height: 18px; }

@media (max-width: 767px) {
	/* mesmo recuo do cabeçalho (20 px) em loja, produto, sacola, finalização, conta e políticas; o tema usava 10 px */
	body:not([class*="elementor-page-"]) .site-main { padding-inline-start: 20px; padding-inline-end: 20px; }
	body:not([class*="elementor-page-"]) .site-main .page-header .entry-title { padding-inline: 0; }
	/* o iPhone dá zoom ao tocar em campo com letra menor que 16 px */
	input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]), select, textarea,
	.select2-container .select2-selection--single .select2-selection__rendered, #vh-newsletter-email { font-size: 16px !important; }
	/* newsletter: campo e botão com 44 px */
	#vh-newsletter-email { min-height: 44px; }
	footer form[aria-label="Newsletter"] button[type=submit] { min-height: 44px; min-width: 44px; }
	/* ordenação da coleção na largura toda, alinhada com o resto */
	.woocommerce .woocommerce-ordering { float: none; width: 100%; margin: 0 0 1.25rem; }
	.woocommerce .woocommerce-ordering select { width: 100%; height: 44px; }
	.woocommerce .woocommerce-result-count { float: none; margin-bottom: 0.75rem; }
	/* sacola (página): quantidade e lixeira com 44 px; preço sem encostar na borda */
	.wc-block-components-quantity-.elementor-kit-6 { min-height: 44px; }
	.wc-block-cart-item__remove-link { position: relative; }
	.wc-block-cart-item__remove-link::after { content: ""; position: absolute; inset: -10px; }
	.wc-block-cart .wc-block-cart-items, .wc-block-cart .wc-block-cart-items td { box-sizing: border-box; }
	.wc-block-cart .wc-block-cart-items td.wc-block-cart-item__total { padding-right: 0; }
	/* "Economize R$ 29,10" não quebra linha e empurrava a coluna do preço para fora da tela; o preço riscado já mostra o desconto */
	.wc-block-cart .wc-block-cart-item__total .wc-block-components-sale-badge { display: none; }
	/* entrar na conta e "Finalizar compra" da sacola com altura de toque */
	.woocommerce form.login .input-text, .woocommerce form.register .input-text, .woocommerce-account .woocommerce-form .input-text { min-height: 44px; }
	/* busca aberta: botão com 44 px */
	.vh-busca input[type=search], .vh-busca form button { height: 44px; }
}

/* avise-me quando chegar (recurso do WooCommerce) e calculadora de frete (Virtuaria) no visual da loja (migração do site antigo, 28/10/2026) */
.woocommerce div.product .wc_bis_form { margin-top: 1.75rem; padding-top: 1.5rem; border-top: 1px solid #dddad5; }
.woocommerce div.product .wc_bis_form h3 { margin: 0 0 0.75rem; font-family: 'Karla', sans-serif; font-size: 0.875rem; line-height: 1.25rem;
	font-weight: 400; letter-spacing: 0; text-transform: none; color: #13110f; }
.wc_bis_form .wc_bis_form__form-row, #shipping-calc .cep-area { display: flex; gap: 0; margin: 0; }
.wc_bis_form .wc_bis_form__input, #shipping-calc #virt-postcode { flex: 1 1 0%; width: 0; min-width: 0; height: 44px; margin: 0; padding: 0 0.8rem;
	font-family: 'Karla', sans-serif; font-size: 0.875rem; color: #13110f; background: #ffffff; border: 1px solid #dddad5; border-right: 0; border-radius: 0; box-shadow: none; }
.wc_bis_form .wc_bis_form__input:focus, #shipping-calc #virt-postcode:focus { border-color: #13110f; outline: none; }
.woocommerce div.product .wc_bis_form .wc_bis_form__button, #shipping-calc #virt-button { flex: 0 0 auto; height: 44px; margin: 0; padding: 0 1.25rem;
	font-family: 'Karla', sans-serif; font-size: 0.7rem; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; line-height: 1rem;
	color: #faf8f5; background-color: #0f0d0c; border: 1px solid #0f0d0c; border-radius: 0; box-shadow: none; }
.woocommerce div.product .wc_bis_form .wc_bis_form__button:hover, #shipping-calc #virt-button:hover { color: #faf8f5; background-color: #0f0d0c; opacity: 0.9; }
/* o calc.css do Virtuaria põe borda verde com !important, largura de 180 px, ícone de caminhão e margem no botão */
.woocommerce div.product #shipping-calc #virt-postcode { max-width: none; padding: 0 0.8rem; letter-spacing: 0; border-color: #dddad5 !important; }
.woocommerce div.product #shipping-calc #virt-postcode:focus { border-color: #13110f !important; }
.woocommerce div.product #shipping-calc #virt-button { margin-left: 0; max-height: none; min-height: 44px; }
.woocommerce div.product #shipping-calc #virt-button:hover { filter: none; }
.woocommerce div.product #shipping-calc .cep-area { flex-wrap: nowrap; }
.woocommerce div.product #shipping-calc .cep-area::before { content: none; }
.woocommerce div.product #shipping-calc .search-cep { margin-left: 0; color: #68625e; }
#shipping-calc { margin-top: 1.5rem; }
#shipping-calc > p:first-child { margin: 0 0 0.75rem; font-family: 'Karla', sans-serif; font-size: 0.875rem; line-height: 1.25rem; font-weight: 400; color: #13110f; }
#shipping-calc .search-cep { display: inline-block; margin-top: 0.5rem; font-size: 0.75rem; line-height: 1rem; color: #68625e; text-decoration: underline; }
#shipping-calc #virt-calc-response { margin-top: 0.75rem; font-size: 0.875rem; color: #13110f; }

/* páginas do afiliado (Coupon Affiliates): botões "Entrar" e "Enviar inscrição" no "eyebrow" da loja, com 44 px; o plugin põe padding 5px 10px e borda rosa */
.site-main .woocommerce-form-login .woocommerce-form-login__submit, .site-main #wcu-register-button {
	min-height: 44px; padding: 0 1.75rem; border: 0; border-radius: 0; font-family: 'Karla', sans-serif; font-size: 0.7rem; font-weight: 600;
	letter-spacing: 0.15em; text-transform: uppercase; line-height: 1rem; color: #faf8f5; background-color: #0f0d0c; }
.site-main .woocommerce-form-login .woocommerce-form-login__submit:hover, .site-main #wcu-register-button:hover { color: #faf8f5; background-color: #0f0d0c; opacity: 0.9; }

/* finalização: o CSS dos campos do Virtuaria (cart-checkout.css / extra-fields.css) põe 15,5 px de recuo no seletor de país e estado, e o texto descia */
.woocommerce-checkout form.checkout .select2-container .select2-selection--single { padding: 0; }


/* newsletter do rodapé: as mensagens de envio sem o fundo claro padrão do Elementor (verde e rosa), que deixava o texto
   claro do rodapé ilegível; alinhadas à esquerda, como o resto da coluna, e sem o contorno do foco (30/10/2026) */
footer form[aria-label="Newsletter"] [data-element_type="e-form-success-message"],
footer form[aria-label="Newsletter"] [data-element_type="e-form-error-message"] { background-color: transparent; text-align: left; padding: 0.6rem 0 0; outline: none; }


/* ícones (icones.py) */
:root { --vh-icone-toque: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath d=%22M20.24 12.24a6 6 0 0 0-8.49-8.49L5 10.5V19h8.5z%22/%3E%3Cpath d=%22M16 8 2 22%22/%3E%3Cpath d=%22M17.5 15H9%22/%3E%3C/svg%3E"); --vh-icone-folha: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath d=%22M11 20A7 7 0 0 1 9.8 6.1C15.5 5 17 4.48 19 2c1 2 2 4.18 2 8 0 5.5-4.78 10-10 10Z%22/%3E%3Cpath d=%22M2 21c0-3 1.85-5.36 5.08-6C9.5 14.52 12 13 13 12%22/%3E%3C/svg%3E"); --vh-icone-broto: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath d=%22M7 20h10%22/%3E%3Cpath d=%22M10 20c5.5-2.5.8-6.4 3-10%22/%3E%3Cpath d=%22M9.5 9.4c1.1.8 1.8 2.2 2.3 3.7-2 .4-3.5.4-4.8-.3-1.2-.6-2.3-1.9-3-4.2 2.8-.5 4.4 0 5.5.8z%22/%3E%3Cpath d=%22M14.1 6a7 7 0 0 0-1.1 4c1.9-.1 3.3-.6 4.3-1.4 1-1 1.6-2.3 1.7-4.6-2.7.1-4 1-4.9 2z%22/%3E%3C/svg%3E"); --vh-icone-digital: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath d=%22M12 10a2 2 0 0 0-2 2c0 1.02-.1 2.51-.26 4%22/%3E%3Cpath d=%22M14 13.12c0 2.38 0 6.38-1 8.88%22/%3E%3Cpath d=%22M17.29 21.02c.12-.6.43-2.3.5-3.02%22/%3E%3Cpath d=%22M2 12a10 10 0 0 1 18-6%22/%3E%3Cpath d=%22M2 16h.01%22/%3E%3Cpath d=%22M21.8 16c.2-2 .131-5.354 0-6%22/%3E%3Cpath d=%22M5 19.5C5.5 18 6 15 6 12a6 6 0 0 1 .34-2%22/%3E%3Cpath d=%22M8.65 22c.21-.66.45-1.32.57-2%22/%3E%3Cpath d=%22M9 6.8a6 6 0 0 1 9 5.2v2%22/%3E%3C/svg%3E"); --vh-icone-caimento: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath d=%22M20.38 3.46 16 2a4 4 0 0 1-8 0L3.62 3.46a2 2 0 0 0-1.34 2.23l.58 3.47a1 1 0 0 0 .99.84H6v10c0 1.1.9 2 2 2h8a2 2 0 0 0 2-2V10h2.15a1 1 0 0 0 .99-.84l.58-3.47a2 2 0 0 0-1.34-2.23z%22/%3E%3C/svg%3E"); --vh-icone-escudo: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath d=%22M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z%22/%3E%3Cpath d=%22m9 12 2 2 4-4%22/%3E%3C/svg%3E"); --vh-icone-durabilidade: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath d=%22M6 3h12l4 6-10 13L2 9Z%22/%3E%3Cpath d=%22M11 3 8 9l4 13 4-13-3-6%22/%3E%3Cpath d=%22M2 9h20%22/%3E%3C/svg%3E"); --vh-icone-acabamento: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Ccircle cx=%2212%22 cy=%228%22 r=%226%22/%3E%3Cpath d=%22M15.477 12.89 17 22l-5-3-5 3 1.523-9.11%22/%3E%3C/svg%3E"); --vh-icone-cadeado: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Crect width=%2218%22 height=%2211%22 x=%223%22 y=%2211%22 rx=%222%22 ry=%222%22/%3E%3Cpath d=%22M7 11V7a5 5 0 0 1 10 0v4%22/%3E%3C/svg%3E"); --vh-icone-caminhao: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath d=%22M14 18V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v11a1 1 0 0 0 1 1h2%22/%3E%3Cpath d=%22M15 18H9%22/%3E%3Cpath d=%22M19 18h2a1 1 0 0 0 1-1v-3.65a1 1 0 0 0-.22-.624l-3.48-4.35A1 1 0 0 0 17.52 8H14%22/%3E%3Ccircle cx=%2217%22 cy=%2218%22 r=%222%22/%3E%3Ccircle cx=%227%22 cy=%2218%22 r=%222%22/%3E%3C/svg%3E"); --vh-icone-cartao: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Crect width=%2220%22 height=%2214%22 x=%222%22 y=%225%22 rx=%222%22/%3E%3Cpath d=%22M2 10h20%22/%3E%3C/svg%3E"); --vh-icone-troca: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath d=%22M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8%22/%3E%3Cpath d=%22M3 3v5h5%22/%3E%3C/svg%3E"); --vh-icone-regua: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath d=%22M21.3 15.3a2.4 2.4 0 0 1 0 3.4l-2.6 2.6a2.4 2.4 0 0 1-3.4 0L2.7 8.7a2.41 2.41 0 0 1 0-3.4l2.6-2.6a2.41 2.41 0 0 1 3.4 0Z%22/%3E%3Cpath d=%22m14.5 12.5 2-2%22/%3E%3Cpath d=%22m11.5 9.5 2-2%22/%3E%3Cpath d=%22m8.5 6.5 2-2%22/%3E%3Cpath d=%22m17.5 15.5 2-2%22/%3E%3C/svg%3E"); --vh-icone-seta-baixo: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath d=%22m6 9 6 6 6-6%22/%3E%3C/svg%3E"); --vh-icone-seta-direita: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath d=%22M5 12h14%22/%3E%3Cpath d=%22m12 5 7 7-7 7%22/%3E%3C/svg%3E"); --vh-icone-mais: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath d=%22M5 12h14%22/%3E%3Cpath d=%22M12 5v14%22/%3E%3C/svg%3E"); --vh-icone-menos: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath d=%22M5 12h14%22/%3E%3C/svg%3E"); --vh-icone-fechar: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath d=%22M18 6 6 18%22/%3E%3Cpath d=%22m6 6 12 12%22/%3E%3C/svg%3E"); --vh-icone-busca: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Ccircle cx=%2211%22 cy=%2211%22 r=%228%22/%3E%3Cpath d=%22m21 21-4.3-4.3%22/%3E%3C/svg%3E"); --vh-icone-usuario: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath d=%22M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2%22/%3E%3Ccircle cx=%2212%22 cy=%227%22 r=%224%22/%3E%3C/svg%3E"); --vh-icone-sacola: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath d=%22M6 2 3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4Z%22/%3E%3Cpath d=%22M3 6h18%22/%3E%3Cpath d=%22M16 10a4 4 0 0 1-8 0%22/%3E%3C/svg%3E"); --vh-icone-compartilhar: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Ccircle cx=%2218%22 cy=%225%22 r=%223%22/%3E%3Ccircle cx=%226%22 cy=%2212%22 r=%223%22/%3E%3Ccircle cx=%2218%22 cy=%2219%22 r=%223%22/%3E%3Cpath d=%22m8.59 13.51 6.83 3.98%22/%3E%3Cpath d=%22m15.41 6.51-6.82 3.98%22/%3E%3C/svg%3E"); --vh-icone-conversa: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath d=%22M7.9 20A9 9 0 1 0 4 16.1L2 22Z%22/%3E%3C/svg%3E"); --vh-icone-instagram: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Crect width=%2220%22 height=%2220%22 x=%222%22 y=%222%22 rx=%225%22 ry=%225%22/%3E%3Cpath d=%22M16 11.37A4 4 0 1 1 12.63 8 4 4 0 0 1 16 11.37z%22/%3E%3Cpath d=%22M17.5 6.5h.01%22/%3E%3C/svg%3E"); --vh-icone-facebook: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath d=%22M18 2h-3a5 5 0 0 0-5 5v3H7v4h3v8h4v-8h3l1-4h-4V7a1 1 0 0 1 1-1h3z%22/%3E%3C/svg%3E"); --vh-icone-casa: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath d=%22M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8%22/%3E%3Cpath d=%22M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z%22/%3E%3C/svg%3E"); --vh-icone-estrela: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath fill=%22currentColor%22 d=%22M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z%22/%3E%3C/svg%3E"); --vh-icone-menu: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 aria-hidden=%22true%22%3E%3Cpath d=%22M4 12h16%22/%3E%3Cpath d=%22M4 6h16%22/%3E%3Cpath d=%22M4 18h16%22/%3E%3C/svg%3E"); }
.vh-ic, [id^="vhi-"] { display: inline-block; flex: 0 0 auto; width: 22px; height: 22px; background-color: currentColor; -webkit-mask: var(--vh-icone) center / contain no-repeat; mask: var(--vh-icone) center / contain no-repeat; vertical-align: middle; }
.vh-ic-toque, [id^="vhi-toque--"] { --vh-icone: var(--vh-icone-toque); }
.vh-ic-folha, [id^="vhi-folha--"] { --vh-icone: var(--vh-icone-folha); }
.vh-ic-broto, [id^="vhi-broto--"] { --vh-icone: var(--vh-icone-broto); }
.vh-ic-digital, [id^="vhi-digital--"] { --vh-icone: var(--vh-icone-digital); }
.vh-ic-caimento, [id^="vhi-caimento--"] { --vh-icone: var(--vh-icone-caimento); }
.vh-ic-escudo, [id^="vhi-escudo--"] { --vh-icone: var(--vh-icone-escudo); }
.vh-ic-durabilidade, [id^="vhi-durabilidade--"] { --vh-icone: var(--vh-icone-durabilidade); }
.vh-ic-acabamento, [id^="vhi-acabamento--"] { --vh-icone: var(--vh-icone-acabamento); }
.vh-ic-cadeado, [id^="vhi-cadeado--"] { --vh-icone: var(--vh-icone-cadeado); }
.vh-ic-caminhao, [id^="vhi-caminhao--"] { --vh-icone: var(--vh-icone-caminhao); }
.vh-ic-cartao, [id^="vhi-cartao--"] { --vh-icone: var(--vh-icone-cartao); }
.vh-ic-troca, [id^="vhi-troca--"] { --vh-icone: var(--vh-icone-troca); }
.vh-ic-regua, [id^="vhi-regua--"] { --vh-icone: var(--vh-icone-regua); }
.vh-ic-seta-baixo, [id^="vhi-seta-baixo--"] { --vh-icone: var(--vh-icone-seta-baixo); }
.vh-ic-seta-direita, [id^="vhi-seta-direita--"] { --vh-icone: var(--vh-icone-seta-direita); }
.vh-ic-mais, [id^="vhi-mais--"] { --vh-icone: var(--vh-icone-mais); }
.vh-ic-menos, [id^="vhi-menos--"] { --vh-icone: var(--vh-icone-menos); }
.vh-ic-fechar, [id^="vhi-fechar--"] { --vh-icone: var(--vh-icone-fechar); }
.vh-ic-busca, [id^="vhi-busca--"] { --vh-icone: var(--vh-icone-busca); }
.vh-ic-usuario, [id^="vhi-usuario--"] { --vh-icone: var(--vh-icone-usuario); }
.vh-ic-sacola, [id^="vhi-sacola--"] { --vh-icone: var(--vh-icone-sacola); }
.vh-ic-compartilhar, [id^="vhi-compartilhar--"] { --vh-icone: var(--vh-icone-compartilhar); }
.vh-ic-conversa, [id^="vhi-conversa--"] { --vh-icone: var(--vh-icone-conversa); }
.vh-ic-instagram, [id^="vhi-instagram--"] { --vh-icone: var(--vh-icone-instagram); }
.vh-ic-facebook, [id^="vhi-facebook--"] { --vh-icone: var(--vh-icone-facebook); }
.vh-ic-casa, [id^="vhi-casa--"] { --vh-icone: var(--vh-icone-casa); }
.vh-ic-estrela, [id^="vhi-estrela--"] { --vh-icone: var(--vh-icone-estrela); }
.vh-ic-menu, [id^="vhi-menu--"] { --vh-icone: var(--vh-icone-menu); }/* End custom CSS */