:root {
	--primary: #123884;
	--primary-hover: #0f3070;
	--primary-active: #0c275c;
	--secondary: #EC3237;
	--secondary-hover: #d1262b;
	--secondary-active: #b52025;
	--accent: #FFB600;
	--white: #FFFFFF;

	/* ações de compra acompanham o vermelho da identidade */
	--btn-primary: var(--primary);
	--btn-primary-hover: var(--primary-hover);
	--btn-primary-active: var(--primary-active);
	--btn-secondary: var(--secondary);
	--btn-secondary-hover: var(--secondary-hover);
	--btn-secondary-active: var(--secondary-active);
	--btn-product-thumb-purchase: var(--secondary);
	--btn-product-thumb-purchase-hover: var(--secondary-hover);
	--btn-product-thumb-purchase-active: var(--secondary-active);
	--btn-product-thumb-purchase-color: var(--white);
	--btn-add-cart: var(--secondary);
	--btn-add-cart-hover: var(--secondary-hover);
	--btn-add-cart-active: var(--secondary-active);
	--btn-add-cart-color: var(--white);

	/* topbar: amarelo cansa em faixa contínua. Neutra + amarelo só em acento. */
	--header-topbar-background-color: #f4f4f6;
	--header-topbar-text-color: #1b1b1b;
	--header-topbar-icon-color: var(--primary);

	/* header azul, texto branco */
	--header-background-color: var(--primary);
	--header-color-text: var(--white);
	--header-svg-color: var(--white);
	--header-border-color: rgba(255, 255, 255, .08);

	--header-search-background-color: var(--white);
	--header-search-background-color-focus: #f3f3f3;
	--header-search-color: #151414;

	--header-menu-background: var(--primary);
	--header-menu-color-text: var(--white);
	--header-menu-color-text-hover: var(--accent);
	--header-menu-icon-color: var(--white);

	/* respiro: SAAS usa gutter 8px e seções 40px — apertado demais */
	--products-gutter-x: 14px;
	--products-gutter-y: 18px;
	--spacing-sections-home: 56px;
}

/* ---------- Header ---------- */
header .header-info-label,
header .header-info-text { color: var(--white); }

.tracking svg, .tracking svg path,
.header-contact svg, .header-contact svg path,
#cart-top svg, #cart-top svg path { fill: var(--white); }

.header-bottom { border-top-color: rgba(255, 255, 255, .08); }

/* destaque amarelo só em CTA pontual da topbar (ex: "5% OFF no PIX") */
.header-top .highlight,
.header-top .pix-offer {
	background: var(--accent);
	color: var(--primary);
	padding: 2px 8px;
	border-radius: 3px;
	font-weight: 600;
}

/* ---------- Tipografia de seções da home ---------- */
.home .module-title,
.home h2,
.home .section-title {
	font-weight: 700;
	letter-spacing: -0.015em;
	font-size: clamp(20px, 2vw, 26px);
	color: var(--primary);
	position: relative;
	padding-bottom: 10px;
	margin-bottom: 22px;
}
.home .module-title::after,
.home h2::after,
.home .section-title::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 44px;
	height: 3px;
	background: var(--accent);
	border-radius: 2px;
}

/* ---------- Cards de produto ---------- */
/* sobrescreve o min-height do tema sem !important */
.product-thumb .product-thumb-title,
.product-layout .product-thumb-title { min-height: 0; }

/* nome do produto em 2 linhas (o nowrap antigo cortava feio nomes de bateria) */
.product-thumb-title {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: normal;
	line-height: 1.3;
	font-weight: 500;
	min-height: calc(1.3em * 2);
}

/* card respira no hover */
.product-thumb,
.product-layout .product-thumb {
	transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
	border: 1px solid #ececef;
	border-radius: 8px;
	background: var(--white);
}
.product-thumb:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 20px -10px rgba(18, 56, 132, .18);
	border-color: rgba(18, 56, 132, .25);
}

/* preço: PIX em destaque, "de" mais discreto */
.product-thumb .price-old,
.product-thumb .price-strikethrough { color: #8a8a8a; font-size: .85em; }
.product-thumb .price-new,
.product-thumb .price-pix {
	color: var(--primary);
	font-weight: 700;
	font-size: 1.05em;
}

/* ---------- Botões dos cards ---------- */
/* "Ver produto" em contorno azul; ações de compra em vermelho */
.product-thumb .btn-product-thumb,
.product-thumb .btn-view {
	background: transparent;
	color: var(--primary);
	border: 1px solid var(--primary);
	transition: background .15s ease, color .15s ease;
}
.product-thumb .btn-product-thumb:hover,
.product-thumb .btn-view:hover {
	background: var(--primary);
	color: var(--white);
}

.product-thumb .btn-product-thumb:active,
.product-thumb .btn-view:active {
	background: var(--primary-active);
	border-color: var(--primary-active);
	color: var(--white);
}

/* botão Comprar com sombra suave pra firmar como CTA principal */
.product-thumb .btn-cart,
.product-thumb .btn-add-cart {
	background: var(--secondary);
	border-color: var(--secondary);
	color: var(--white);
	box-shadow: 0 2px 0 rgba(0,0,0,.06);
	font-weight: 600;
	letter-spacing: .01em;
}

.product-thumb .btn-cart:hover,
.product-thumb .btn-add-cart:hover {
	background: var(--secondary-hover);
	border-color: var(--secondary-hover);
	color: var(--white);
}

.product-thumb .btn-cart:active,
.product-thumb .btn-add-cart:active {
	background: var(--secondary-active);
	border-color: var(--secondary-active);
	color: var(--white);
}

/* ---------- Estado focus acessível ---------- */
a:focus-visible,
button:focus-visible,
.btn:focus-visible {
	outline: 2px solid var(--accent);
	outline-offset: 2px;
	box-shadow: 0 0 0 4px var(--primary);
}

/* ---------- Footer ---------- */
footer .footer-title { color: var(--primary); font-weight: 700; letter-spacing: .01em; }
footer a { transition: color .15s ease; }
footer a:hover { color: var(--secondary-hover); }

.product-thumb-title {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
} 
