/* =========================================================
   PR Manutencoes - Redesign B Foundation Layer
   ---------------------------------------------------------
   Approved direction: Variant B "Institucional Tecnico Claro"
   Source prototype: docs/design-concepts (branch feat/catalog-redesign-b)
   Scope of this file (T1.1):
     - design tokens prefixed --pr-*
     - light base typography + a11y helpers
     - .pr-container utility
     - .pr-eyebrow, .pr-btn shared primitives
   Out of scope (later commits T1.6+):
     - topbar, header, hero, catalog, detail, footer components
   Conventions:
     - tokens scoped under --pr-* so they never collide with Divi/DCT
       --color-1 and --color-2 (set in functions.php via dct_footer_opt)
     - selectors prefixed .pr-* so they never override Divi base modules
     - avoid !important except scoped Divi/Woo fallback overrides
     - no Google Fonts, no CDN; system-font fallbacks only
   ========================================================= */

/* ---------- Tokens ---------- */
:root {
	/* Paleta */
	--pr-paper: #f7f7f4;
	--pr-paper-2: #ffffff;
	--pr-paper-3: #f0f0eb;
	--pr-navy: #1c2b4a;
	--pr-navy-2: #2a3a5e;
	--pr-graphite: #2b2f36;
	--pr-ink: #0f1419;
	--pr-muted: #5a6472;
	--pr-muted-2: #8a93a0;
	--pr-rule: #d9dbe0;
	--pr-rule-2: #e7e8ec;
	--pr-red: #c8102e;
	--pr-red-dark: #a30d24;
	--pr-ok: #0d7a3a;

	/* Tipografia (system stack, no external fonts) */
	--pr-font-sans:
		-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue',
		Arial, sans-serif;
	--pr-font-mono:
		ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono',
		monospace;

	/* Escala tipografica */
	--pr-fs-xs: 11px;
	--pr-fs-sm: 12.5px;
	--pr-fs-base: 14.5px;
	--pr-fs-md: 16px;
	--pr-fs-lg: 18px;
	--pr-fs-xl: 22px;
	--pr-fs-2xl: 30px;
	--pr-fs-3xl: 42px;

	/* Espacamento */
	--pr-sp-1: 4px;
	--pr-sp-2: 8px;
	--pr-sp-3: 12px;
	--pr-sp-4: 16px;
	--pr-sp-5: 24px;
	--pr-sp-6: 32px;
	--pr-sp-7: 48px;
	--pr-sp-8: 64px;
	--pr-sp-9: 96px;

	/* Layout */
	--pr-container: 1240px;
	--pr-radius: 2px;
	--pr-radius-md: 4px;

	/* Bordas e sombras */
	--pr-border: 1px solid var(--pr-rule);
	--pr-border-strong: 1px solid var(--pr-navy);
	--pr-shadow-sm: 0 1px 0 rgba(28, 43, 74, 0.04);
	--pr-shadow: 0 1px 2px rgba(28, 43, 74, 0.06), 0 0 0 1px var(--pr-rule);
}

/* ---------- A11y helpers (PR scope only) ---------- */
.pr-skip-link {
	position: absolute;
	left: -9999px;
	top: 0;
	background: var(--pr-navy);
	color: #fff;
	padding: var(--pr-sp-3) var(--pr-sp-4);
	z-index: 100;
	font-weight: 600;
	font-family: var(--pr-font-sans);
}
.pr-skip-link:focus {
	left: var(--pr-sp-3);
	top: var(--pr-sp-3);
}

/* Focus-visible only inside the PR layer wrapper.
   Divi/DCT may use its own focus styles globally; we scope ours to .pr-*.  */
.pr-btn:focus-visible,
.pr-card:focus-visible,
.pr-skip-link:focus-visible {
	outline: 2px solid var(--pr-navy);
	outline-offset: 2px;
}
.pr-btn--primary:focus-visible {
	outline-color: var(--pr-red);
}

/* ---------- Container ---------- */
.pr-container {
	box-sizing: border-box;
	width: 100%;
	max-width: var(--pr-container);
	margin-inline: auto;
	padding-inline: var(--pr-sp-5);
}

.pr-container *,
.pr-single,
.pr-single *,
.pr-catalog-page,
.pr-catalog-page * {
	box-sizing: border-box;
}
@media (min-width: 768px) {
	.pr-container {
		padding-inline: var(--pr-sp-6);
	}
}

/* ---------- Eyebrow ---------- */
.pr-eyebrow {
	display: inline-block;
	font-family: var(--pr-font-sans);
	font-size: var(--pr-fs-xs);
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--pr-muted);
	border-left: 2px solid var(--pr-red);
	padding-left: var(--pr-sp-2);
}

/* ---------- Button primitives ---------- */
.pr-btn {
	--pr-btn-bg: transparent;
	--pr-btn-fg: var(--pr-navy);
	--pr-btn-bd: var(--pr-navy);
	display: inline-flex;
	align-items: center;
	gap: var(--pr-sp-2);
	padding: 10px 16px;
	font-family: var(--pr-font-sans);
	font-size: var(--pr-fs-sm);
	font-weight: 600;
	letter-spacing: 0.02em;
	text-decoration: none;
	background: var(--pr-btn-bg);
	color: var(--pr-btn-fg);
	border: 1px solid var(--pr-btn-bd);
	border-radius: var(--pr-radius);
	transition:
		background-color 0.15s ease,
		color 0.15s ease,
		border-color 0.15s ease;
	white-space: nowrap;
	cursor: pointer;
}
.pr-btn--primary {
	--pr-btn-bg: var(--pr-red);
	--pr-btn-fg: #fff;
	--pr-btn-bd: var(--pr-red);
}
.pr-btn--primary:hover {
	--pr-btn-bg: var(--pr-red-dark);
	--pr-btn-bd: var(--pr-red-dark);
	color: #fff;
}
.pr-btn--ghost {
	--pr-btn-bg: var(--pr-paper-2);
	--pr-btn-fg: var(--pr-navy);
	--pr-btn-bd: var(--pr-rule);
}
.pr-btn--ghost:hover {
	--pr-btn-bg: var(--pr-paper-3);
	--pr-btn-bd: var(--pr-navy);
	color: var(--pr-navy);
}
.pr-btn--wa {
	--pr-btn-bg: #25d366;
	--pr-btn-fg: #0b1a10;
	--pr-btn-bd: #1fb957;
}
.pr-btn--wa:hover {
	--pr-btn-bg: #1fb957;
	--pr-btn-bd: #169c47;
	color: #0b1a10;
}
.pr-btn--lg {
	padding: 14px 22px;
	font-size: var(--pr-fs-base);
}
.pr-btn--sm {
	padding: 7px 12px;
	font-size: var(--pr-fs-xs);
}

/* ---------- Topbar ---------- */
.topbar {
	background: var(--pr-navy);
	color: #d6dbe6;
	font-size: var(--pr-fs-xs);
	border-bottom: 1px solid #0f1730;
}

.topbar__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--pr-sp-4);
	min-height: 36px;
	padding-block: 6px;
}

.topbar ul {
	display: flex;
	gap: var(--pr-sp-5);
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style: none;
}

.topbar__meta li {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #b4bcce;
	letter-spacing: 0.04em;
}

.topbar__actions {
	gap: var(--pr-sp-4);
}

.topbar__link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #fff;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-decoration: none;
}

.topbar__link:hover {
	color: #fff;
	opacity: 0.85;
}

.topbar__link--wa {
	color: #25d366;
}

.topbar__lang {
	color: #b4bcce;
	letter-spacing: 0.1em;
	font-weight: 600;
}

/* ---------- Header ---------- */
.header {
	background: var(--pr-paper-2);
	border-bottom: 1px solid var(--pr-rule);
	position: sticky;
	top: 0;
	z-index: 50;
	overflow: visible;
}

.admin-bar .header {
	top: 32px;
}

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

.header__inner {
	display: grid;
	grid-template-columns: minmax(190px, 270px) minmax(0, 1fr) auto;
	align-items: center;
	gap: clamp(var(--pr-sp-4), 2vw, var(--pr-sp-6));
	min-height: 76px;
	padding-block: var(--pr-sp-3);
}

.logo {
	display: inline-flex;
	align-items: center;
	gap: var(--pr-sp-3);
	color: var(--pr-navy);
	text-decoration: none;
	min-width: 0;
}

.logo__img {
	display: block;
	width: clamp(190px, 20vw, 270px) !important;
	height: auto !important;
	max-width: 100%;
	object-fit: contain;
}

.logo--footer {
	display: inline-flex;
	padding: 6px;
	background: #fff;
	border-radius: var(--pr-radius-md);
}

.logo--footer .logo__img {
	width: clamp(170px, 18vw, 220px) !important;
	height: auto !important;
}

.logo__mark {
	display: inline-grid;
	place-items: center;
	width: 42px;
	height: 42px;
	background: var(--pr-navy);
	color: #fff;
	font-weight: 800;
	font-size: 15px;
	letter-spacing: 0.04em;
	border-radius: var(--pr-radius);
	position: relative;
}

.logo__mark::after {
	content: '';
	position: absolute;
	right: -3px;
	bottom: -3px;
	width: 10px;
	height: 10px;
	background: var(--pr-red);
}

.logo__word {
	display: flex;
	flex-direction: column;
	line-height: 1.1;
}

.logo__name {
	font-weight: 700;
	font-size: var(--pr-fs-md);
	color: var(--pr-navy);
	letter-spacing: -0.01em;
}

.logo__tag {
	font-size: 10.5px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--pr-muted);
	font-weight: 600;
	margin-top: 2px;
}

.nav__list {
	display: flex;
	gap: clamp(var(--pr-sp-3), 1.4vw, var(--pr-sp-5));
	justify-content: center;
	flex-wrap: nowrap;
	margin: 0;
	padding: 0;
	list-style: none;
}

.nav__list a {
	display: inline-block;
	padding: var(--pr-sp-2) 0;
	font-size: var(--pr-fs-sm);
	font-weight: 500;
	color: var(--pr-graphite);
	letter-spacing: 0.02em;
	border-bottom: 2px solid transparent;
	text-decoration: none;
	white-space: nowrap;
}

.nav__list a:hover {
	color: var(--pr-navy);
	border-bottom-color: var(--pr-red);
}

/* ---------- Hero ---------- */
.hero {
	background: linear-gradient(
		180deg,
		var(--pr-paper-2) 0%,
		var(--pr-paper) 100%
	);
	border-bottom: 1px solid var(--pr-rule);
	padding-block: var(--pr-sp-9) var(--pr-sp-8);
	position: relative;
	overflow: hidden;
}

.hero::before {
	content: '';
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(var(--pr-rule-2) 1px, transparent 1px),
		linear-gradient(90deg, var(--pr-rule-2) 1px, transparent 1px);
	background-size: 80px 80px;
	opacity: 0.35;
	pointer-events: none;
	mask-image: linear-gradient(180deg, transparent, #000 60%, transparent);
	-webkit-mask-image: linear-gradient(
		180deg,
		transparent,
		#000 60%,
		transparent
	);
}

.hero__inner {
	display: grid;
	grid-template-columns: 1.55fr 1fr;
	gap: var(--pr-sp-8);
	align-items: end;
	position: relative;
}

.hero__body {
	max-width: 720px;
	min-width: 0;
}

.hero h1 {
	margin: 0 0 var(--pr-sp-5);
	font-size: clamp(28px, 4vw + 1rem, var(--pr-fs-3xl));
	line-height: 1.08;
	letter-spacing: -0.02em;
	color: var(--pr-navy);
	font-weight: 600;
	overflow-wrap: anywhere;
}

.hero__lede {
	max-width: 60ch;
	margin-bottom: var(--pr-sp-6);
	font-size: var(--pr-fs-md);
	line-height: 1.55;
	color: var(--pr-graphite);
	overflow-wrap: anywhere;
}

.hero__cta {
	display: flex;
	gap: var(--pr-sp-3);
	flex-wrap: wrap;
	margin-bottom: var(--pr-sp-7);
}

.hero__stats {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: 0;
	margin: 0;
	padding-top: var(--pr-sp-5);
	border-top: 1px solid var(--pr-rule);
}

.hero__stats > div {
	min-width: 0;
	padding-right: var(--pr-sp-4);
	padding-left: var(--pr-sp-4);
	border-left: 1px solid var(--pr-rule);
}

.hero__stats > div:first-child {
	padding-left: 0;
	border-left: none;
}

.hero__stats dt {
	margin-bottom: 4px;
	font-size: 10.5px;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--pr-muted);
}

.hero__stats dd {
	margin: 0;
	font-size: var(--pr-fs-xl);
	font-weight: 700;
	letter-spacing: -0.02em;
	color: var(--pr-navy);
	font-feature-settings:
		'tnum' 1,
		'lnum' 1;
	font-variant-numeric: tabular-nums;
}

.hero__panel {
	background: var(--pr-paper-2);
	border: 1px solid var(--pr-rule);
	border-top: 3px solid var(--pr-navy);
	padding: var(--pr-sp-5);
	position: relative;
}

.panel__title {
	margin: 0 0 var(--pr-sp-4);
	padding-bottom: var(--pr-sp-3);
	border-bottom: 1px solid var(--pr-rule);
	font-size: 10.5px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--pr-muted);
}

.panel__list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.panel__list li {
	display: grid;
	grid-template-columns: 90px 1fr;
	align-items: center;
	gap: var(--pr-sp-3);
	padding: var(--pr-sp-3) 0;
	border-bottom: 1px solid var(--pr-rule-2);
	font-size: var(--pr-fs-sm);
	color: var(--pr-ink);
}

.panel__list li:last-child {
	border-bottom: none;
}

.panel__ref {
	display: inline-block;
	padding: 3px 6px;
	background: var(--pr-paper-3);
	color: var(--pr-navy);
	font-family: var(--pr-font-mono);
	font-size: var(--pr-fs-xs);
	letter-spacing: 0.04em;
	font-feature-settings:
		'tnum' 1,
		'lnum' 1;
	font-variant-numeric: tabular-nums;
}

/* ---------- Credentials strip ---------- */
.strip {
	background: var(--pr-paper-2);
	border-top: 1px solid var(--pr-rule);
	border-bottom: 1px solid var(--pr-rule);
	padding-block: var(--pr-sp-5);
}

.strip__inner {
	display: flex;
	align-items: center;
	gap: var(--pr-sp-5);
	flex-wrap: wrap;
}

.strip__label {
	padding-right: var(--pr-sp-4);
	border-right: 1px solid var(--pr-rule);
	font-size: 10.5px;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--pr-muted);
}

.strip__badges {
	display: flex;
	gap: var(--pr-sp-3);
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style: none;
}

.badge {
	display: inline-flex;
	align-items: center;
	padding: 5px 10px;
	background: var(--pr-paper-2);
	color: var(--pr-navy);
	border: 1px solid var(--pr-rule);
	border-radius: var(--pr-radius);
	font-size: var(--pr-fs-xs);
	font-weight: 600;
	letter-spacing: 0.06em;
	font-feature-settings: 'tnum' 1;
}

@media (max-width: 600px) {
	.strip__label {
		padding-right: 0;
		border-right: none;
		padding-bottom: var(--pr-sp-2);
		border-bottom: 1px solid var(--pr-rule);
		width: 100%;
	}
	.strip__inner {
		gap: var(--pr-sp-3);
	}
}

/* Numerals tabulares para refs, precos, specs */
.pr-num,
.pr-price {
	font-feature-settings:
		'tnum' 1,
		'lnum' 1;
	font-variant-numeric: tabular-nums;
	font-family: var(--pr-font-mono);
}

/* ---------- Footer ---------- */
.footer {
	background: var(--pr-navy);
	color: #c5cbd9;
	padding-top: var(--pr-sp-8);
	margin-top: 0;
}

.footer .logo {
	color: #fff;
	text-decoration: none;
}

.footer__grid {
	display: grid;
	grid-template-columns: 1.5fr repeat(3, 1fr);
	gap: var(--pr-sp-6);
	padding-bottom: var(--pr-sp-7);
}

.footer__col h3 {
	margin: 0 0 var(--pr-sp-4);
	padding-bottom: var(--pr-sp-3);
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
	font-size: var(--pr-fs-xs);
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: #fff;
}

.footer__brand .logo__mark {
	background: #fff;
	color: var(--pr-navy);
}

.footer__brand .logo__name {
	color: #fff;
}

.footer__brand .logo__tag {
	color: #a5acbd;
}

.footer__brand p {
	margin-top: var(--pr-sp-4);
	max-width: 36ch;
	font-size: var(--pr-fs-sm);
	line-height: 1.6;
	color: #a5acbd;
}

.footer__list {
	display: flex;
	flex-direction: column;
	gap: var(--pr-sp-3);
	margin: 0;
	padding: 0;
	list-style: none;
}

.footer__list li {
	display: flex;
	flex-direction: column;
	gap: 2px;
	font-size: var(--pr-fs-sm);
}

.footer__list strong {
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #8089a0;
}

.footer__list a,
.footer__list span,
.footer address {
	color: #e2e6ee;
}

.footer__list a:hover,
.footer .logo:hover {
	color: #fff;
}

.footer__list--links li {
	gap: 0;
}

.footer__list--links a {
	padding: 4px 0;
	border-bottom: 1px solid transparent;
}

.footer__list--links a:hover {
	border-bottom-color: var(--pr-red);
}

.footer address {
	font-style: normal;
	font-size: var(--pr-fs-sm);
	line-height: 1.6;
}

.footer__bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	padding-block: var(--pr-sp-4);
}

.footer__bottom-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: var(--pr-sp-3);
	font-size: var(--pr-fs-xs);
	letter-spacing: 0.04em;
	color: #8089a0;
}

@media (max-width: 980px) {
	.footer__grid {
		grid-template-columns: 1fr 1fr;
	}

	.footer__brand {
		grid-column: 1 / -1;
	}
}

@media (max-width: 768px) {
	.topbar__meta li:nth-child(3) {
		display: none;
	}
	.topbar__lang {
		display: none;
	}
	.topbar__inner {
		gap: var(--pr-sp-3);
	}
	.footer__bottom-inner {
		flex-direction: column;
		align-items: flex-start;
	}
}

@media (max-width: 520px) {
	.footer__grid {
		grid-template-columns: 1fr;
		gap: var(--pr-sp-5);
	}

	.topbar__meta li:nth-child(2),
	.topbar__meta li:nth-child(3) {
		display: none;
	}

	.topbar__lang {
		display: none;
	}
}

@media (max-width: 1180px) {
	.header__inner {
		grid-template-columns: minmax(190px, 260px) minmax(0, 1fr);
		justify-content: space-between;
	}

	.header__cta {
		display: none;
	}

	.nav__list {
		justify-content: flex-end;
	}
}

@media (max-width: 960px) {
	.nav {
		display: none;
	}

	.logo__tag {
		display: none;
	}
}

@media (max-width: 640px) {
	.header__inner {
		grid-template-columns: 1fr;
	}

	.logo__img {
		width: min(190px, 100%) !important;
	}
}

@media (max-width: 900px) {
	.hero {
		padding-block: var(--pr-sp-8) var(--pr-sp-7);
	}

	.hero__inner {
		grid-template-columns: 1fr;
		gap: var(--pr-sp-6);
	}
}

@media (max-width: 480px) {
	.pr-container {
		padding-inline: var(--pr-sp-4);
	}
	.header__inner {
		gap: var(--pr-sp-4);
		min-height: 64px;
	}
	.hero {
		padding-block: var(--pr-sp-7) var(--pr-sp-6);
	}
	.hero__stats {
		grid-template-columns: 1fr;
		gap: var(--pr-sp-3);
	}
	.hero__stats > div {
		padding-inline: 0;
		padding-block: var(--pr-sp-3);
		border-left: none;
		border-top: 1px solid var(--pr-rule);
	}
	.hero__stats > div:first-child {
		border-top: none;
		padding-top: 0;
	}
	.hero__cta .pr-btn,
	.pr-home-catalog__cta .pr-btn {
		width: 100%;
		justify-content: center;
		white-space: normal;
		text-align: center;
	}
	.panel__list li {
		grid-template-columns: 1fr;
		gap: var(--pr-sp-1);
	}
	.pr-card__spec-row {
		grid-template-columns: 1fr;
		gap: 2px;
	}
	.pr-card__spec-row dt {
		font-size: var(--pr-fs-xs);
	}
	.hero__panel {
		padding: var(--pr-sp-4);
	}
	.pr-home-catalog {
		padding-block: var(--pr-sp-6) var(--pr-sp-7);
	}
	.pr-home-catalog__head h2 {
		font-size: var(--pr-fs-2xl);
	}
}

/* ---------- End of foundation layer ---------- */

/* =========================================================
   Homepage catalog preview
   ---------------------------------------------------------
   Bridges the approved mockup and the live WooCommerce catalog by
   rendering a front-page preview grid with the same .pr-card markup.
   ========================================================= */

.pr-home-catalog {
	padding-block: var(--pr-sp-8) var(--pr-sp-9);
	background: var(--pr-paper);
}

.pr-home-catalog__head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: var(--pr-sp-5);
	margin-bottom: var(--pr-sp-6);
}

.pr-home-catalog__head h2 {
	margin: 0;
	font-size: clamp(26px, 3vw, 34px);
	color: var(--pr-navy);
}

.pr-home-catalog__note {
	max-width: 52ch;
	margin: 0;
	color: var(--pr-muted);
	font-size: var(--pr-fs-base);
}

.pr-home-catalog__cta {
	display: flex;
	justify-content: center;
	margin-top: var(--pr-sp-6);
}

.pr-home-catalog__empty {
	padding: var(--pr-sp-6);
	border: var(--pr-border);
	background: var(--pr-paper-2);
	color: var(--pr-muted);
}

@media (max-width: 860px) {
	.pr-home-catalog__head {
		flex-direction: column;
		align-items: flex-start;
	}
}

/* =========================================================
   T1.2 - Float CTA (.pr-float-cta)
   ---------------------------------------------------------
   Fixed bottom-right contact bar with phone + WhatsApp.
   Renders on every public page via wp_footer; also available
   as the [pr_float_cta] shortcode.
   Mobile (<= 640px): collapses to two compact icon buttons.
   ========================================================= */

.pr-float-cta {
	position: fixed;
	right: var(--pr-sp-5);
	bottom: var(--pr-sp-5);
	z-index: 9000;
	display: flex;
	flex-direction: column;
	gap: var(--pr-sp-2);
	font-family: var(--pr-font-sans);
}

.pr-float-cta__link {
	display: inline-flex;
	align-items: center;
	gap: var(--pr-sp-3);
	padding: 10px 16px;
	border-radius: 999px;
	text-decoration: none;
	font-weight: 600;
	font-size: var(--pr-fs-sm);
	line-height: 1.1;
	box-shadow: 0 6px 16px rgba(15, 20, 25, 0.18);
	transition:
		transform 120ms ease,
		box-shadow 120ms ease,
		opacity 120ms ease;
	color: #fff;
}

.pr-float-cta__link:hover,
.pr-float-cta__link:focus-visible {
	transform: translateY(-1px);
	box-shadow: 0 10px 22px rgba(15, 20, 25, 0.22);
	text-decoration: none;
}

.pr-float-cta__link:focus-visible {
	outline: 2px solid var(--pr-paper-2);
	outline-offset: 2px;
}

.pr-float-cta__link--phone {
	background: var(--pr-navy);
}

.pr-float-cta__link--phone:hover {
	background: var(--pr-navy-2);
}

.pr-float-cta__link--wa {
	background: #128c4f;
}

.pr-float-cta__link--wa:hover {
	background: #169c47;
}

.pr-float-cta__icon {
	flex-shrink: 0;
}

.pr-float-cta__text {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	line-height: 1.05;
}

.pr-float-cta__small {
	font-size: var(--pr-fs-xs);
	text-transform: uppercase;
	letter-spacing: 0.08em;
	opacity: 0.85;
	font-weight: 500;
}

.pr-float-cta__number {
	font-family: var(--pr-font-mono);
	font-feature-settings:
		'tnum' 1,
		'lnum' 1;
	font-variant-numeric: tabular-nums;
	font-size: var(--pr-fs-sm);
}

@media (max-width: 640px) {
	.pr-float-cta {
		right: var(--pr-sp-4);
		bottom: var(--pr-sp-4);
		gap: var(--pr-sp-2);
	}
	.pr-float-cta__link {
		padding: 12px;
		border-radius: 999px;
	}
	.pr-float-cta__text {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.pr-float-cta__link {
		transition: none;
	}
}

/* =========================================================
   T1.3 - Hide WooCommerce cart / checkout / account UI
   ---------------------------------------------------------
   PR Manutencoes uses WooCommerce as a product CMS only; the
   site does not transact online. The matching PHP redirect
   for /cart, /checkout and /my-account lives in
   inc/pr-block-transactional.php. These selectors hide the
   bits of WC + Divi UI that would otherwise still show.
   ========================================================= */

.et_pb_menu_cart_button,
.et-cart-info,
.woocommerce-mini-cart,
.cart-contents,
.woocommerce-cart-form,
.woocommerce-checkout,
.woocommerce-account,
li.menu-item-cart,
.widget_shopping_cart,
.wc-block-mini-cart {
	display: none !important;
}

/* =========================================================
   T1.4 - WooCommerce price chip
   ---------------------------------------------------------
   Used by inc/pr-price-html.php. Numeric prices render as
   .pr-price; products without a price render as
   .pr-price--ask "Sob consulta".
   ========================================================= */

.pr-price {
	display: inline-flex;
	align-items: baseline;
	gap: 4px;
	font-family: var(--pr-font-mono);
	font-feature-settings:
		'tnum' 1,
		'lnum' 1;
	font-variant-numeric: tabular-nums;
	font-weight: 600;
	color: var(--pr-ink);
}

.pr-price--ask {
	font-family: var(--pr-font-sans);
	font-weight: 600;
	letter-spacing: 0.02em;
	padding: 2px 10px;
	border: 1px solid var(--pr-rule);
	border-radius: 999px;
	color: var(--pr-navy);
	background: var(--pr-paper-2);
}

/* =========================================================
   T1.6 - Catalog card (.pr-card) used by content-product.php
   ---------------------------------------------------------
   Loop card for the WooCommerce product loop override. Grid
   layout sits in T1.8 (.pr-catalog). Cards are read-first
   and quote-first: ref + category badge, title, up to three
   spec rows, price chip, two CTAs.
   ========================================================= */

.pr-card {
	display: flex;
	flex-direction: column;
	gap: var(--pr-sp-3);
	background: var(--pr-paper-2);
	border: 1px solid var(--pr-rule);
	border-radius: var(--pr-sp-2);
	padding: var(--pr-sp-4);
	font-family: var(--pr-font-sans);
	color: var(--pr-ink);
	transition:
		border-color 120ms ease,
		box-shadow 120ms ease,
		transform 120ms ease;
}

.pr-card:hover,
.pr-card:focus-within {
	border-color: var(--pr-navy-2);
	box-shadow: 0 8px 24px rgba(15, 20, 25, 0.08);
	transform: translateY(-1px);
}

.pr-card__media {
	display: block;
	background: var(--pr-paper-3);
	border-radius: var(--pr-sp-1);
	aspect-ratio: 4 / 3;
	overflow: hidden;
	text-decoration: none;
}

.pr-card__media img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
}

.pr-card__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: var(--pr-sp-2);
	font-size: var(--pr-fs-xs);
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--pr-muted);
}

.pr-card__ref {
	font-family: var(--pr-font-mono);
	font-feature-settings:
		'tnum' 1,
		'lnum' 1;
	font-variant-numeric: tabular-nums;
	color: var(--pr-navy);
	font-weight: 600;
	min-width: 0;
	overflow-wrap: anywhere;
}

.pr-card__cat {
	padding: 2px 8px;
	border: 1px solid var(--pr-rule);
	border-radius: 999px;
	background: var(--pr-paper);
	color: var(--pr-muted);
	font-weight: 500;
	max-width: 100%;
	overflow-wrap: anywhere;
}

.pr-card__title {
	font-size: var(--pr-fs-md);
	line-height: 1.25;
	margin: 0;
	font-weight: 600;
	color: var(--pr-ink);
	overflow-wrap: anywhere;
}

.pr-card__title a {
	color: inherit;
	text-decoration: none;
}

.pr-card__title a:hover,
.pr-card__title a:focus-visible {
	text-decoration: underline;
	text-underline-offset: 3px;
}

.pr-card__specs {
	display: flex;
	flex-direction: column;
	gap: var(--pr-sp-1);
	margin: 0;
	font-size: var(--pr-fs-sm);
}

.pr-card__spec-row {
	display: grid;
	grid-template-columns: minmax(80px, 35%) 1fr;
	gap: var(--pr-sp-3);
	padding-block: 4px;
	border-bottom: 1px dashed var(--pr-rule-2);
}

.pr-card__spec-row:last-child {
	border-bottom: 0;
}

.pr-card__spec-row dt {
	color: var(--pr-muted);
	text-transform: uppercase;
	letter-spacing: 0.06em;
	font-size: var(--pr-fs-xs);
}

.pr-card__spec-row dd {
	margin: 0;
	color: var(--pr-graphite);
	min-width: 0;
	overflow-wrap: anywhere;
}

.pr-card__foot {
	display: flex;
	flex-direction: column;
	gap: var(--pr-sp-3);
	margin-top: auto;
	padding-top: var(--pr-sp-3);
	border-top: 1px solid var(--pr-rule-2);
}

.pr-card__price {
	font-size: var(--pr-fs-md);
}

.pr-card__actions {
	display: flex;
	gap: var(--pr-sp-2);
	flex-wrap: wrap;
}

.pr-card__actions .pr-btn {
	flex: 1 1 150px;
	justify-content: center;
}

.pr-card__actions .pr-btn--ghost,
.pr-single__actions .pr-btn--ghost {
	--pr-btn-bg: transparent;
	--pr-btn-fg: var(--pr-navy);
	--pr-btn-bd: var(--pr-navy);
}

.pr-card__actions .pr-btn--ghost:hover,
.pr-card__actions .pr-btn--ghost:focus-visible,
.pr-single__actions .pr-btn--ghost:hover,
.pr-single__actions .pr-btn--ghost:focus-visible {
	--pr-btn-bg: var(--pr-navy);
	--pr-btn-fg: var(--pr-paper-2);
	--pr-btn-bd: var(--pr-navy);
	color: var(--pr-paper-2);
}

.pr-card__actions .pr-btn--wa,
.pr-single__actions .pr-btn--wa {
	--pr-btn-bg: #128c4f;
	--pr-btn-fg: var(--pr-paper-2);
	--pr-btn-bd: #128c4f;
}

.pr-card__actions .pr-btn--wa:hover,
.pr-card__actions .pr-btn--wa:focus-visible,
.pr-single__actions .pr-btn--wa:hover,
.pr-single__actions .pr-btn--wa:focus-visible {
	--pr-btn-bg: #169c47;
	--pr-btn-bd: #169c47;
	color: var(--pr-paper-2);
}

@media (max-width: 400px) {
	.pr-card__actions .pr-btn {
		flex: 1 1 100%;
	}
	.pr-card__head {
		flex-wrap: wrap;
		gap: 4px;
	}
	.pr-card__ref {
		word-break: break-all;
		min-width: 0;
	}
}

@media (prefers-reduced-motion: reduce) {
	.pr-card,
	.pr-card__title a {
		transition: none;
	}
}

/* =========================================================
   T1.7 - Single product layout (.pr-single)
   ---------------------------------------------------------
   Split layout: gallery on the left, ficha tecnica + CTAs
   on the right. No add-to-cart language. Mobile collapses
   to a single column.
   ========================================================= */

body.single-product .woocommerce-notices-wrapper:empty {
	display: none;
	margin: 0;
	padding: 0;
}

body.single-product #page-container,
body.single-product #main-content,
body.single-product #main-content > .container,
body.single-product #content-area,
body.single-product #left-area {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

body.single-product #main-header,
body.single-product #top-header {
	display: none !important;
}

/* Compacta o topo somente na pagina de produto para reduzir area vazia inicial. */
body.single-product .topbar {
	display: none !important;
}

body.single-product .header__inner {
	min-height: 60px;
	padding-block: var(--pr-sp-2);
	gap: var(--pr-sp-4);
}

body.single-product .logo {
	gap: var(--pr-sp-2);
	padding-block: 2px;
}

body.single-product .logo__img {
	width: clamp(150px, 16vw, 210px) !important;
	max-height: 44px;
	height: auto !important;
}

body.single-product .pr-breadcrumb {
	margin-bottom: var(--pr-sp-3);
	padding-bottom: var(--pr-sp-2);
}

body.single-product .pr-single {
	padding-block: var(--pr-sp-3, 12px) var(--pr-sp-7, 48px);
}

.pr-single {
	padding-block: var(--pr-sp-5, 24px) var(--pr-sp-7, 48px);
	font-family: var(--pr-font-sans);
	color: var(--pr-ink);
	background: var(--pr-paper);
}

.pr-single__article {
	background: var(--pr-paper-2);
	border: 1px solid var(--pr-rule);
	padding: var(--pr-sp-5);
}

.pr-single__grid {
	display: grid;
	gap: var(--pr-sp-5, 24px);
	grid-template-columns: minmax(280px, 0.85fr) minmax(320px, 1.15fr);
	align-items: start;
}

.pr-single__gallery {
	background: var(--pr-paper-3);
	border-radius: var(--pr-sp-2);
	padding: var(--pr-sp-4);
	min-width: 0;
}

.pr-single__gallery img {
	max-width: 100%;
	height: auto;
	display: block;
	margin-inline: auto;
}

.pr-single__gallery .woocommerce-product-gallery,
.pr-single__gallery .woocommerce-product-gallery__wrapper {
	float: none !important;
	width: 100% !important;
	max-width: 100%;
	margin: 0 !important;
}

.pr-single__gallery .woocommerce-product-gallery__image img,
.pr-single__gallery .wp-post-image {
	max-height: 430px;
	object-fit: contain;
}

.pr-single__body {
	display: flex;
	flex-direction: column;
	gap: var(--pr-sp-5);
	min-width: 0;
	padding: var(--pr-sp-5);
	border: 1px solid var(--pr-rule);
	border-top: 3px solid var(--pr-navy);
	background: var(--pr-paper-2);
	box-shadow: var(--pr-shadow-sm);
}

.pr-single__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: var(--pr-sp-2);
	font-size: var(--pr-fs-xs);
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--pr-muted);
	margin: 0;
}

.pr-single__ref {
	font-family: var(--pr-font-mono);
	font-feature-settings:
		'tnum' 1,
		'lnum' 1;
	font-variant-numeric: tabular-nums;
	color: var(--pr-navy);
	font-weight: 600;
}

.pr-single__sep {
	opacity: 0.5;
}

.pr-single__title {
	font-size: clamp(32px, 3vw, 46px);
	line-height: 1.1;
	font-weight: 700;
	letter-spacing: -0.01em;
	margin: 0;
	color: var(--pr-ink);
	overflow-wrap: anywhere;
}

.pr-single__lede {
	color: var(--pr-graphite);
	font-size: var(--pr-fs-md);
	line-height: 1.5;
}

.pr-single__price {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--pr-sp-2);
	font-size: var(--pr-fs-xl);
	font-weight: 700;
	padding: var(--pr-sp-3) var(--pr-sp-4);
	border: 1px solid var(--pr-rule);
	border-left: 3px solid var(--pr-red);
	border-radius: var(--pr-radius);
	background:
		linear-gradient(
			90deg,
			rgba(200, 16, 46, 0.06) 0%,
			rgba(200, 16, 46, 0.01) 100%
		),
		var(--pr-paper-2);
}

.pr-single__price .amount,
.pr-single__price bdi {
	font-family: var(--pr-font-mono);
	font-feature-settings:
		'tnum' 1,
		'lnum' 1;
	font-variant-numeric: tabular-nums;
}

.pr-single__price del {
	color: var(--pr-muted);
	font-size: var(--pr-fs-base);
}

.pr-single__price ins {
	text-decoration: none;
	color: var(--pr-red-dark);
}

.pr-single__actions {
	display: flex;
	gap: var(--pr-sp-3);
	flex-wrap: wrap;
	margin-top: var(--pr-sp-1);
	padding-top: var(--pr-sp-3);
	border-top: 1px solid var(--pr-rule-2);
}

.pr-single__actions .pr-btn {
	flex: 1 1 calc(50% - var(--pr-sp-2));
	justify-content: center;
}

.pr-spec-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid var(--pr-rule);
	border-radius: var(--pr-sp-2);
	overflow: hidden;
	font-size: var(--pr-fs-sm);
}

.pr-spec-table caption {
	caption-side: top;
	text-align: left;
	padding: var(--pr-sp-3) var(--pr-sp-4);
	font-size: var(--pr-fs-xs);
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--pr-muted);
	background: var(--pr-paper);
	border-bottom: 1px solid var(--pr-rule);
}

.pr-spec-table th,
.pr-spec-table td {
	text-align: left;
	padding: var(--pr-sp-3) var(--pr-sp-4);
	border-bottom: 1px solid var(--pr-rule-2);
}

.pr-spec-table tr:last-child th,
.pr-spec-table tr:last-child td {
	border-bottom: 0;
}

.pr-spec-table th {
	width: 38%;
	font-weight: 500;
	color: var(--pr-muted);
}

.pr-spec-table td {
	color: var(--pr-graphite);
}

.pr-spec-table td.pr-num,
.pr-spec-table .pr-num {
	font-family: var(--pr-font-mono);
	font-feature-settings:
		'tnum' 1,
		'lnum' 1;
	font-variant-numeric: tabular-nums;
	color: var(--pr-ink);
}

.pr-single__description {
	border-top: 1px solid var(--pr-rule-2);
	padding-top: var(--pr-sp-4);
	color: var(--pr-graphite);
	line-height: 1.6;
}

.pr-single__section-title {
	font-size: var(--pr-fs-lg);
	margin: 0 0 var(--pr-sp-3);
	color: var(--pr-ink);
}

@media (max-width: 900px) {
	.pr-single__grid {
		grid-template-columns: 1fr;
	}
	.pr-single__body {
		order: -1;
	}
	.pr-single__title {
		font-size: var(--pr-fs-2xl);
	}
}

@media (max-width: 480px) {
	.pr-single {
		padding-block: var(--pr-sp-4) var(--pr-sp-6);
	}
	.pr-single__article {
		padding: var(--pr-sp-3);
	}
	.pr-single__grid {
		gap: var(--pr-sp-4);
	}
	.pr-single__body {
		gap: var(--pr-sp-4);
		padding: var(--pr-sp-4);
	}
	.pr-single__title {
		font-size: clamp(24px, 7vw, 30px);
	}
	.pr-single__price {
		font-size: var(--pr-fs-lg);
		padding: var(--pr-sp-2) var(--pr-sp-3);
	}
	.pr-single__actions {
		gap: var(--pr-sp-2);
		padding-top: var(--pr-sp-2);
	}
	.pr-single__actions .pr-btn {
		flex: 1 1 100%;
	}
	.pr-spec-table th,
	.pr-spec-table td {
		padding: var(--pr-sp-2) var(--pr-sp-3);
	}
	.pr-spec-table th {
		width: 45%;
	}
}

/* =========================================================
   T1.8 - Product archive catalog (.pr-catalog)
   ---------------------------------------------------------
   Full-width WooCommerce archive shell: breadcrumb, compact
   technical header, toolbar, product grid and pagination.
   ========================================================= */

.pr-catalog-page {
	padding-block: var(--pr-sp-6) var(--pr-sp-8);
	font-family: var(--pr-font-sans);
	color: var(--pr-ink);
	background: var(--pr-paper);
}

.pr-catalog-header {
	display: grid;
	gap: var(--pr-sp-3);
	max-width: 780px;
	padding-block: var(--pr-sp-5) var(--pr-sp-6);
}

.pr-catalog-header__title {
	margin: 0;
	color: var(--pr-ink);
	font-size: var(--pr-fs-3xl);
	line-height: 1.1;
}

.pr-catalog-header__text {
	max-width: 680px;
	color: var(--pr-graphite);
	font-size: var(--pr-fs-md);
	line-height: 1.6;
	overflow-wrap: anywhere;
}

.pr-catalog-header__text p {
	margin: 0;
}

.pr-catalog-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: var(--pr-sp-4);
	margin-bottom: var(--pr-sp-5);
	padding-block: var(--pr-sp-3);
	border-top: 1px solid var(--pr-rule);
	border-bottom: 1px solid var(--pr-rule);
}

.pr-catalog-toolbar .woocommerce-result-count,
.pr-catalog-toolbar .woocommerce-ordering {
	float: none;
	margin: 0;
	color: var(--pr-muted);
	font-size: var(--pr-fs-sm);
}

.pr-catalog-toolbar select {
	min-height: 38px;
	padding: 0 var(--pr-sp-4);
	border: 1px solid var(--pr-rule);
	border-radius: var(--pr-radius);
	background: var(--pr-paper-2);
	color: var(--pr-ink);
	font-family: var(--pr-font-sans);
}

.woocommerce ul.products.pr-catalog,
ul.products.pr-catalog {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--pr-sp-5);
	margin: 0;
	padding: 0;
	list-style: none;
	align-items: stretch;
}

.woocommerce-shop ul.products.pr-catalog {
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr));
}

.woocommerce ul.products.pr-catalog::before,
.woocommerce ul.products.pr-catalog::after,
ul.products.pr-catalog::before,
ul.products.pr-catalog::after {
	content: none;
}

.woocommerce ul.products.pr-catalog li.product,
.woocommerce-page ul.products.pr-catalog li.product,
ul.products.pr-catalog li.product {
	float: none !important;
	width: 100% !important;
	max-width: none;
	clear: none !important;
	margin: 0 !important;
	min-width: 0;
	/* WooCommerce/Divi default li.product (higher specificity than
	   .pr-card) zeroes the card padding; restore it here where the
	   .pr-catalog scope wins the cascade. */
	padding: 1rem;
}

.pr-card {
	list-style: none;
	min-width: 0;
	height: 100%;
}

.pr-catalog-pagination {
	margin-top: var(--pr-sp-6);
}

.pr-catalog-pagination .woocommerce-pagination ul.page-numbers {
	display: flex;
	justify-content: center;
	gap: var(--pr-sp-2);
	border: 0;
}

.pr-catalog-pagination .woocommerce-pagination ul.page-numbers li {
	border: 0;
}

.pr-catalog-pagination .page-numbers {
	min-width: 38px;
	min-height: 38px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--pr-rule);
	border-radius: var(--pr-radius);
	background: var(--pr-paper-2);
	color: var(--pr-navy);
	font-family: var(--pr-font-mono);
	text-decoration: none;
}

.pr-catalog-pagination .page-numbers.current,
.pr-catalog-pagination .page-numbers:hover,
.pr-catalog-pagination .page-numbers:focus-visible {
	background: var(--pr-navy);
	border-color: var(--pr-navy);
	color: var(--pr-paper-2);
}

.pr-catalog-empty {
	padding: var(--pr-sp-5);
	border: 1px solid var(--pr-rule);
	background: var(--pr-paper-2);
}

@media (max-width: 980px) {
	.woocommerce ul.products.pr-catalog,
	ul.products.pr-catalog {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 768px) {
	.woocommerce ul.products.pr-catalog,
	ul.products.pr-catalog {
		gap: var(--pr-sp-4);
	}
	.pr-catalog-header {
		padding-block: var(--pr-sp-4) var(--pr-sp-5);
	}
	.pr-catalog-page {
		padding-block: var(--pr-sp-5) var(--pr-sp-9);
	}
}

@media (max-width: 680px) {
	.pr-catalog-header__title {
		font-size: var(--pr-fs-2xl);
	}
	.pr-catalog-toolbar {
		align-items: flex-start;
		flex-direction: column;
	}
	.woocommerce ul.products.pr-catalog,
	ul.products.pr-catalog {
		grid-template-columns: 1fr;
	}
}

/* =========================================================
   T1.9 - WooCommerce breadcrumb (.pr-breadcrumb)
   ========================================================= */

.pr-breadcrumb {
	margin: 0 0 var(--pr-sp-4);
	padding-bottom: var(--pr-sp-3);
	border-bottom: 1px solid var(--pr-rule);
	font-family: var(--pr-font-sans);
}

.pr-breadcrumb__list {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--pr-sp-2);
	margin: 0;
	padding: 0;
	list-style: none;
}

.pr-breadcrumb__item {
	display: inline-flex;
	align-items: center;
	gap: var(--pr-sp-2);
	color: var(--pr-muted);
	font-size: var(--pr-fs-xs);
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.pr-breadcrumb__item:not(:last-child)::after {
	content: '';
	width: 28px;
	height: 1px;
	background: var(--pr-rule);
}

.pr-breadcrumb__link {
	color: var(--pr-muted);
	text-decoration: none;
}

.pr-breadcrumb__link:hover,
.pr-breadcrumb__link:focus-visible {
	color: var(--pr-navy);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.pr-breadcrumb__current {
	color: var(--pr-navy);
	font-weight: 600;
}

@media (max-width: 520px) {
	.pr-breadcrumb__list {
		display: grid;
		gap: var(--pr-sp-2);
	}

	.pr-breadcrumb__item {
		display: block;
		line-height: 1.35;
		overflow-wrap: anywhere;
	}

	.pr-breadcrumb__item:not(:last-child)::after {
		display: none;
	}
}

/* =========================================================
   T1.X - Divi Layout Overrides
   ---------------------------------------------------------
   Hides the default right sidebar and styles the Divi header
   to match the Redesign B "Institucional Tecnico Claro" concept.
   ========================================================= */

/* Drop Divi's 80px page-container offset reserved for its fixed header.
   Redesign B ships its own sticky header in header.php, so the Divi
   compensation creates an empty gap at the top of every page. */
.et_fixed_nav.et_show_nav #page-container,
.et_fixed_nav.et_show_nav.et_secondary_nav_enabled #page-container {
	padding-top: 0;
}

/* Hide the default Divi right sidebar on all pages */
#sidebar {
	display: none !important;
}

/* Remove Divi's sidebar divider pseudo-element after the sidebar is hidden. */
#main-content .container::before {
	display: none !important;
}

/* Make the main content area full width */
#left-area {
	width: 100% !important;
	padding-right: 0 !important;
	float: none !important;
}

/* Fix main content max-width */
#main-content .container,
.container,
.et_pb_row {
	width: 100% !important;
	max-width: var(--pr-container) !important;
}

/* Header Styling (Clean Technical Corporate) */
#main-header,
#main-header.et-fixed-header {
	background-color: var(--pr-paper-2) !important;
	box-shadow: var(--pr-shadow);
	border-bottom: var(--pr-border);
}

/* Header Links */
#top-menu li a,
#et_search_icon:before,
.et_cart_info {
	color: var(--pr-navy) !important;
	font-family: var(--pr-font-sans);
	font-weight: 600;
	letter-spacing: 0.02em;
}

/* Hover effect on menu items */
#top-menu li a:hover {
	color: var(--pr-red) !important;
}

/* Ensure WooCommerce products grid applies even without .pr-catalog class
   in case templates aren't fully overridden yet */
@media (min-width: 768px) {
	.woocommerce ul.products:not(.pr-catalog) {
		display: grid !important;
		grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
		gap: var(--pr-sp-5);
	}
	.woocommerce ul.products:not(.pr-catalog) li.product {
		width: 100% !important;
		margin: 0 !important;
		clear: none !important;
	}
}
