/*
Theme Name: Líquida Equinos — Blocksy Child
Description: Tema filho oficial da loja Líquida Equinos.
Author: Líquida Equinos
Template: blocksy
Version: 1.1.7
Text Domain: liquida-equinos
*/

/*
 * Cabeçalho persistente em todas as páginas.
 * `#header` cobre o cabeçalho nativo do Blocksy e `.leq-header` cobre a
 * navegação personalizada da Home.
 */
#header {
	position: sticky;
	top: 0;
	z-index: 9999;
}

.leq-header {
	--coal: #151513;
	--champ: #f4e7cc;
	--sand: #e8d5ad;
	position: fixed;
	top: 0;
	left: 0 !important;
	right: 0 !important;
	width: 100vw !important;
	max-width: 100vw !important;
	margin: 0 !important;
	box-sizing: border-box;
	background: #151513 !important;
	isolation: isolate;
	z-index: 9999;
	color: var(--champ) !important;
}

.leq-header .leq-logo,
.leq-header .leq-nav a,
.leq-header .leq-tools a,
.leq-header .leq-mobile-panel a {
	color: var(--champ) !important;
}

.leq-header .leq-nav a:hover,
.leq-header .leq-nav a:focus-visible,
.leq-header .leq-tools a:hover,
.leq-header .leq-tools a:focus-visible {
	color: var(--sand) !important;
}

.leq-header .leq-mobile-menu summary,
.leq-header .leq-bag {
	border-color: rgba(244, 231, 204, 0.45) !important;
}

.leq-header .leq-mobile-menu summary span {
	background: var(--champ) !important;
}

/* Reserva do futuro canal automatizado, ainda sem número ou envio de dados. */
.leq-whatsapp-placeholder {
	position: fixed;
	right: clamp(18px, 2.5vw, 34px);
	bottom: clamp(18px, 2.5vw, 34px);
	z-index: 9998;
	display: grid;
	grid-template-columns: 30px auto;
	grid-template-rows: auto auto;
	column-gap: 10px;
	min-width: 154px;
	padding: 12px 18px 12px 14px;
	border: 1px solid rgba(244, 231, 204, 0.32);
	border-radius: 999px;
	background: #244f3a;
	box-shadow: 0 12px 30px rgba(21, 21, 19, 0.22);
	color: #fff;
	opacity: 0.92;
	cursor: default;
	font: inherit;
	text-align: left;
}

.leq-whatsapp-placeholder:disabled {
	color: #fff;
	opacity: 0.92;
}

.leq-whatsapp-placeholder svg {
	grid-row: 1 / 3;
	width: 30px;
	height: 30px;
	align-self: center;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.65;
}

.leq-whatsapp-placeholder span {
	font-size: 14px;
	font-weight: 800;
	line-height: 1.1;
}

.leq-whatsapp-placeholder small {
	margin-top: 3px;
	color: rgba(255, 255, 255, 0.74);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.11em;
	line-height: 1;
	text-transform: uppercase;
}

@media screen and (max-width: 600px) {
	body.home .leq-hero .leq-copy > h1,
	body.home .leq-hero .leq-copy > h1 + p {
		/* Eleva o bloco editorial e cria uma pausa visual antes dos CTAs. */
		transform: translateY(-44px);
	}

	body.home .leq-hero .leq-copy {
		/* Mantém os dois CTAs acima da área ocupada pelo botão flutuante. */
		padding-bottom: max(152px, calc(132px + env(safe-area-inset-bottom))) !important;
	}

	.leq-whatsapp-placeholder {
		right: 14px;
		bottom: 14px;
		grid-template-columns: 26px auto;
		min-width: 0;
		padding: 11px 15px 11px 12px;
	}

	.leq-whatsapp-placeholder svg {
		width: 26px;
		height: 26px;
	}
}

/* Repõe o espaço removido do fluxo pelo header fixo da Home. */
body.home .leq-shell {
	padding-top: 86px;
}

/* Cards de objetivos como entradas claras do funil de descoberta. */
body.home #objetivos .leq-objective-link {
	display: block;
	min-width: 0;
	color: inherit;
	text-decoration: none;
}

body.home #objetivos .leq-objective-link .leq-objective-card {
	height: 100%;
	cursor: pointer;
	transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

body.home #objetivos .leq-objective-link:hover .leq-objective-card,
body.home #objetivos .leq-objective-link:focus-visible .leq-objective-card {
	border-color: rgba(232, 213, 173, 0.72);
	box-shadow: 0 18px 38px rgba(21, 21, 19, 0.18);
	transform: translateY(-3px);
}

body.home #objetivos .leq-objective-link:focus-visible {
	border-radius: 18px;
	outline: 3px solid #e8d5ad;
	outline-offset: 4px;
}

body.home #objetivos .leq-objective-cta {
	display: block;
	margin-top: 18px;
	color: #e8d5ad;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

/* CTAs principais com presença compatível com sua função de conversão. */
body.home .leq-hero .leq-btn {
	min-height: 58px;
	padding-right: 30px !important;
	padding-left: 30px !important;
	font-size: 17px !important;
	font-weight: 850 !important;
	letter-spacing: 0.005em;
	line-height: 1.25;
	transition: transform 180ms ease, box-shadow 180ms ease, background-color 180ms ease;
}

body.home .leq-hero .leq-btn-primary {
	box-shadow: 0 12px 28px rgba(232, 213, 173, 0.22);
}

body.home .leq-hero .leq-btn-secondary {
	border-width: 2px;
	background: rgba(21, 21, 19, 0.56);
}

body.home .leq-hero .leq-btn:hover,
body.home .leq-hero .leq-btn:focus-visible {
	box-shadow: 0 14px 30px rgba(21, 21, 19, 0.28);
	transform: translateY(-2px);
}

@media screen and (max-width: 600px) {
	body.home .leq-hero .leq-btn {
		min-height: 56px;
		padding-right: 18px !important;
		padding-left: 18px !important;
		font-size: 16px !important;
		letter-spacing: 0;
		white-space: normal;
	}
}

@media screen and (max-width: 900px) {
	body.home .leq-shell {
		padding-top: 72px;
	}
}

/* Escala e alinhamento do header em desktop. */
@media screen and (min-width: 901px) {
	.leq-header {
		padding-right: clamp(32px, 4vw, 64px) !important;
		padding-left: clamp(32px, 4vw, 64px) !important;
	}

	.leq-header .leq-logo {
		font-size: 25px !important;
	}

	.leq-header .leq-nav a,
	.leq-header .leq-tools a {
		font-size: 17px !important;
	}

	.leq-header .leq-bag svg {
		width: 23px !important;
		height: 23px !important;
	}
}

/* --------------------------------------------------------------------------
 * Sistema editorial das páginas internas
 * ----------------------------------------------------------------------- */
body:not(.home) {
	--leq-coal: #151513;
	--leq-coal-2: #24211c;
	--leq-cream: #f4e7cc;
	--leq-sand: #e8d5ad;
	--leq-paper: #f5f2eb;
	--leq-ink: #26231f;
	--leq-muted: #6b655d;
	--leq-section-accent: #c8a96b;
	background: var(--leq-paper);
	color: var(--leq-ink);
}

/* Cabeçalho institucional das páginas internas. */
body:not(.home) #header {
	min-height: 92px;
	border-bottom: 1px solid rgba(244, 231, 204, 0.16);
	background: var(--leq-coal) !important;
	box-shadow: 0 10px 28px rgba(21, 21, 19, 0.12);
}

body:not(.home) #headerimg {
	display: flex;
	width: min(1240px, calc(100% - 64px));
	min-height: 92px;
	margin: 0 auto;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
}

body:not(.home) #headerimg h1 {
	margin: 0;
	font: 600 25px/1 Georgia, serif;
	letter-spacing: 0.12em;
}

body:not(.home) #headerimg h1 a {
	color: var(--leq-cream) !important;
	text-decoration: none;
}

body:not(.home) #headerimg .description {
	color: rgba(244, 231, 204, 0.72);
	font-size: 14px;
	line-height: 1.4;
	text-align: right;
}

/* Identidade comum dos títulos de seção. */
body:not(.home) .hero-section {
	position: relative;
	overflow: hidden;
	border-bottom: 1px solid rgba(200, 169, 107, 0.28);
	background:
		radial-gradient(circle at 86% 30%, color-mix(in srgb, var(--leq-section-accent) 26%, transparent), transparent 28%),
		linear-gradient(118deg, var(--leq-coal) 0%, var(--leq-coal-2) 72%, #30291f 100%) !important;
	color: var(--leq-cream);
}

body:not(.home) .hero-section::after {
	position: absolute;
	top: 50%;
	right: clamp(24px, 7vw, 110px);
	width: clamp(90px, 13vw, 180px);
	aspect-ratio: 1;
	border: 1px solid color-mix(in srgb, var(--leq-section-accent) 48%, transparent);
	border-radius: 50%;
	box-shadow:
		0 0 0 18px color-mix(in srgb, var(--leq-section-accent) 7%, transparent),
		0 0 0 42px color-mix(in srgb, var(--leq-section-accent) 4%, transparent);
	content: "";
	transform: translateY(-50%);
}

body:not(.home) .hero-section .entry-header {
	position: relative;
	z-index: 2;
	padding-top: clamp(54px, 6vw, 82px);
	padding-bottom: clamp(54px, 6vw, 82px);
}

body:not(.home) .hero-section .entry-header::before {
	display: block;
	margin-bottom: 14px;
	color: var(--leq-section-accent);
	content: "LÍQUIDA EQUINOS";
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

body:not(.home) .hero-section .page-title,
body:not(.home) .hero-section .entry-title,
body:not(.home) .hero-section h1,
body:not(.home) .hero-section [class*="title"] {
	color: var(--leq-cream) !important;
}

body:not(.home) .hero-section .page-title,
body:not(.home) .hero-section .entry-title {
	font-family: Georgia, serif;
	font-size: clamp(38px, 4.2vw, 60px);
	font-weight: 500;
	line-height: 1.04;
	letter-spacing: -0.02em;
}

body:not(.home) .hero-section a,
body:not(.home) .hero-section .ct-breadcrumbs,
body:not(.home) .hero-section .ct-breadcrumbs span {
	color: rgba(244, 231, 204, 0.78) !important;
}

/* Identidades por área, mantendo a mesma arquitetura visual. */
body.woocommerce-shop,
body.post-type-archive-product {
	--leq-section-accent: #c8a96b;
}

body.single-product {
	--leq-section-accent: #d2b57a;
}

body.tax-product_cat {
	--leq-section-accent: #9eb18b;
}

body.page-id-59 {
	--leq-section-accent: #91aa9a;
}

body.page-id-51 {
	--leq-section-accent: #d5b77e;
}

body.page-id-53 {
	--leq-section-accent: #9fb5c4;
}

body.woocommerce-cart {
	--leq-section-accent: #d0ad72;
}

body.woocommerce-checkout {
	--leq-section-accent: #a9b99a;
}

body.woocommerce-account {
	--leq-section-accent: #9caec0;
}

body.woocommerce-shop .hero-section .entry-header::before,
body.post-type-archive-product .hero-section .entry-header::before {
	content: "CATÁLOGO OFICIAL";
}

body.single-product .hero-section .entry-header::before {
	content: "DETALHES DO PRODUTO";
}

body.tax-product_cat .hero-section .entry-header::before {
	content: "PRODUTOS POR OBJETIVO";
}

body.page-id-59 .hero-section .entry-header::before {
	content: "CONTEÚDO E CUIDADO";
}

body.page-id-51 .hero-section .entry-header::before {
	content: "NOSSA ESSÊNCIA";
}

body.page-id-53 .hero-section .entry-header::before {
	content: "SUPORTE AO CLIENTE";
}

body.woocommerce-cart .hero-section .entry-header::before {
	content: "SUA SELEÇÃO";
}

body.woocommerce-checkout .hero-section .entry-header::before {
	content: "COMPRA SEGURA";
}

body.woocommerce-account .hero-section .entry-header::before {
	content: "ÁREA DO CLIENTE";
}

/* Acabamento dos conteúdos e componentes comerciais. */
body:not(.home) .entry-content h2,
body:not(.home) .entry-content h3,
body:not(.home) .woocommerce h2,
body:not(.home) .woocommerce h3 {
	color: var(--leq-ink);
}

body:not(.home) .entry-content > h2 {
	padding-left: 18px;
	border-left: 3px solid var(--leq-section-accent);
}

body:not(.home) .products .product,
body:not(.home) .woocommerce-cart-form,
body:not(.home) .cart_totals,
body:not(.home) .woocommerce-checkout-review-order,
body:not(.home) .woocommerce-MyAccount-navigation,
body:not(.home) .woocommerce-MyAccount-content {
	border: 1px solid #e2dbcf;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 12px 30px rgba(33, 31, 27, 0.07);
}

body:not(.home) .products .product {
	display: flex;
	overflow: hidden;
	flex-direction: column;
	padding-bottom: 20px;
}

body:not(.home) .products .product > .woocommerce-loop-product__title,
body:not(.home) .products .product > .price,
body:not(.home) .products .product > .entry-meta,
body:not(.home) .products .product > .ct-woo-card-actions {
	width: auto;
	margin-right: 20px !important;
	margin-left: 20px !important;
}

body:not(.home) .products .product > .woocommerce-loop-product__title {
	display: flex;
	min-height: 2.7em;
	margin-top: 20px !important;
	margin-bottom: 8px !important;
	align-items: flex-end;
	line-height: 1.3;
}

body:not(.home) .products .product > .price {
	display: block;
	min-height: 1.5em;
	margin-bottom: 8px !important;
}

body:not(.home) .products .product > .entry-meta {
	min-height: 1.5em;
	margin-bottom: 0 !important;
}

body:not(.home) .products .product > .ct-woo-card-actions {
	margin-top: auto !important;
	padding-top: 14px;
}

body:not(.home) .products .product > .ct-woo-card-actions .button {
	min-height: 42px;
	padding-right: 18px;
	padding-left: 18px;
	white-space: normal;
	text-align: center;
}

body:not(.home) .button,
body:not(.home) button[type="submit"],
body:not(.home) input[type="submit"] {
	border-radius: 999px !important;
}

@media screen and (max-width: 782px) {
	body:not(.home) .products .product > .woocommerce-loop-product__title,
	body:not(.home) .products .product > .price,
	body:not(.home) .products .product > .entry-meta,
	body:not(.home) .products .product > .ct-woo-card-actions {
		margin-right: 16px !important;
		margin-left: 16px !important;
	}

	body:not(.home) #header,
	body:not(.home) #headerimg {
		min-height: 78px;
	}

	body:not(.home) #headerimg {
		width: calc(100% - 32px);
		align-items: flex-start;
		justify-content: center;
		flex-direction: column;
		gap: 6px;
	}

	body:not(.home) #headerimg h1 {
		font-size: 20px;
	}

	body:not(.home) #headerimg .description {
		font-size: 11px;
		text-align: left;
	}

	body:not(.home) .hero-section::after {
		right: -36px;
		opacity: 0.72;
	}

	body:not(.home) .hero-section .entry-header {
		padding-top: 42px;
		padding-bottom: 42px;
	}
}

/* Mantém o cabeçalho abaixo da barra administrativa para usuários conectados. */
body.admin-bar #header,
body.admin-bar .leq-header {
	top: 32px;
}

@media screen and (max-width: 782px) {
	body.admin-bar #header,
	body.admin-bar .leq-header {
		top: 46px;
	}
}
