/* ==========================================================================
   Tema Onic
   ========================================================================== */

:root {
	--onic-verde: var(--wp--preset--color--verde, #3F5C58);
	--onic-grafite: var(--wp--preset--color--grafite, #2E3238);
	--onic-claro: var(--wp--preset--color--claro, #F4F2EE);
	--onic-linha: #2E3238;
	--onic-titulo: var(--wp--preset--font-family--titulo, "Montserrat", sans-serif);
	--onic-texto: var(--wp--preset--font-family--texto, "Questrial", sans-serif);
	--onic-largura: 1400px;
	--onic-margem: 40px;
}

body { margin: 0; -webkit-font-smoothing: antialiased; }
.wp-site-blocks { padding: 0; }
.wp-site-blocks > * { margin-block-start: 0; }
img { max-width: 100%; height: auto; }

/* Conteúdo centralizado com margens laterais */
.onic-header,
.onic-secao,
.onic-marcas,
.onic-loja,
.onic-blog-barra,
.onic-posts,
.onic-recentes,
.onic-produto,
.onic-footer__main,
.onic-footer__meio,
.onic-footer__base,
.onic-post__caixa,
.onic-comentarios,
.onic-pagina {
	box-sizing: border-box;
	width: 100%;
	max-width: calc(var(--onic-largura) + 2 * var(--onic-margem));
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: var(--onic-margem);
	padding-right: var(--onic-margem);
}

.onic-main { margin-top: 0; }
.onic-main > * + * { margin-block-start: 0; }

/* Botões ------------------------------------------------------------------ */
.wp-block-button.is-style-outline > .wp-block-button__link {
	background: transparent;
	color: var(--onic-grafite);
	border: 1px solid var(--onic-grafite);
	padding: 13px 22px;
}
.wp-block-button.is-style-outline > .wp-block-button__link:hover {
	background: var(--onic-grafite);
	color: #fff;
}
.onic-botao-claro > .wp-block-button__link,
.wp-block-button.is-style-outline.onic-botao-claro > .wp-block-button__link {
	color: #fff;
	border-color: #fff;
}
.wp-block-button.is-style-outline.onic-botao-claro > .wp-block-button__link:hover {
	background: #fff;
	color: var(--onic-grafite);
}
.onic-botao-largo > .wp-block-button__link { padding-left: 70px; padding-right: 70px; }

/* 1. Faixa de promoções ------------------------------------------------------ */
.onic-promo {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	background: var(--onic-verde);
	color: #fff;
	margin: 0;
}
.onic-promo > p {
	margin: 0 !important;
	text-align: center;
	padding: 9px 8px;
	border-left: 1px solid #fff;
	font-size: 15px;
	line-height: 1.4;
}
.onic-promo > p:first-child { border-left: 0; }
.onic-promo a { color: #fff; }

/* 2. Cabeçalho --------------------------------------------------------------- */
.onic-header { margin-top: 0; }
.onic-header__topo {
	box-sizing: border-box;
	min-height: 68px;
	padding: 0;
	border-bottom: .8px solid var(--onic-linha);
	gap: 24px;
	align-items: center;
}
.onic-marca { gap: 10px; align-items: center; }
.onic-marca .wp-block-site-title,
.onic-marca .wp-block-site-title a {
	font-family: var(--onic-titulo);
	font-size: 22px;
	font-weight: 400;
	letter-spacing: .5px;
	text-decoration: none;
	color: inherit;
	margin: 0;
}
/* Logo animado (mesmo efeito do site anterior): no hover ou foco por teclado
   o elefante dá um passinho e a palavra "onic" desliza abrindo espaço ao lado. */
:root {
	--onic-ease: cubic-bezier(.22, .9, .24, 1);
	--onic-word: 30px;
}
.onic-header .onic-marca:has(.wp-block-site-logo img) .wp-block-site-title { display: none; }
.onic-header .wp-block-site-logo { width: auto !important; }
.onic-header .wp-block-site-logo a.custom-logo-link {
	display: inline-flex !important;
	align-items: center;
	width: auto !important;
	text-decoration: none !important;
	color: inherit;
	white-space: nowrap;
}
.onic-header .wp-block-site-logo img.custom-logo {
	display: block;
	flex: none;
	width: 55px;
	height: auto;
	transform-origin: 52% 96%;
	will-change: transform;
}
.onic-header .wp-block-site-logo a.custom-logo-link::after {
	content: "onic";
	font-family: "Quicksand", ui-rounded, "Varela Round", system-ui, sans-serif;
	font-weight: 400;
	font-size: var(--onic-word);
	letter-spacing: .06em;
	line-height: 1;
	color: currentColor;
	max-width: 0;
	padding-left: 0;
	opacity: 0;
	overflow: hidden;
	transition: max-width .62s var(--onic-ease), padding-left .62s var(--onic-ease), opacity .28s linear;
}
.onic-header .wp-block-site-logo a.custom-logo-link:hover::after,
.onic-header .wp-block-site-logo a.custom-logo-link:focus-visible::after {
	max-width: 8em;
	padding-left: .30em;
	opacity: 1;
}
.onic-header .wp-block-site-logo a.custom-logo-link:hover img.custom-logo,
.onic-header .wp-block-site-logo a.custom-logo-link:focus-visible img.custom-logo {
	animation: onic-walk 1.15s var(--onic-ease) infinite;
}
@keyframes onic-walk {
	0%   { transform: translateY(0) rotate(0deg) scale(1, 1); }
	14%  { transform: translateY(-7%) rotate(-3.2deg) scale(.985, 1.02); }
	30%  { transform: translateY(0) rotate(-1deg) scale(1.03, .955); }
	46%  { transform: translateY(-5.5%) rotate(2.6deg) scale(.99, 1.015); }
	64%  { transform: translateY(0) rotate(.8deg) scale(1.025, .965); }
	82%  { transform: translateY(-2.5%) rotate(-1deg) scale(.995, 1.008); }
	100% { transform: translateY(0) rotate(0deg) scale(1, 1); }
}
/* Celular e tablet: sem mouse, a palavra fica sempre visível. */
@media (hover: none) {
	.onic-header .wp-block-site-logo a.custom-logo-link::after {
		max-width: 8em;
		padding-left: .30em;
		opacity: 1;
		transition: none;
	}
	:root { --onic-word: 24px; }
}
/* Quem pediu menos movimento no sistema: a palavra aparece, o passo não. */
@media (prefers-reduced-motion: reduce) {
	.onic-header .wp-block-site-logo a.custom-logo-link:hover img.custom-logo,
	.onic-header .wp-block-site-logo a.custom-logo-link:focus-visible img.custom-logo { animation: none; }
}

.onic-menu { font-size: 15px; line-height: 50px; gap: 30px; }
.onic-menu a { text-decoration: none; }
.onic-menu .wp-block-navigation-item__content:hover { color: var(--onic-verde); }
.onic-header__base {
	box-sizing: border-box;
	min-height: 67px;
	padding: 0;
	margin-top: 0 !important;
	align-items: center;
}
.wp-block-social-links.is-style-logos-only { gap: 7px; }
.wp-block-social-links.is-style-logos-only .wp-social-link { color: var(--onic-grafite); }
.wp-block-social-links.is-style-logos-only .wp-social-link a { padding: 0; }
.wp-block-social-links.is-style-logos-only .wp-social-link svg { width: 20px; height: 20px; }

.onic-busca { margin: 0; }
.onic-busca .wp-block-search__inside-wrapper {
	border: 0;
	border-bottom: 1px solid var(--onic-grafite);
	padding: 0;
	width: 220px;
}
.onic-busca .wp-block-search__input {
	border: 0;
	background: transparent;
	font-family: var(--onic-texto);
	font-size: 14px;
	padding: 6px 4px;
}
.onic-busca .wp-block-search__button {
	background: transparent;
	color: var(--onic-grafite);
	padding: 4px;
	margin: 0;
	border: 0;
}

/* 3. Banner ------------------------------------------------------------------ */
.onic-hero.wp-block-cover {
	min-height: 774px !important;
	padding: 143px 16px 60px;
	align-items: flex-start;
}
.onic-hero__caixa {
	background: var(--onic-grafite);
	color: #fff;
	text-align: center;
	padding: 70px 50px 50px;
	width: 521px;
	min-height: 395px;
	max-width: 100%;
	margin: 0 auto;
	box-sizing: border-box;
}
.onic-hero__caixa h1 { color: #fff; margin: 0; line-height: 1.2; }
.onic-hero__caixa p { max-width: 300px; margin: 16px auto 26px; font-size: 17px; line-height: 1.4; color: #fff; }

/* Botões no tamanho do Wix (142 x 46) */
.onic-hero__caixa .wp-block-button__link,
.onic-duplo .wp-block-button__link,
.onic-duplo .wp-block-post-excerpt__more-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-width: 142px;
	height: 46px;
	padding: 0 20px;
	font-size: 15px;
	line-height: 1;
}

/* 4. Categorias minimalistas --------------------------------------------------- */
.onic-cats {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	background: #fff;
	border-bottom: .8px solid var(--onic-linha);
	box-sizing: border-box;
	width: calc(100% - 2 * var(--onic-margem));
	max-width: var(--onic-largura);
	margin: -71px auto 0 !important;
}
.onic-cat {
	border-left: .8px solid var(--onic-linha);
	height: 151px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	font-family: var(--onic-texto);
	font-size: 21px;
	text-decoration: none;
	color: var(--onic-grafite);
}
.onic-cat:first-child { border-left: 0; }
.onic-cat svg {
	width: 36px;
	height: 36px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
	transition: transform .3s;
}
.onic-cat:hover { color: var(--onic-verde); }
.onic-cat:hover svg { transform: translateY(-3px); }

/* 5. Mais vendidos -------------------------------------------------------------- */
.onic-secao { padding-top: 84px; padding-bottom: 27px; }
.onic-secao > h2 { margin: 0 0 33px; line-height: 1.4; }
.onic-secao .wp-block-buttons { margin-top: 96px; }
.onic-botao-largo > .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 261px;
	height: 41px;
	padding: 0;
	font-size: 15px;
}

/* Cartão de produto (vitrine e loja), no desenho da galeria do Wix ---------------- */
.woocommerce ul.products,
.woocommerce-page ul.products {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 60px 6.5%;
	margin: 0;
	padding: 0;
}
.woocommerce ul.products.columns-3 { grid-template-columns: repeat(3, 1fr); }
.woocommerce ul.products::before,
.woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product {
	--onic-pad: 0px;
	position: relative;
	container-type: inline-size;
	width: auto !important;
	margin: 0 !important;
	padding: var(--onic-pad) !important;
	float: none !important;
	text-align: center;
	list-style: none;
}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link { display: block; text-decoration: none; }
.onic-foto {
	position: relative;
	display: block;
	aspect-ratio: 3 / 4;
	overflow: hidden;
	background: var(--onic-claro);
	margin: 0 0 16px;
}
.woocommerce ul.products li.product .onic-foto img {
	width: 100%;
	height: 100%;
	aspect-ratio: auto;
	object-fit: cover;
	margin: 0;
	transition: transform .5s cubic-bezier(.18, .73, .63, 1);
}
.woocommerce ul.products li.product a:hover .onic-foto img { transform: scale(1.04); }
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: var(--onic-titulo);
	font-weight: 400;
	font-size: 21px;
	line-height: 1.4;
	padding: 0;
	margin: 0;
	color: var(--onic-grafite);
}
.woocommerce ul.products li.product .price {
	display: block;
	color: var(--onic-grafite);
	font-size: 17px;
	line-height: 1.5;
	margin: 4px 0 0;
}
.woocommerce ul.products li.product .price del { opacity: 1; margin-right: 4px; }
.woocommerce ul.products li.product .price ins { text-decoration: none; }
/* Botão "Ver na loja": faixa escura no pé da foto, aparece ao passar o mouse
   (no Wix é o "Visualização rápida"). */
.woocommerce ul.products li.product .button {
	position: absolute;
	left: var(--onic-pad);
	top: calc(var(--onic-pad) + 100cqw * 4 / 3 - 50px);
	width: 100cqw;
	height: 50px;
	box-sizing: border-box;
	margin: 0 !important;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--onic-grafite);
	color: #fff;
	border: 0;
	border-radius: 0;
	font-family: var(--onic-texto);
	font-weight: 400;
	font-size: 15px;
	padding: 0 10px;
	opacity: 0;
	transition: opacity .3s;
}
.woocommerce ul.products li.product:hover .button,
.woocommerce ul.products li.product .button:focus { opacity: 1; }
.woocommerce ul.products li.product .button:hover { background: var(--onic-grafite); color: #fff; opacity: .9; }
@media (hover: none) {
	.woocommerce ul.products li.product .button { display: none; }
}
.woocommerce ul.products li.product .onsale,
.woocommerce span.onsale {
	background: var(--onic-verde);
	border-radius: 0;
	min-height: 0;
	min-width: 0;
	line-height: 1.4;
	padding: 2px 12px;
	font-weight: 400;
	font-size: 14px;
	top: 0;
	left: 0;
	right: auto;
	margin: 0;
}
.onic-aviso { text-align: center; padding: 24px; border: 1px dashed var(--onic-grafite); }

/* 6. Loja + blog lado a lado ------------------------------------------------------ */
.onic-duplo {
	position: relative;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1px;
	background: var(--onic-linha);
	margin-top: 2px !important;
}
.onic-duplo::before {
	content: "";
	position: absolute;
	top: -2px;
	left: var(--onic-margem);
	right: var(--onic-margem);
	border-top: .8px solid var(--onic-linha);
}
.onic-duplo__lado {
	background: #fff;
	margin: 0 !important;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	padding: 68px 20px 170px;
	box-sizing: border-box;
}
.onic-duplo__lado--blog { padding-top: 77px; padding-bottom: 60px; }
.onic-duplo__lado > *,
.onic-duplo .wp-block-query,
.onic-duplo .wp-block-post-template,
.onic-duplo .wp-block-post-template > li { width: 100%; max-width: 400px; margin: 0; }
.onic-duplo h2,
.onic-duplo .wp-block-post-title { font-size: 32px; line-height: 1.4; margin: 0 0 14px; }
.onic-duplo .wp-block-post-title a { text-decoration: none; }
.onic-duplo p,
.onic-duplo .wp-block-post-excerpt__excerpt { font-size: 17px; line-height: 1.4; margin: 0 0 23px; }
.onic-duplo .wp-block-buttons { justify-content: center; margin: 0 0 53px !important; }
.onic-duplo .wp-block-post-template { padding: 0; list-style: none; }
.onic-duplo__foto { margin: 0 !important; }
.onic-duplo__foto img { width: 400px; max-width: 100%; height: 560px; object-fit: cover; display: block; }
.onic-duplo .wp-block-post-featured-image { margin: 0 0 37px !important; }
.onic-duplo .wp-block-post-featured-image img { width: 400px; max-width: 100%; height: 530px !important; object-fit: cover; }
.onic-duplo .wp-block-post-excerpt { margin: 0; }
.onic-duplo .wp-block-post-excerpt__more-text { margin: 0; }
.onic-duplo .wp-block-post-excerpt__more-link { background: var(--onic-grafite); color: #fff; border: 0; text-decoration: none; margin: 0; }
.onic-duplo .wp-block-post-excerpt__more-link:hover { background: var(--onic-verde); color: #fff; }
.onic-etiqueta {
	text-transform: uppercase;
	letter-spacing: 2px;
	font-size: 12px;
	color: var(--onic-verde);
	margin: 0 0 10px !important;
}
.wp-block-post-excerpt__more-link {
	display: inline-block;
	margin-top: 10px;
	border: 1px solid var(--onic-grafite);
	padding: 13px 22px;
	text-decoration: none;
}
.wp-block-post-excerpt__more-link:hover { background: var(--onic-grafite); color: #fff; }

/* 7. Onde garimpamos (lojas parceiras) ----------------------------------------------- */
.onic-marcas { position: relative; padding-bottom: 52px; }
.onic-marcas__titulo {
	position: relative;
	z-index: 1;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 700px;
	max-width: 100%;
	height: 80px;
	margin: 0 auto -38px !important;
	border: .8px solid var(--onic-linha);
	background: #fff;
	font-size: 32px !important;
	line-height: 1.2;
}
.onic-marcas__lista {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 1px;
	background: var(--onic-linha);
	border: 1px solid var(--onic-linha);
	margin: 0 !important;
}
.onic-marcas__lista > p {
	margin: 0 !important;
	background: #fff;
	height: 259px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 0 10px;
	font-family: var(--onic-titulo);
	font-size: 20px;
	letter-spacing: 3px;
	text-transform: uppercase;
}

/* 8. Grade de fotos (largura total, 4 colunas) ------------------------------------- */
.onic-inspire { margin: 0 !important; }
.onic-inspire .wp-block-gallery.has-nested-images {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr);
	gap: 40px !important;
	margin: 0;
}
.onic-inspire .wp-block-gallery.has-nested-images figure.wp-block-image {
	width: auto !important;
	margin: 0 !important;
	aspect-ratio: 1 / 1;
}
.onic-inspire .wp-block-gallery.has-nested-images figure.wp-block-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* 9. Rodapé (mesma estrutura do Wix) --------------------------------------------------- */
.onic-footer {
	background: #2b2b2b;
	color: #fff;
	margin-top: 123px !important;
}
.onic-footer a { color: #fff; text-decoration: none; }
.onic-footer a:hover { text-decoration: underline; }
.onic-footer__main {
	display: grid;
	grid-template-columns: 488fr 98fr 197fr 197fr;
	min-height: 294px;
	max-width: none;
	padding: 54px 0 30px;
	box-sizing: border-box;
}
.onic-footer__main > * { margin: 0 !important; }
.onic-footer__main > :nth-child(1) { padding-left: 39px; }
.onic-footer__main > :nth-child(2) { padding-left: 16px; }
.onic-footer__main > :nth-child(3),
.onic-footer__main > :nth-child(4) { padding-left: 50px; }
.onic-footer h4 { font-family: var(--onic-titulo); font-weight: 400; font-size: 17px; line-height: 1.25; margin: 0 0 20px; color: #fff; }
.onic-footer ul { list-style: none; margin: 0; padding: 0; font-size: 15px; line-height: 2em; }
.onic-footer li { margin: 0; }

/* Newsletter */
.onic-news { width: 455px; max-width: 100%; margin-left: -25px; font-size: 15px; }
.onic-news label { display: block; margin: 0 0 8px; }
.onic-news__email {
	box-sizing: border-box;
	width: 100%;
	height: 39px;
	border: 1px solid #fff;
	background: transparent;
	color: #fff;
	font: inherit;
	padding: 0 12px;
	border-radius: 0;
}
.onic-news__linha { display: grid; grid-template-columns: 5fr 7fr; gap: 12px; margin-top: 12px; align-items: start; }
.onic-news__enviar {
	height: 39px;
	border: 1px solid #fff;
	background: transparent;
	color: #fff;
	font: inherit;
	cursor: pointer;
}
.onic-news__enviar:hover { background: #fff; color: var(--onic-grafite); }
.onic-news__aceite { display: flex !important; gap: 10px; align-items: flex-start; line-height: 1.5; margin: 8px 0 0 !important; }
.onic-news__aceite input { margin: 3px 0 0; accent-color: #fff; }
.onic-news__msg { margin: 10px 0 0; }

.onic-footer__meio {
	max-width: none;
	margin-top: 0 !important;
	padding: 29px 0 31px;
	display: grid;
	grid-template-columns: 784fr 196fr;
	align-items: start;
}
.onic-footer__meio > * { margin: 0 !important; }
.onic-footer__meio .onic-marca { padding-left: 40px; gap: 16px; align-items: center; }
.onic-footer__meio .wp-block-social-links { padding-left: 19px; }
.onic-footer .wp-block-social-links.is-style-logos-only .wp-social-link { color: #fff; }
.onic-footer .onic-marca img { filter: brightness(0) invert(1); }
.onic-footer__base {
	color: #fff;
	border-top: 1px solid rgba(255, 255, 255, .15);
	font-size: 14px;
	line-height: 1.4;
	max-width: none;
	margin-top: 0 !important;
	padding: 28px var(--onic-margem);
	box-sizing: border-box;
	text-align: center;
}
.onic-footer__base > * { margin: 0 auto !important; max-width: 640px; }
.onic-footer__base > * + * { margin-top: 6px !important; }

/* ==========================================================================
   Loja (medidas da página "Loja" do Wix)
   ========================================================================== */

.onic-faixa-titulo {
	background: var(--onic-grafite);
	color: #fff;
	text-align: center;
	box-sizing: border-box;
	min-height: 277px;
	padding: 53px 20px 50px;
	width: calc(100% - 2 * var(--onic-margem));
	max-width: var(--onic-largura);
	margin: 0 auto !important;
}
.onic-faixa-titulo > * { margin: 0 !important; }
.onic-faixa-titulo h1,
.onic-faixa-titulo .wp-block-query-title { color: #fff; font-size: 54px; line-height: 1.22; margin: 0; }
.onic-faixa-titulo p,
.onic-faixa-titulo__texto { max-width: 699px; margin: 10px auto 0 !important; font-size: 17px; line-height: 1.5; color: #fff; }

.onic-loja {
	display: grid;
	grid-template-columns: 240px 1fr;
	gap: 1px;
	padding-top: 41px;
	align-items: start;
}
.onic-loja > * { margin: 0 !important; }

.onic-filtros { padding: 20px; color: #000; }
.onic-filtros__titulo {
	font-family: var(--onic-texto);
	font-size: 26px;
	line-height: 1.2;
	color: #414141;
	margin: 0;
	padding-bottom: 20px;
	border-bottom: 1px solid rgba(0, 0, 0, .2);
}
.onic-filtros__grupo { border-bottom: 1px solid rgba(0, 0, 0, .2); padding: 20px 0; }
.onic-filtros__grupo summary {
	list-style: none;
	cursor: pointer;
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 16px;
	line-height: 28px;
}
.onic-filtros__grupo summary::-webkit-details-marker { display: none; }
.onic-filtros__grupo summary::after {
	content: "";
	flex: none;
	width: 14px;
	height: 14px;
	margin-right: 3px;
	background:
		linear-gradient(currentColor, currentColor) center / 14px 1px no-repeat,
		linear-gradient(currentColor, currentColor) center / 1px 14px no-repeat;
}
.onic-filtros__grupo[open] summary::after {
	background: linear-gradient(currentColor, currentColor) center / 14px 1px no-repeat;
}
.onic-filtros ul { list-style: none; margin: 15px 0 0; padding: 0; font-size: 14px; line-height: 1.7; }
.onic-filtros ul ul { margin: 2px 0 2px 14px; }
.onic-filtros a { text-decoration: none; opacity: .8; }
.onic-filtros a:hover { opacity: .4; }
.onic-filtros li.is-ativo > a { opacity: 1; font-weight: 700; }
.onic-filtros__opcoes label { display: flex; align-items: center; gap: 10px; cursor: pointer; }
.onic-filtros__opcoes label span { opacity: .8; }
.onic-filtros__opcoes label:hover span { opacity: .4; }
.onic-filtros__opcoes input {
	appearance: none;
	-webkit-appearance: none;
	flex: none;
	width: 15px;
	height: 15px;
	margin: 0;
	border: 1px solid #C9C9C9;
	background: #fff;
	position: relative;
	cursor: pointer;
}
.onic-filtros__opcoes input:focus-visible { border-color: #000; }
.onic-filtros__opcoes input:checked::after {
	content: "";
	position: absolute;
	left: 4px;
	top: 1px;
	width: 4px;
	height: 8px;
	border: solid #000;
	border-width: 0 1px 1px 0;
	transform: rotate(45deg);
}
.onic-filtros__limpar { display: inline-block; margin-top: 16px; font-size: 14px; text-decoration: underline !important; }

/* Faixa de preço com dois marcadores */
.onic-preco { margin-top: 15px; --ini: 0%; --fim: 100%; }
.onic-preco__trilho { position: relative; height: 24px; margin: 0 4px; }
.onic-preco__trilho::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 11px;
	height: 2px;
	background: linear-gradient(to right,
		rgba(0, 0, 0, .3) var(--ini), currentColor var(--ini),
		currentColor var(--fim), rgba(0, 0, 0, .3) var(--fim));
}
.onic-preco__trilho input {
	position: absolute;
	left: -6px;
	top: 0;
	width: calc(100% + 12px);
	height: 24px;
	margin: 0;
	background: none;
	pointer-events: none;
	-webkit-appearance: none;
	appearance: none;
}
.onic-preco__trilho input::-webkit-slider-runnable-track { background: none; border: 0; }
.onic-preco__trilho input::-moz-range-track { background: none; border: 0; }
.onic-preco__trilho input::-webkit-slider-thumb {
	-webkit-appearance: none;
	pointer-events: auto;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #000;
	border: 0;
	cursor: pointer;
	transition: transform .15s;
}
.onic-preco__trilho input::-moz-range-thumb {
	pointer-events: auto;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #000;
	border: 0;
	cursor: pointer;
}
.onic-preco__trilho input:active::-webkit-slider-thumb { transform: scale(1.2); }
.onic-preco__trilho input:focus-visible::-webkit-slider-thumb { outline: 2px solid #116dff; outline-offset: 2px; }
.onic-preco__valores { display: flex; justify-content: space-between; font-size: 14px; line-height: 1.7; margin-top: 2px; }

/* Grade da loja: 3 colunas, cada produto com 50px de respiro */
.onic-loja__produtos ul.products,
.onic-loja__produtos ul.products.columns-3 { grid-template-columns: repeat(3, 1fr); gap: 0; }
.onic-loja__produtos ul.products li.product { --onic-pad: 50px; }
.onic-loja__produtos .woocommerce-info { margin: 50px; }
.woocommerce nav.woocommerce-pagination { margin-top: 20px; }
.woocommerce nav.woocommerce-pagination ul { border: 0; }
.woocommerce nav.woocommerce-pagination ul li { border: 0; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span { padding: 8px 12px; font-size: 16px; background: none; color: #414141; }
.woocommerce nav.woocommerce-pagination ul li span.current { background: none; color: var(--onic-grafite); text-decoration: underline; }

/* Página do produto */
.onic-produto { padding-top: 30px; }
.onic-produto .woocommerce-breadcrumb,
.onic-produto .wc-block-breadcrumbs { font-size: 13px; margin-bottom: 30px; }
.woocommerce div.product .product_title { font-family: var(--onic-titulo); font-weight: 400; font-size: 32px; }
.woocommerce div.product p.price,
.woocommerce div.product span.price { color: var(--onic-grafite); font-size: 20px; }
.woocommerce div.product form.cart .button,
.woocommerce .single_add_to_cart_button {
	background: var(--onic-grafite) !important;
	color: #fff !important;
	border-radius: 0 !important;
	font-family: var(--onic-texto);
	font-weight: 400 !important;
	padding: 16px 44px !important;
	width: 100%;
	max-width: 360px;
}
.woocommerce div.product form.cart .button:hover { background: var(--onic-verde) !important; }
.onic-aviso-afiliado { font-size: 12px; opacity: .75; max-width: 360px; }
.woocommerce div.product .woocommerce-tabs ul.tabs { padding: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background: transparent; border-radius: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { font-weight: 400; }
.woocommerce .related > h2,
.woocommerce .upsells > h2 { text-align: center; margin: 60px 0 30px; }

/* ==========================================================================
   Blog
   ========================================================================== */

.onic-blog-barra {
	padding-top: 26px;
	padding-bottom: 26px;
	gap: 20px;
}
.onic-cats-blog { display: flex; flex-wrap: wrap; gap: 8px 24px; font-size: 14px; }
.onic-cats-blog a { text-decoration: none; }
.onic-cats-blog a.is-ativo { color: var(--onic-verde); text-decoration: underline; text-underline-offset: 4px; }

.onic-posts .wp-block-post-template { gap: 32px; }
.onic-card {
	border: 1px solid #C7C7C7;
	height: 100%;
	box-sizing: border-box;
	transition: border-color .3s;
}
.onic-card:hover { border-color: var(--onic-grafite); }
.onic-card .wp-block-post-featured-image { margin: 0; }
.onic-card__corpo { padding: 22px 26px 28px; margin: 0 !important; }
.onic-card .wp-block-post-title { font-size: 20px; margin: 6px 0 12px; line-height: 1.35; }
.onic-card .wp-block-post-title a { text-decoration: none; }
.onic-card .wp-block-post-excerpt { font-size: 14px; margin: 0; }
.onic-card .wp-block-post-excerpt__excerpt { margin: 0; }
.onic-meta { font-size: 12px; opacity: .8; gap: 6px; margin: 0; }
.onic-meta > * + *::before { content: "·"; margin-right: 6px; }
.onic-posts .wp-block-query-pagination { margin-top: 44px; }

/* Post */
.onic-post__caixa {
	max-width: 940px;
	border: 1px solid #C7C7C7;
	padding: 50px 68px !important;
}
.onic-post__titulo { font-size: 32px !important; line-height: 1.4; margin: 14px 0 22px; }
.onic-post__foto { margin: 0 0 28px; }
.onic-post__conteudo { font-size: 15px; line-height: 1.5; }
.onic-post__conteudo > * { margin-block: 0 1.1em; }
.onic-post__conteudo h2 { font-family: var(--onic-texto); font-size: 21px; line-height: 1.4; margin: 2em 0 .8em; }
.onic-post__conteudo h3 { font-family: var(--onic-texto); font-size: 18px; margin: 1.8em 0 .7em; }
.onic-post__conteudo a { color: var(--onic-verde); }
.onic-post__conteudo ul,
.onic-post__conteudo ol { padding-left: 1.4em; }
.onic-post__conteudo li { margin-bottom: .4em; }
.onic-post__conteudo img { margin: 1em 0; }
.onic-post__conteudo blockquote {
	border-left: 2px solid var(--onic-verde);
	margin: 1.6em 0;
	padding: 4px 0 4px 22px;
	font-family: var(--onic-titulo);
	font-size: 20px;
}
/* Produtos inseridos no meio do post */
.onic-post__conteudo .woocommerce ul.products { grid-template-columns: repeat(3, 1fr); gap: 28px; }
.onic-post__rodape {
	border-top: 1px solid #C7C7C7;
	margin-top: 36px;
	padding-top: 20px;
	gap: 16px;
}
.onic-compartilhar { display: flex; align-items: center; gap: 16px; font-size: 13px; }
.onic-compartilhar a,
.onic-compartilhar button { display: inline-flex; color: var(--onic-grafite); background: none; border: 0; padding: 0; cursor: pointer; }
.onic-compartilhar svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.onic-compartilhar a:hover,
.onic-compartilhar button:hover { color: var(--onic-verde); }
.onic-copiar-link.is-copiado { color: var(--onic-verde); }
.onic-post__categorias { font-size: 13px; }

.onic-recentes { max-width: 1020px; padding-top: 50px; }
.onic-recentes .onic-posts { padding: 0; max-width: none; }
.onic-recentes__topo { margin-bottom: 20px; }
.onic-recentes__topo h2 { font-family: var(--onic-texto); font-size: 18px; margin: 0; }
.onic-recentes__topo p { margin: 0; font-size: 14px; }
.onic-comentarios { max-width: 940px; padding-top: 40px; }

/* Páginas */
.onic-pagina { padding-top: 60px; padding-bottom: 20px; }
.onic-pagina__titulo { text-align: center; margin-bottom: 40px; }
.onic-404 { text-align: center; padding-top: 100px; }
.onic-404 .wp-block-search { max-width: 420px; margin: 30px auto; }

/* ==========================================================================
   Tablet e celular
   ========================================================================== */

@media (max-width: 1100px) {
	.woocommerce ul.products { grid-template-columns: repeat(3, 1fr); }
	.onic-loja__produtos ul.products li.product { --onic-pad: 24px; }
	.onic-footer__main { grid-template-columns: 1fr 1fr; row-gap: 30px; }
	.onic-footer__main > * { padding-left: var(--onic-margem) !important; }
	.onic-news { margin-left: 0; }
}

@media (max-width: 900px) {
	:root { --onic-margem: 16px; }
	.onic-promo { grid-template-columns: 1fr 1fr; }
	.onic-promo > p { font-size: 13px; }
	.onic-promo > p:nth-child(3) { border-left: 0; }
	.onic-promo > p:nth-child(n+3) { border-top: 1px solid #fff; }
	.onic-busca .wp-block-search__inside-wrapper { width: 160px; }
	.onic-hero.wp-block-cover { min-height: 520px !important; padding-top: 70px; }
	.onic-hero__caixa { padding: 44px 24px; min-height: 0; }
	.onic-cats { grid-template-columns: 1fr 1fr; margin-top: -50px !important; }
	.onic-cat { height: 110px; font-size: 17px; gap: 8px; }
	.onic-cat svg { width: 30px; height: 30px; }
	.onic-cat:nth-child(3) { border-left: 0; }
	.onic-cat:nth-child(n+3) { border-top: .8px solid var(--onic-linha); }
	.onic-secao { padding-top: 50px; }
	.onic-secao .wp-block-buttons { margin-top: 50px; }
	.woocommerce ul.products,
	.woocommerce ul.products.columns-3,
	.onic-post__conteudo .woocommerce ul.products { grid-template-columns: 1fr 1fr; gap: 30px 16px; }
	.onic-duplo { grid-template-columns: 1fr; }
	.onic-duplo__lado,
	.onic-duplo__lado--blog { padding: 50px 16px; }
	.onic-duplo__foto img,
	.onic-duplo .wp-block-post-featured-image img { height: auto !important; aspect-ratio: 5 / 7; }
	.onic-marcas__titulo { height: 64px; font-size: 24px !important; margin-bottom: -32px !important; }
	.onic-marcas__lista { grid-template-columns: 1fr 1fr; }
	.onic-marcas__lista > p { height: 140px; font-size: 16px; }
	.onic-inspire .wp-block-gallery.has-nested-images { grid-template-columns: 1fr 1fr; gap: 12px !important; }
	.onic-footer__main,
	.onic-footer__meio { grid-template-columns: 1fr; row-gap: 20px; }
	.onic-footer__meio > * { padding-left: var(--onic-margem) !important; }
	.onic-faixa-titulo { min-height: 0; padding: 40px 20px; }
	.onic-faixa-titulo h1,
	.onic-faixa-titulo .wp-block-query-title { font-size: 34px; }
	.onic-loja { grid-template-columns: 1fr; padding-top: 20px; }
	.onic-filtros { padding: 0 0 10px; }
	.onic-loja__produtos ul.products,
	.onic-loja__produtos ul.products.columns-3 { grid-template-columns: 1fr 1fr; gap: 30px 16px; }
	.onic-loja__produtos ul.products li.product { --onic-pad: 0px; }
	.onic-posts .wp-block-post-template.is-layout-grid { grid-template-columns: 1fr; }
	.onic-post__caixa { padding: 28px 20px !important; border-left: 0; border-right: 0; }
}

@media (max-width: 480px) {
	.onic-header__base { flex-wrap: wrap !important; }
	.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 17px; }
}
