/* Belle — visual das paginas da loja (plugin belle-loja).
   Paleta: navy #1d1f45, azul da logo #0046ca, azul claro #2f6bff, lavanda #f2f3fa.
   Muitos !important: o Astra e o kit do Elementor geram CSS dinamico com seletores fortes. */

:root {
	--belle-navy: #1d1f45;
	--belle-azul: #0046ca;
	--belle-azul-claro: #2f6bff;
	--belle-lavanda: #f2f3fa;
	--belle-borda: #dfe4f7;
	--belle-texto: #4a4f6a;
	--belle-cinza: #7a8099;
	--belle-sombra: 0 18px 40px -30px rgba(0, 70, 202, .55);
}

/* ---------- base ---------- */
body:not(.home) { background: var(--belle-lavanda); }
body:not(.home) #content { padding-top: 8px; }
.ast-mobile-popup-drawer, .ast-mobile-header-wrap, #ast-scroll-top { display: none !important; }

.woocommerce-page .entry-title,
.woocommerce-products-header__title.page-title,
.woocommerce .product_title,
.blog .page-title,
.single-post .entry-title,
.page .entry-header .entry-title {
	font-family: "Roboto Slab", Georgia, serif !important;
	font-weight: 500 !important;
	color: var(--belle-navy) !important;
	letter-spacing: -.5px;
	line-height: 1.15 !important;
}
.woocommerce-page .entry-title,
.woocommerce-products-header__title.page-title { font-size: clamp(30px, 3.4vw, 42px) !important; margin-bottom: 18px !important; }

.woocommerce-breadcrumb { font-size: 13px !important; color: var(--belle-cinza) !important; margin-bottom: 10px !important; }
.woocommerce-breadcrumb a { color: var(--belle-texto) !important; text-decoration: none !important; }
.woocommerce-breadcrumb a:hover { color: var(--belle-azul) !important; }

/* ---------- botoes ---------- */
html .woocommerce a.button,
html .woocommerce button.button,
html .woocommerce input.button,
html .woocommerce #respond input#submit,
html .woocommerce-page a.button,
html .woocommerce-page button.button,
body.woocommerce-page .button,
body .single_add_to_cart_button,
body .checkout-button,
body #place_order,
html .woocommerce-form-login__submit,
html .woocommerce-form-register__submit,
body .wc-block-components-button:not(.is-link) {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 48px;
	padding: 0 26px !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: linear-gradient(135deg, var(--belle-azul-claro), var(--belle-azul)) !important;
	color: #fff !important;
	font-family: Roboto, system-ui, sans-serif !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	letter-spacing: .1px !important;
	text-transform: none !important;
	line-height: 1.2 !important;
	box-shadow: 0 12px 26px -14px rgba(0, 70, 202, .8) !important;
	transition: transform .2s ease, filter .2s ease, box-shadow .2s ease !important;
}
html .woocommerce a.button:hover,
html .woocommerce button.button:hover,
body .single_add_to_cart_button:hover,
body .checkout-button:hover,
body #place_order:hover { transform: translateY(-1px); filter: brightness(1.08); }
html .woocommerce button.button:disabled,
html .woocommerce button.button[disabled],
body .single_add_to_cart_button.disabled { opacity: .45 !important; transform: none !important; box-shadow: none !important; cursor: not-allowed; }

/* secundarios: aplicar cupom, atualizar carrinho, voltar */
html .woocommerce button[name="apply_coupon"],
html .woocommerce button[name="update_cart"],
html .woocommerce a.button.wc-backward,
html .woocommerce .woocommerce-Button--previous,
html .woocommerce a.button.wc-forward:not(.checkout-button) {
	background: #fff !important;
	color: var(--belle-navy) !important;
	border: 1.5px solid var(--belle-navy) !important;
	box-shadow: none !important;
}
html .woocommerce button[name="apply_coupon"]:hover,
html .woocommerce button[name="update_cart"]:not(:disabled):hover,
html .woocommerce a.button.wc-backward:hover { background: var(--belle-navy) !important; color: #fff !important; }

/* ---------- campos ---------- */
html .woocommerce form .form-row input.input-text,
html .woocommerce form .form-row textarea,
html .woocommerce form .form-row select,
html .woocommerce-page form .form-row input.input-text,
html .woocommerce #coupon_code,
html .woocommerce .quantity .qty,
body table.variations select,
html .woocommerce-ordering select,
body .select2-container--default .select2-selection--single {
	min-height: 48px;
	padding: 10px 16px !important;
	border: 1.5px solid var(--belle-borda) !important;
	border-radius: 12px !important;
	background-color: #fff !important;
	color: var(--belle-navy) !important;
	font-size: 15px !important;
	box-shadow: none !important;
	transition: border-color .2s ease, box-shadow .2s ease;
}
html .woocommerce form .form-row textarea { min-height: 110px; }
body .select2-container--default .select2-selection--single { display: flex; align-items: center; padding: 0 12px !important; }
body .select2-container--default .select2-selection--single .select2-selection__arrow { height: 46px; right: 8px; }
html .woocommerce form .form-row input.input-text:focus,
html .woocommerce form .form-row textarea:focus,
html .woocommerce form .form-row select:focus,
html .woocommerce #coupon_code:focus,
html .woocommerce .quantity .qty:focus,
body table.variations select:focus,
body .select2-container--focus .select2-selection--single {
	border-color: var(--belle-azul) !important;
	box-shadow: 0 0 0 4px rgba(0, 70, 202, .12) !important;
	outline: 0 !important;
}
html .woocommerce form .form-row label,
html .woocommerce form .form-row .woocommerce-form__label {
	color: var(--belle-navy) !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	margin-bottom: 6px !important;
	line-height: 1.4 !important;
}
html .woocommerce form .form-row .required { color: #b42318 !important; text-decoration: none; }
html .woocommerce form .form-row.woocommerce-invalid input.input-text { border-color: #d92d20 !important; }
html .woocommerce form .form-row.woocommerce-validated input.input-text { border-color: var(--belle-borda) !important; }
html .woocommerce .quantity .qty { width: 72px !important; text-align: center; }
html .woocommerce input[type="checkbox"], html .woocommerce input[type="radio"] { accent-color: var(--belle-azul); }

/* ---------- avisos ---------- */
html .woocommerce-message,
html .woocommerce-info,
html .woocommerce-error,
html .woocommerce-notices-wrapper .wc-block-components-notice-banner {
	border: 0 !important;
	border-radius: 16px !important;
	background: #fff !important;
	color: var(--belle-navy) !important;
	box-shadow: var(--belle-sombra) !important;
	padding: 16px 20px 16px 52px !important;
	font-size: 15px;
}
html .woocommerce-message::before, html .woocommerce-info::before { color: var(--belle-azul) !important; top: 17px !important; left: 20px !important; }
html .woocommerce-error { background: #fff4f3 !important; }
html .woocommerce-error::before { color: #d92d20 !important; top: 17px !important; left: 20px !important; }
html .woocommerce-message a, html .woocommerce-info a { color: var(--belle-azul) !important; font-weight: 600; }
html .woocommerce-message .button { min-height: 40px; padding: 0 18px !important; font-size: 14px !important; }

/* ---------- login / cadastro: ver 'login com painel da marca' no fim ---------- */

/* ---------- minha conta (logada) ---------- */
body.woocommerce-account.logged-in .woocommerce {
	display: grid;
	grid-template-columns: 260px minmax(0, 1fr);
	gap: 24px;
	align-items: start;
}
body.woocommerce-account.logged-in .woocommerce::before,
body.woocommerce-account.logged-in .woocommerce::after { display: none; }
html .woocommerce-MyAccount-navigation {
	float: none !important;
	width: auto !important;
	padding: 12px !important;
	border-radius: 22px;
	background: #fff;
	box-shadow: var(--belle-sombra);
}
html .woocommerce-MyAccount-navigation ul { list-style: none !important; margin: 0 !important; padding: 0 !important; border: 0 !important; }
html .woocommerce-MyAccount-navigation ul li { margin: 0 !important; padding: 0 !important; border: 0 !important; }
html .woocommerce-MyAccount-navigation ul li a {
	display: block;
	padding: 11px 16px !important;
	border-radius: 12px;
	color: var(--belle-navy) !important;
	font-weight: 500;
	font-size: 15px;
	text-decoration: none !important;
	transition: background .2s ease, color .2s ease;
}
html .woocommerce-MyAccount-navigation ul li a:hover { background: var(--belle-lavanda); color: var(--belle-azul) !important; }
html .woocommerce-MyAccount-navigation ul li.is-active a { background: linear-gradient(135deg, var(--belle-azul-claro), var(--belle-azul)); color: #fff !important; }
html .woocommerce-MyAccount-navigation-link--customer-logout a { color: #b42318 !important; }
html .woocommerce-MyAccount-content {
	float: none !important;
	width: auto !important;
	padding: 30px 32px !important;
	border-radius: 22px;
	background: #fff;
	box-shadow: var(--belle-sombra);
	color: var(--belle-texto);
}
html .woocommerce-MyAccount-content a { color: var(--belle-azul); font-weight: 600; }
html .woocommerce-MyAccount-content h2, html .woocommerce-MyAccount-content h3,
html .woocommerce-Address-title h3 { font-family: "Roboto Slab", Georgia, serif !important; font-weight: 500 !important; color: var(--belle-navy) !important; }
html .woocommerce-account .addresses .woocommerce-Address { padding: 20px; border-radius: 16px; background: var(--belle-lavanda); }

/* ---------- tabelas (carrinho, pedidos, resumo) ---------- */
html .woocommerce table.shop_table {
	border: 0 !important;
	border-collapse: separate !important;
	border-spacing: 0;
	border-radius: 22px !important;
	overflow: hidden;
	background: #fff;
	box-shadow: var(--belle-sombra);
}
html .woocommerce table.shop_table th {
	background: #f7f8ff !important;
	color: var(--belle-navy) !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	letter-spacing: .4px;
	text-transform: uppercase;
	padding: 16px 18px !important;
	border: 0 !important;
}
html .woocommerce table.shop_table td {
	padding: 18px !important;
	border: 0 !important;
	border-top: 1px solid #eef1fb !important;
	color: var(--belle-texto);
	vertical-align: middle;
}
html .woocommerce table.shop_table td.product-name a { color: var(--belle-navy) !important; font-weight: 600; text-decoration: none; }
html .woocommerce table.shop_table td.product-name a:hover { color: var(--belle-azul) !important; }
html .woocommerce table.shop_table .product-thumbnail img { width: 76px !important; height: 76px !important; object-fit: cover; border-radius: 14px; }
html .woocommerce table.shop_table .amount { color: var(--belle-navy); font-weight: 600; }
html .woocommerce table.cart td.product-remove a.remove {
	width: 32px !important; height: 32px !important; line-height: 30px !important;
	border-radius: 50% !important;
	border: 1.5px solid var(--belle-borda) !important;
	color: var(--belle-cinza) !important;
	font-size: 18px !important;
}
html .woocommerce table.cart td.product-remove a.remove:hover { background: #fff4f3 !important; border-color: #d92d20 !important; color: #d92d20 !important; }
html .woocommerce table.cart td.actions { background: #fbfcff; }
html .woocommerce table.cart td.actions .coupon { display: flex; gap: 10px; align-items: center; }
html .woocommerce table.cart td.actions .coupon .input-text { width: 200px !important; }

/* totais do carrinho e resumo do pedido */
html .woocommerce .cart-collaterals .cart_totals,
body.woocommerce-checkout #order_review,
body.woocommerce-checkout .woocommerce-checkout-review-order {
	padding: 26px !important;
	border: 0 !important;
	border-radius: 22px;
	background: #fff;
	box-shadow: var(--belle-sombra);
}
html .woocommerce .cart-collaterals .cart_totals > h2,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #customer_details h3 {
	margin: 0 0 16px !important;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	font-family: "Roboto Slab", Georgia, serif !important;
	font-weight: 500 !important;
	font-size: 24px !important;
	color: var(--belle-navy) !important;
	text-transform: none !important;
}
html .woocommerce .cart-collaterals .cart_totals table.shop_table,
body.woocommerce-checkout #order_review table.shop_table { box-shadow: none; border-radius: 0 !important; }
html .woocommerce .cart-collaterals .cart_totals table.shop_table th { background: transparent !important; text-transform: none; font-size: 15px !important; letter-spacing: 0; }
html .woocommerce .cart-collaterals .cart_totals .order-total .amount,
body.woocommerce-checkout #order_review .order-total .amount {
	font-family: "Roboto Slab", Georgia, serif;
	font-size: 22px;
	color: var(--belle-azul);
}
html .woocommerce .wc-proceed-to-checkout .checkout-button { width: 100%; min-height: 56px; font-size: 16px !important; }
html .woocommerce ul#shipping_method li label { color: var(--belle-navy); }
html .woocommerce .woocommerce-shipping-calculator .shipping-calculator-button { color: var(--belle-azul) !important; font-weight: 600; }

/* ---------- finalizacao ---------- */
body.woocommerce-checkout #customer_details {
	padding: 28px 30px !important;
	border-radius: 22px;
	background: #fff;
	box-shadow: var(--belle-sombra);
}
body.woocommerce-checkout #customer_details .col-1,
body.woocommerce-checkout #customer_details .col-2 { width: 100% !important; float: none !important; padding: 0 !important; }
body.woocommerce-checkout #customer_details .col-2 { margin-top: 18px; }
body.woocommerce-checkout #payment {
	border-radius: 18px !important;
	background: var(--belle-lavanda) !important;
	padding: 6px !important;
}
body.woocommerce-checkout #payment ul.payment_methods { border: 0 !important; padding: 10px 12px !important; }
body.woocommerce-checkout #payment ul.payment_methods li { padding: 10px 6px !important; border-bottom: 1px solid #e3e7f7; }
body.woocommerce-checkout #payment ul.payment_methods li:last-child { border-bottom: 0; }
body.woocommerce-checkout #payment ul.payment_methods li label { color: var(--belle-navy); font-weight: 600; }
body.woocommerce-checkout #payment div.payment_box { background: #fff !important; border-radius: 12px !important; color: var(--belle-texto) !important; }
body.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: #fff !important; }
body.woocommerce-checkout #payment .place-order { padding: 14px 12px !important; }
body.woocommerce-checkout #place_order { width: 100%; min-height: 58px; font-size: 16.5px !important; }
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info { padding-top: 14px !important; padding-bottom: 14px !important; }
body.woocommerce-checkout form.checkout_coupon {
	border: 0 !important;
	border-radius: 18px !important;
	background: #fff;
	box-shadow: var(--belle-sombra);
	padding: 20px !important;
}

/* blocos de confianca abaixo do carrinho e da finalizacao */
.belle-confianca > div {
	border: 0 !important;
	border-radius: 18px !important;
	box-shadow: var(--belle-sombra);
	padding: 16px 18px !important;
}

/* carrinho vazio */
html .woocommerce .cart-empty.woocommerce-info {
	text-align: center;
	padding: 34px 20px !important;
	font-family: "Roboto Slab", Georgia, serif;
	font-size: 22px;
}
html .woocommerce .cart-empty.woocommerce-info::before { display: none; }
html .woocommerce .return-to-shop { text-align: center; margin-top: 20px; }

/* ---------- vitrine: loja, categoria, busca ---------- */
html .woocommerce .woocommerce-result-count { color: var(--belle-cinza) !important; font-size: 14px; margin-top: 10px !important; }
html .woocommerce .woocommerce-ordering select { border-radius: 999px !important; min-height: 44px; padding-right: 36px !important; }

html .woocommerce ul.products,
body.woocommerce-page ul.products { gap: 22px; }
html .woocommerce ul.products li.product,
body.woocommerce-page ul.products li.product {
	position: relative;
	display: flex !important;
	flex-direction: column;
	padding: 0 0 16px !important;
	border-radius: 20px;
	overflow: hidden;
	background: #fff;
	box-shadow: 0 16px 34px -26px rgba(0, 70, 202, .55);
	transition: transform .35s cubic-bezier(.2, .7, .2, 1), box-shadow .35s ease;
}
html .woocommerce ul.products li.product:hover { transform: translateY(-6px); box-shadow: 0 24px 44px -24px rgba(0, 70, 202, .6); }
html .woocommerce ul.products li.product .astra-shop-thumbnail-wrap { position: relative; overflow: hidden; margin: 0 0 12px; background: var(--belle-lavanda); }
html .woocommerce ul.products li.product .astra-shop-thumbnail-wrap img {
	width: 100% !important;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	object-position: center 15%;
	margin: 0 !important;
	transition: transform .7s cubic-bezier(.2, .7, .2, 1);
}
html .woocommerce ul.products li.product:hover .astra-shop-thumbnail-wrap img { transform: scale(1.05); }
html .woocommerce ul.products li.product .astra-shop-summary-wrap { display: flex; flex-direction: column; flex: 1; padding: 0 16px !important; }
html .woocommerce ul.products li.product .ast-woo-product-category { font-size: 12px !important; color: var(--belle-cinza) !important; text-transform: none !important; margin-bottom: 4px; }
html .woocommerce ul.products li.product .woocommerce-loop-product__title {
	margin: 0 0 10px !important;
	font-family: Roboto, system-ui, sans-serif !important;
	font-size: 14.5px !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	color: var(--belle-navy) !important;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
html .woocommerce ul.products li.product .price {
	margin: auto 0 12px !important;
	font-family: "Roboto Slab", Georgia, serif !important;
	font-size: 18px !important;
	font-weight: 600 !important;
	color: var(--belle-azul) !important;
}
html .woocommerce ul.products li.product .price del { color: var(--belle-cinza) !important; font-size: 13px; font-weight: 400; }
html .woocommerce ul.products li.product .price ins { text-decoration: none; }
html .woocommerce ul.products li.product .button {
	width: 100%;
	min-height: 42px !important;
	margin: 0 !important;
	padding: 0 16px !important;
	font-size: 14px !important;
	background: #fff !important;
	color: var(--belle-azul) !important;
	border: 1.5px solid var(--belle-borda) !important;
	box-shadow: none !important;
}
html .woocommerce ul.products li.product:hover .button { background: var(--belle-azul) !important; border-color: var(--belle-azul) !important; color: #fff !important; }
html .woocommerce ul.products li.product .ast-shop-product-out-of-stock,
html .woocommerce ul.products li.product .ast-onsale-card,
html .woocommerce ul.products li.product .onsale {
	position: absolute;
	top: 12px; left: 12px; right: auto; bottom: auto;
	margin: 0 !important;
	padding: 6px 12px !important;
	border-radius: 999px !important;
	background: var(--belle-navy) !important;
	color: #fff !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	line-height: 1 !important;
	min-height: 0 !important;
	min-width: 0 !important;
	width: auto !important;
	height: auto !important;
}
html .woocommerce ul.products li.product.outofstock .astra-shop-thumbnail-wrap img { opacity: .55; filter: grayscale(.3); }

/* paginacao */
html .woocommerce nav.woocommerce-pagination ul { border: 0 !important; display: inline-flex; gap: 8px; }
html .woocommerce nav.woocommerce-pagination ul li { border: 0 !important; }
html .woocommerce nav.woocommerce-pagination ul li a,
html .woocommerce nav.woocommerce-pagination ul li span {
	min-width: 44px; height: 44px; line-height: 44px !important; padding: 0 10px !important;
	border-radius: 999px !important;
	background: #fff !important;
	color: var(--belle-navy) !important;
	font-weight: 600;
	box-shadow: 0 8px 18px -14px rgba(0, 70, 202, .6);
}
html .woocommerce nav.woocommerce-pagination ul li span.current,
html .woocommerce nav.woocommerce-pagination ul li a:hover { background: var(--belle-azul) !important; color: #fff !important; }

/* texto da categoria, agora depois dos produtos */
.belle-sobre-cat {
	clear: both;
	margin: 48px 0 8px;
	padding: 36px 40px;
	border-radius: 24px;
	background: #fff;
	box-shadow: var(--belle-sombra);
}
.belle-sobre-cat__selo { font-size: 13px; font-weight: 600; letter-spacing: 3px; text-transform: uppercase; color: var(--belle-azul); }
.belle-sobre-cat h2 { margin: 8px 0 18px !important; font-family: "Roboto Slab", Georgia, serif !important; font-weight: 500 !important; font-size: 30px !important; color: var(--belle-navy) !important; }
.belle-sobre-cat__texto { max-width: 860px; color: var(--belle-texto); font-size: 16px; line-height: 1.75; }
.belle-sobre-cat__texto br { display: none; }
.belle-sobre-cat__texto strong { color: var(--belle-navy); }
.belle-sobre-cat__texto a { color: var(--belle-azul); font-weight: 600; }

/* ---------- pagina de produto (template Elementor 9334) ---------- */
body.single-product .elementor-widget-theme-post-title .elementor-heading-title,
body.single-product .product_title {
	font-family: "Roboto Slab", Georgia, serif !important;
	font-weight: 500 !important;
	font-size: clamp(28px, 3vw, 40px) !important;
	line-height: 1.15 !important;
	color: var(--belle-navy) !important;
	letter-spacing: -.5px;
}
html body.single-product .elementor-widget-woocommerce-product-price .price,
html body.single-product div.product .summary p.price,
html body.single-product div.product .summary span.price {
	font-family: "Roboto Slab", Georgia, serif !important;
	font-weight: 600 !important;
	font-size: 30px !important;
	color: var(--belle-azul) !important;
}
body.single-product .elementor-widget-woocommerce-product-short-description,
body.single-product .woocommerce-product-details__short-description { color: var(--belle-texto) !important; font-size: 16px; line-height: 1.65; }
body.single-product table.variations { border: 0 !important; margin-bottom: 8px !important; }
body.single-product table.variations th,
body.single-product table.variations td { display: block; padding: 0 !important; border: 0 !important; background: none !important; text-align: left; }
body.single-product table.variations th.label label { color: var(--belle-navy) !important; font-weight: 700 !important; font-size: 14px; }
body.single-product table.variations td.value { padding-bottom: 14px !important; }
body.single-product table.variations select { width: 100% !important; max-width: 420px; }
body.single-product .reset_variations { color: var(--belle-azul) !important; font-size: 13px; }
html body.single-product div.product .woocommerce-variation-price .price { font-size: 22px !important; color: var(--belle-azul) !important; font-family: "Roboto Slab", Georgia, serif !important; }
html body.single-product .single-product-category a { color: var(--belle-azul) !important; font-size: 13px; font-weight: 600; letter-spacing: 1.5px; text-transform: uppercase; text-decoration: none; }
body.single-product form.cart { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
body.single-product form.cart .variations { flex-basis: 100%; }
body.single-product .woocommerce-variation-add-to-cart { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
body.single-product .single_add_to_cart_button { min-height: 54px; padding: 0 34px !important; font-size: 16px !important; }
body.single-product .product_meta { color: var(--belle-cinza); font-size: 13.5px; }
body.single-product .product_meta a { color: var(--belle-azul); }
body.single-product .woocommerce-tabs ul.tabs li a,
body.single-product .elementor-widget-woocommerce-product-content h2 { font-family: "Roboto Slab", Georgia, serif; color: var(--belle-navy); }

/* ---------- blog e paginas comuns ---------- */
body.blog .entry-title, body.blog .entry-title a,
body.archive.category .entry-title, body.archive.category .entry-title a,
body.single-post .entry-title {
	font-family: "Roboto Slab", Georgia, serif !important;
	font-weight: 500 !important;
	color: var(--belle-navy) !important;
	line-height: 1.2 !important;
}
body.blog .entry-title a:hover { color: var(--belle-azul) !important; }
body.blog .read-more a, body.blog .ast-read-more-container a { color: var(--belle-azul) !important; font-weight: 700; }
body.blog .post-thumb img, body.blog .ast-blog-featured-section img { border-radius: 18px; }
body.blog .ast-article-post,
body.archive.category .ast-article-post { border-radius: 22px; overflow: hidden; }
body.single-post .entry-content a,
body.page:not(.woocommerce-page) .entry-content a { color: var(--belle-azul); }

/* ---------- celular ---------- */
@media (max-width: 921px) {
	html .woocommerce .u-columns.col2-set { grid-template-columns: minmax(0, 1fr); gap: 16px; }
	html .woocommerce .u-columns.col2-set .u-column1,
	html .woocommerce .u-columns.col2-set .u-column2 { padding: 24px 20px 22px !important; border-radius: 20px; }
	body.woocommerce-account.logged-in .woocommerce { grid-template-columns: minmax(0, 1fr); }
	html .woocommerce-MyAccount-navigation ul { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; }
	html .woocommerce-MyAccount-navigation ul li a { white-space: nowrap; }
	html .woocommerce-MyAccount-content { padding: 22px 18px !important; }
	html .woocommerce table.shop_table_responsive tr { display: block; padding: 8px 0; border-top: 1px solid #eef1fb; }
	html .woocommerce table.shop_table_responsive tr td { border-top: 0 !important; padding: 8px 18px !important; }
	html .woocommerce table.cart td.actions .coupon { flex-direction: column; align-items: stretch; }
	html .woocommerce table.cart td.actions .coupon .input-text { width: 100% !important; }
	html .woocommerce table.cart td.actions button { width: 100%; margin-top: 10px !important; }
	body.woocommerce-checkout #customer_details { padding: 22px 18px !important; }
	html .woocommerce ul.products, body.woocommerce-page ul.products { gap: 12px; }
	html .woocommerce ul.products li.product .astra-shop-summary-wrap { padding: 0 12px !important; }
	html .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 13.5px !important; }
	html .woocommerce ul.products li.product .price { font-size: 16px !important; }
	.belle-sobre-cat { padding: 26px 20px; margin-top: 32px; }
	.belle-sobre-cat h2 { font-size: 24px !important; }
	.belle-sobre-cat__texto { font-size: 15px; }
}

@media (prefers-reduced-motion: reduce) {
	html .woocommerce ul.products li.product,
	html .woocommerce ul.products li.product .astra-shop-thumbnail-wrap img { transition: none; }
}

/* ajustes de especificidade (precisam vir por ultimo) */
html body.single-product div.product .summary p.price .woocommerce-Price-amount,
html body.single-product div.product .summary p.price bdi,
html body.single-product div.product .woocommerce-variation-price .woocommerce-Price-amount { font-size: inherit !important; color: inherit !important; font-family: inherit !important; }
html body.woocommerce-checkout #customer_details h3#ship-to-different-address,
html body.woocommerce-checkout #customer_details h3#ship-to-different-address label,
html body.woocommerce-checkout #customer_details h3#ship-to-different-address span {
	font-family: Roboto, system-ui, sans-serif !important;
	font-size: 15.5px !important;
	font-weight: 600 !important;
	color: var(--belle-navy) !important;
}
html .woocommerce ul.products li.product .button { align-self: stretch; }
/* o WooCommerce foca o aviso para leitores de tela; o contorno preto do foco fica feio no mouse */
html .woocommerce-message:focus, html .woocommerce-info:focus, html .woocommerce-error:focus,
html .woocommerce-notices-wrapper:focus, html .woocommerce-notices-wrapper *:focus:not(a):not(button) { outline: 0 !important; }

/* =====================================================================
   v2 — paginas no formato da home
   ===================================================================== */

/* ---------- login com painel da marca ---------- */
body.woocommerce-account:not(.logged-in) .entry-header,
body.woocommerce-account:not(.logged-in) .woocommerce-breadcrumb { display: none; }
body.woocommerce-account:not(.logged-in) .site-content > .ast-container { max-width: 1280px; }
.belle-login {
	display: grid;
	grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
	gap: 0;
	margin: 24px auto 48px;
	border-radius: 28px;
	overflow: hidden;
	background: #fff;
	box-shadow: 0 30px 70px -40px rgba(0, 70, 202, .55);
	border: 1px solid #e6eafa;
}
.belle-login__marca {
	position: relative;
	overflow: hidden;
	isolation: isolate;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 16px;
	min-height: 620px;
	padding: 52px 48px;
	background: linear-gradient(150deg, #1d1f45 0%, #13256e 55%, #0046ca 100%);
	color: #fff;
}
.belle-login__selo { font-size: 13px; font-weight: 600; letter-spacing: 3px; text-transform: uppercase; color: #8fb0ff; }
.belle-login__titulo { margin: 0 !important; max-width: 380px; font-family: "Roboto Slab", Georgia, serif; font-weight: 500; font-size: clamp(30px, 3vw, 40px); line-height: 1.1; color: #fff; }
.belle-login__titulo span { color: #8fb0ff; }
.belle-login__lista { list-style: none; margin: 8px 0 0 !important; padding: 0 !important; display: flex; flex-direction: column; gap: 12px; position: relative; z-index: 2; }
.belle-login__lista li { display: flex; align-items: center; gap: 12px; margin: 0; font-size: 15px; color: rgba(255, 255, 255, .9); }
.belle-login__lista svg { flex: 0 0 36px; width: 36px; height: 36px; padding: 8px; border-radius: 50%; background: rgba(255, 255, 255, .12); color: #fff; box-sizing: border-box; }
.belle-login__nota { margin: 4px 0 0 !important; max-width: 300px; font-size: 13.5px; line-height: 1.5; color: rgba(255, 255, 255, .7); position: relative; z-index: 2; }
.belle-login__circulo { position: absolute; z-index: -1; right: -90px; bottom: -120px; width: 420px; height: 420px; border-radius: 50%; background: radial-gradient(circle, rgba(47, 107, 255, .7) 0%, rgba(47, 107, 255, 0) 70%); }
.belle-login__foto { position: absolute !important; z-index: 1; right: 0; bottom: 0; height: 64% !important; width: auto !important; max-width: none !important; pointer-events: none; }
.belle-login__forms { padding: 44px 48px; display: flex; flex-direction: column; }
.belle-login__abas { display: flex; gap: 4px; padding: 5px; margin-bottom: 26px; border-radius: 999px; background: var(--belle-lavanda); }
.belle-login__abas button {
	flex: 1;
	height: 46px;
	border: 0 !important;
	border-radius: 999px !important;
	background: transparent !important;
	color: var(--belle-texto) !important;
	font-family: Roboto, system-ui, sans-serif !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	cursor: pointer;
	box-shadow: none !important;
	transition: background .2s ease, color .2s ease;
}
.belle-login__abas button[aria-selected="true"] { background: #fff !important; color: var(--belle-azul) !important; box-shadow: 0 6px 16px -10px rgba(0, 70, 202, .6) !important; }
html .woocommerce .belle-login .u-columns.col2-set { display: block !important; max-width: none; margin: 0; }
html .woocommerce .belle-login .u-columns.col2-set::before,
html .woocommerce .belle-login .u-columns.col2-set::after { display: none !important; }
html .woocommerce .belle-login .u-columns .u-column1,
html .woocommerce .belle-login .u-columns .u-column2 { float: none !important; width: auto !important; margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; box-shadow: none !important; }
html .woocommerce .belle-login .u-columns .u-column2 { margin-top: 36px !important; padding-top: 30px !important; border-top: 1px solid #eef1fb !important; }
.belle-login.is-js .u-columns .u-column1,
.belle-login.is-js .u-columns .u-column2 { animation: belleAba .35s ease both; }
.belle-login.is-js .u-columns .u-column2 { display: none; margin-top: 0 !important; padding-top: 0 !important; border-top: 0 !important; }
.belle-login.is-js.is-criar .u-columns .u-column1 { display: none; }
.belle-login.is-js.is-criar .u-columns .u-column2 { display: block; }
.belle-login:not(.is-js) .belle-login__abas { display: none; }
@keyframes belleAba { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
html .woocommerce .belle-login h2 { margin: 0 0 18px !important; font-family: "Roboto Slab", Georgia, serif !important; font-weight: 500 !important; font-size: 28px !important; color: var(--belle-navy) !important; }
html .woocommerce .belle-login form.login,
html .woocommerce .belle-login form.register { margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; }
html .woocommerce .belle-login form .form-row { padding: 0 !important; margin: 0 0 16px !important; }
html .woocommerce .belle-login .woocommerce-form-login__rememberme { display: inline-flex !important; align-items: center; gap: 8px; margin: 2px 0 18px !important; font-weight: 500 !important; }
html .woocommerce .belle-login .woocommerce-form-login__submit,
html .woocommerce .belle-login .woocommerce-form-register__submit { width: 100%; min-height: 54px; margin: 0 !important; float: none !important; font-size: 16px !important; }
html .woocommerce .belle-login .lost_password { margin: 16px 0 0 !important; text-align: center; }
html .woocommerce .belle-login .lost_password a,
html .woocommerce .belle-login .woocommerce-privacy-policy-text a { color: var(--belle-azul) !important; font-weight: 600; text-decoration: none; }
html .woocommerce .belle-login form.register > p:not(.form-row),
html .woocommerce .belle-login .woocommerce-privacy-policy-text p { color: var(--belle-texto) !important; font-size: 14px !important; line-height: 1.6 !important; margin: 0 0 16px !important; }
html .woocommerce .belle-login .show-password-input { top: 50% !important; transform: translateY(-50%); right: 14px !important; }

/* ---------- banner das vitrines ---------- */
body.woocommerce.archive .woocommerce-products-header,
body.search .woocommerce-products-header { margin: 0 !important; padding: 0 !important; }
.belle-vbanner {
	position: relative;
	overflow: hidden;
	isolation: isolate;
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
	align-items: center;
	gap: 32px;
	min-height: 300px;
	margin: 6px 0 18px;
	padding: 40px 48px;
	border-radius: 28px;
	background: linear-gradient(140deg, #1d1f45 0%, #141a52 50%, #0b2a8a 100%);
	color: #fff;
	box-shadow: 0 30px 60px -40px rgba(0, 70, 202, .8);
}
.belle-vbanner::before { content: ""; position: absolute; z-index: -1; width: 520px; height: 520px; right: -140px; top: -260px; border-radius: 50%; background: radial-gradient(circle, rgba(47, 107, 255, .5) 0%, rgba(47, 107, 255, 0) 70%); }
.belle-vbanner.is-sem-foto { grid-template-columns: 1fr; }
.belle-vbanner__texto { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.belle-vbanner__selo { font-size: 13px; font-weight: 600; letter-spacing: 3px; text-transform: uppercase; color: #8fb0ff; }
html body .belle-vbanner__titulo { margin: 0 !important; font-family: "Roboto Slab", Georgia, serif !important; font-weight: 500 !important; font-size: clamp(32px, 4vw, 54px) !important; line-height: 1.05 !important; letter-spacing: -1px; color: #fff !important; }
.belle-vbanner__intro { margin: 0 !important; max-width: 520px; font-size: 17px; line-height: 1.6; color: rgba(255, 255, 255, .8); }
.belle-vbanner__info { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 6px; }
.belle-vbanner__qtd, .belle-vbanner__frete {
	display: inline-flex; align-items: center; gap: 8px;
	padding: 8px 14px; border-radius: 999px;
	background: rgba(255, 255, 255, .12); border: 1px solid rgba(255, 255, 255, .22);
	font-size: 14px; color: #fff;
}
.belle-vbanner__qtd strong { font-size: 15px; }
.belle-vbanner__mosaico { position: relative; height: 240px; }
.belle-vbanner__foto {
	position: absolute !important;
	width: 37% !important; height: auto !important; max-width: none !important;
	aspect-ratio: 4 / 5; object-fit: cover; object-position: center 15%;
	border-radius: 20px; border: 4px solid rgba(255, 255, 255, .9);
	box-shadow: 0 20px 40px -20px rgba(0, 0, 0, .55);
}
.belle-vbanner__foto.is-0 { left: 31%; top: -6%; z-index: 3; width: 40% !important; }
.belle-vbanner__foto.is-1 { left: 2%; top: 12%; z-index: 2; transform: rotate(-6deg); }
.belle-vbanner__foto.is-2 { right: 2%; top: 12%; z-index: 1; transform: rotate(6deg); }

/* atalhos de categoria */
.belle-atalhos-cat { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; padding: 4px 2px 10px; margin: 0 0 10px; }
.belle-atalhos-cat::-webkit-scrollbar { display: none; }
.belle-atalhos-cat a {
	flex: 0 0 auto;
	padding: 9px 16px;
	border-radius: 999px;
	background: #fff;
	border: 1px solid var(--belle-borda);
	color: var(--belle-navy) !important;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none !important;
	transition: background .2s ease, color .2s ease, border-color .2s ease;
}
.belle-atalhos-cat a:hover { border-color: var(--belle-azul); color: var(--belle-azul) !important; }
.belle-atalhos-cat a[aria-current="page"] { background: var(--belle-azul); border-color: var(--belle-azul); color: #fff !important; }

/* barra: contagem + ordenacao */
.belle-ferramentas {
	display: flex; align-items: center; justify-content: space-between; gap: 12px;
	margin: 0 0 22px; padding: 10px 10px 10px 20px;
	border-radius: 999px; background: #fff; box-shadow: 0 10px 26px -20px rgba(0, 70, 202, .6);
}
html .woocommerce .belle-ferramentas .woocommerce-result-count,
html .woocommerce .belle-ferramentas .woocommerce-ordering { float: none !important; margin: 0 !important; }
html .woocommerce .belle-ferramentas .woocommerce-ordering select { min-height: 42px; border-color: transparent !important; background-color: var(--belle-lavanda) !important; }

/* cards da vitrine no formato da home */
html .woocommerce ul.products li.product .astra-shop-thumbnail-wrap { margin: 0 0 12px !important; }
html .woocommerce ul.products li.product .astra-shop-thumbnail-wrap > a { position: relative; display: block; overflow: hidden; }
html .woocommerce ul.products li.product .belle-card-foto2 {
	position: absolute !important; inset: 0; width: 100% !important; height: 100% !important; max-width: none !important;
	object-fit: cover; object-position: center 15%; opacity: 0; transition: opacity .45s ease;
}
html .woocommerce ul.products li.product:hover .belle-card-foto2 { opacity: 1; }
.belle-card-cores { position: absolute; left: 10px; bottom: 10px; z-index: 2; padding: 5px 10px; border-radius: 999px; background: rgba(255, 255, 255, .92); color: var(--belle-navy); font-size: 12px; font-weight: 600; }
.belle-card-ir { position: absolute; right: 10px; bottom: 10px; z-index: 2; width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center; background: rgba(255, 255, 255, .95); color: var(--belle-azul); box-shadow: 0 6px 16px -6px rgba(0, 0, 0, .3); transition: background .25s ease, color .25s ease, transform .25s ease; }
html .woocommerce ul.products li.product:hover .belle-card-ir { background: var(--belle-azul); color: #fff; transform: translateX(3px); }
/* o card inteiro e clicavel: o link do titulo cobre o card */
html .woocommerce ul.products li.product .ast-loop-product__link::after { content: ""; position: absolute; inset: 0; z-index: 1; }
html .woocommerce ul.products li.product .ast-woo-product-category { position: relative; z-index: 0; }
html .woocommerce ul.products li.product .button,
html .woocommerce ul.products li.product .added_to_cart { display: none !important; }
html .woocommerce ul.products li.product .price { margin: auto 0 0 !important; }
html .woocommerce ul.products li.product { padding-bottom: 18px !important; }
html .woocommerce ul.products li.product .ast-shop-product-out-of-stock { z-index: 3; }

/* ---------- pagina de produto ---------- */
html body.single-product .site-content > .ast-container { max-width: 1320px; }
html body.single-product div.product {
	display: grid;
	grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr);
	gap: 32px 44px;
	align-items: start;
}
html body.single-product div.product::before, html body.single-product div.product::after { display: none; }
html body.single-product div.product > * { grid-column: 1 / -1; }
html body.single-product div.product > .wcgs-woocommerce-product-gallery,
html body.single-product div.product > .woocommerce-product-gallery { grid-column: 1; width: 100% !important; float: none !important; margin: 0 !important; position: sticky; top: 96px; border-radius: 24px; overflow: hidden; background: #fff; box-shadow: var(--belle-sombra); }
html body.single-product div.product > .summary {
	grid-column: 2;
	width: 100% !important; float: none !important; margin: 0 !important;
	padding: 34px 36px 30px !important;
	border-radius: 24px;
	background: #fff;
	box-shadow: var(--belle-sombra);
}
html body.single-product div.product .summary .single-product-category { display: inline-block; margin-bottom: 8px; }
html body.single-product div.product .summary .product_title { margin: 0 0 12px !important; }
html body.single-product div.product .summary p.price { margin: 0 0 14px !important; padding-bottom: 16px; border-bottom: 1px solid #eef1fb; }
html body.single-product div.product .summary .woocommerce-product-details__short-description { margin-bottom: 18px; }
html body.single-product div.product .summary .woocommerce-product-details__short-description p:last-child { font-size: 13.5px; color: var(--belle-cinza); }
html body.single-product div.product form.cart { margin: 0 0 14px !important; }
html body.single-product table.variations th.label label { text-transform: none; font-size: 15px !important; }
html body.single-product table.variations td.value { padding-bottom: 18px !important; }
.belle-select-escondido { position: absolute !important; width: 1px !important; height: 1px !important; opacity: 0 !important; pointer-events: none !important; }
.belle-opcoes { display: flex; flex-wrap: wrap; gap: 8px; margin: 8px 0 6px; }
html body.single-product .belle-opcao {
	display: inline-flex !important; align-items: center; gap: 8px;
	min-height: 44px; min-width: 52px; padding: 0 16px !important;
	border-radius: 999px !important;
	border: 1.5px solid var(--belle-borda) !important;
	background: #fff !important;
	color: var(--belle-navy) !important;
	font-family: Roboto, system-ui, sans-serif !important;
	font-size: 14.5px !important; font-weight: 600 !important; text-transform: none !important; line-height: 1 !important;
	box-shadow: none !important; cursor: pointer;
	justify-content: center;
	transition: border-color .2s ease, background .2s ease, color .2s ease;
}
html body.single-product .belle-opcao:hover { border-color: var(--belle-azul) !important; }
html body.single-product .belle-opcao.is-ativo { border-color: var(--belle-azul) !important; background: #eef3ff !important; color: var(--belle-azul) !important; box-shadow: 0 0 0 3px rgba(0, 70, 202, .12) !important; }
html body.single-product .belle-opcao:disabled { opacity: .4; text-decoration: line-through; cursor: not-allowed; }
.belle-opcao__cor { width: 18px; height: 18px; border-radius: 50%; border: 1px solid rgba(29, 31, 69, .2); box-shadow: inset 0 0 0 2px #fff; }
html body.single-product .reset_variations { display: inline-block; margin-top: 2px; }
html body.single-product .woocommerce-variation.single_variation { margin: 4px 0 14px; }
html body.single-product .woocommerce-variation-availability .stock { color: #1b7a43; font-weight: 600; font-size: 14px; }
html body.single-product .woocommerce-variation-add-to-cart,
html body.single-product form.cart:not(.variations_form) { display: flex !important; gap: 12px; align-items: stretch; flex-wrap: nowrap; }
html body.single-product .woocommerce-variation-add-to-cart .single_add_to_cart_button,
html body.single-product form.cart:not(.variations_form) .single_add_to_cart_button { flex: 1; min-height: 56px !important; margin: 0 !important; font-size: 16.5px !important; }
html body.single-product .quantity.belle-qtd-box { display: inline-flex !important; align-items: center; border: 1.5px solid var(--belle-borda); border-radius: 999px; background: #fff; overflow: hidden; margin: 0 !important; }
html body.single-product .quantity.belle-qtd-box .qty { width: 44px !important; min-height: 52px; border: 0 !important; padding: 0 !important; text-align: center; -moz-appearance: textfield; box-shadow: none !important; }
html body.single-product .quantity.belle-qtd-box .qty::-webkit-inner-spin-button,
html body.single-product .quantity.belle-qtd-box .qty::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
html body.single-product .belle-qtd { width: 42px; height: 52px; border: 0 !important; background: transparent !important; color: var(--belle-navy) !important; font-size: 20px !important; font-weight: 500; cursor: pointer; padding: 0 !important; box-shadow: none !important; }
html body.single-product .belle-qtd:hover { color: var(--belle-azul) !important; }
html body.single-product .belle-frete-produto { margin: 16px 0 0; border-left-width: 1px; border-radius: 16px; background: #f5f7ff; border-color: #e1e6fb; }
.belle-selos-produto { list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 12px 0 0 !important; padding: 0 !important; }
.belle-selos-produto li { display: flex; align-items: center; gap: 10px; margin: 0; padding: 12px; border-radius: 16px; background: var(--belle-lavanda); font-size: 12.5px; line-height: 1.35; color: var(--belle-texto); }
.belle-selos-produto svg { flex: 0 0 auto; color: var(--belle-azul); }
.belle-selos-produto strong { display: block; color: var(--belle-navy); font-size: 13px; }
html body.single-product .product_meta { margin-top: 16px; padding-top: 14px; border-top: 1px solid #eef1fb; }
/* descricao */
html body.single-product .woocommerce-tabs {
	margin: 18px 0 0 !important;
	padding: 34px 40px !important;
	border-radius: 24px;
	background: #fff;
	box-shadow: var(--belle-sombra);
}
html body.single-product .woocommerce-tabs ul.tabs { margin: 0 0 18px !important; padding: 0 !important; border: 0 !important; display: flex; gap: 8px; }
html body.single-product .woocommerce-tabs ul.tabs::before { display: none !important; }
html body.single-product .woocommerce-tabs ul.tabs li { margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; border-radius: 999px !important; }
html body.single-product .woocommerce-tabs ul.tabs li::before, html body.single-product .woocommerce-tabs ul.tabs li::after { display: none !important; }
html body.single-product .woocommerce-tabs ul.tabs li a { display: block; padding: 10px 18px !important; border-radius: 999px; background: var(--belle-lavanda); color: var(--belle-navy) !important; font-family: Roboto, system-ui, sans-serif !important; font-size: 14.5px !important; font-weight: 600 !important; }
html body.single-product .woocommerce-tabs ul.tabs li.active a { background: var(--belle-azul); color: #fff !important; }
html body.single-product .woocommerce-tabs .panel { margin: 0 !important; color: var(--belle-texto); font-size: 16px; line-height: 1.75; max-width: 860px; }
html body.single-product .woocommerce-tabs .panel > h2:first-child { display: none; }
html body.single-product .woocommerce-tabs .panel h2, html body.single-product .woocommerce-tabs .panel h3 { font-family: "Roboto Slab", Georgia, serif; font-weight: 500; color: var(--belle-navy); }
html body.single-product .woocommerce-tabs table.shop_attributes { box-shadow: none; border-radius: 14px !important; }
html body.single-product .woocommerce-tabs table.shop_attributes th { text-transform: none; font-size: 14.5px !important; letter-spacing: 0; width: 160px; }
.belle-relacionados { margin: 26px 0 8px; }
.belle-relacionados .belle-novs { max-width: none; }

/* barra de compra fixa (so celular) */
.belle-barra-compra { display: none; }

/* ---------- celular e tablet ---------- */
@media (max-width: 921px) {
	.belle-login { grid-template-columns: minmax(0, 1fr); margin: 8px 0 32px; border-radius: 22px; }
	.belle-login__marca { min-height: 0; padding: 28px 24px 26px; gap: 10px; }
	.belle-login__titulo { font-size: 28px; max-width: 64%; }
	.belle-login__lista { gap: 8px; }
	.belle-login__lista li { font-size: 13.5px; }
	.belle-login__lista svg { flex-basis: 30px; width: 30px; height: 30px; padding: 6px; }
	.belle-login__nota { display: none; }
	.belle-login__foto { height: 92% !important; right: -14px; opacity: .95; }
	.belle-login__circulo { width: 260px; height: 260px; right: -60px; bottom: -80px; }
	.belle-login__forms { padding: 24px 20px 28px; }

	.belle-vbanner { grid-template-columns: minmax(0, 1fr); gap: 18px; min-height: 0; padding: 26px 22px 0; border-radius: 22px; }
	.belle-vbanner__intro { font-size: 15px; }
	.belle-vbanner__mosaico { height: 190px; margin: 0 -6px; }
	.belle-vbanner__foto { border-radius: 16px; }
	.belle-vbanner__foto.is-0 { top: 4%; }
	.belle-ferramentas { border-radius: 18px; padding: 10px 10px 10px 16px; }
	html .woocommerce .belle-ferramentas .woocommerce-result-count { font-size: 13px; }

	html body.single-product div.product { grid-template-columns: minmax(0, 1fr); gap: 16px; }
	html body.single-product div.product > .wcgs-woocommerce-product-gallery,
	html body.single-product div.product > .woocommerce-product-gallery { position: relative; top: 0; border-radius: 20px; }
	html body.single-product div.product > .summary { grid-column: 1; padding: 22px 18px 20px !important; border-radius: 20px; }
	html body.single-product div.product .summary .product_title { font-size: 26px !important; }
	html body.single-product div.product .summary p.price { font-size: 26px !important; }
	.belle-selos-produto { grid-template-columns: minmax(0, 1fr); gap: 8px; }
	.belle-selos-produto li { padding: 10px 12px; }
	html body.single-product .woocommerce-tabs { padding: 22px 18px !important; border-radius: 20px; }
	html body.single-product .woocommerce-tabs .panel { font-size: 15px; }

	.belle-barra-compra {
		position: fixed; left: 10px; right: 10px; bottom: 10px; z-index: 90;
		display: flex; align-items: center; gap: 10px;
		padding: 8px 8px 8px 8px; border-radius: 20px;
		background: rgba(255, 255, 255, .97);
		box-shadow: 0 18px 40px -12px rgba(29, 31, 69, .45);
		border: 1px solid #e6eafa;
	}
	.belle-barra-compra[hidden] { display: none; }
	.belle-barra-compra__foto { width: 46px !important; height: 46px !important; border-radius: 12px; object-fit: cover; }
	.belle-barra-compra__info { flex: 1; min-width: 0; display: flex; flex-direction: column; }
	.belle-barra-compra__nome { font-size: 12.5px; color: var(--belle-texto); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
	.belle-barra-compra__preco { font-family: "Roboto Slab", Georgia, serif; font-weight: 600; font-size: 17px; color: var(--belle-azul); }
	.belle-barra-compra__preco del { font-size: 12px; color: var(--belle-cinza); }
	.belle-barra-compra__botao {
		height: 48px; padding: 0 22px !important; border: 0 !important; border-radius: 999px !important;
		background: linear-gradient(135deg, var(--belle-azul-claro), var(--belle-azul)) !important;
		color: #fff !important; font-weight: 700 !important; font-size: 15px !important; text-transform: none !important;
	}
	body.belle-com-barra { padding-bottom: 76px; }
}
@media (max-width: 921px) and (min-width: 600px) {
	.belle-selos-produto { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (prefers-reduced-motion: reduce) {
	.belle-login.is-js .u-columns .u-column1, .belle-login.is-js .u-columns .u-column2 { animation: none; }
}

/* v2 — ajustes */
html body.single-product div.product > .summary,
html body.single-product div.product > .wcgs-woocommerce-product-gallery,
html body.single-product div.product > .woocommerce-product-gallery { max-width: none !important; }
.belle-login__abas button { text-transform: none !important; letter-spacing: 0 !important; }
@media (max-width: 921px) {
	html .woocommerce .belle-ferramentas .woocommerce-result-count { display: none; }
	html .woocommerce .belle-ferramentas { justify-content: flex-end; padding: 8px; border-radius: 999px; }
	html .woocommerce .belle-ferramentas .woocommerce-ordering { width: 100%; }
	html .woocommerce .belle-ferramentas .woocommerce-ordering select { width: 100%; }
	.belle-login__marca { padding-right: 40%; }
	.belle-login__titulo { max-width: none; font-size: 26px; }
	.belle-login__lista li { font-size: 13px; line-height: 1.3; }
	.belle-login__foto { height: 100% !important; right: -24px; }
}
html body.single-product .woocommerce-tabs .panel h2 { font-size: 26px !important; line-height: 1.2 !important; margin: 26px 0 10px !important; }
html body.single-product .woocommerce-tabs .panel h3 { font-size: 20px !important; line-height: 1.25 !important; margin: 20px 0 8px !important; }
@media (max-width: 921px) {
	html body.single-product .woocommerce-tabs .panel h2 { font-size: 21px !important; }
	html body.single-product .woocommerce-tabs .panel h3 { font-size: 18px !important; }
}
