/* ==========================================================================
   PV Media - Elementor & Elementor Pro Compatibility Stylesheet
   ========================================================================== */

/* Bridge Elementor Global Theme Styles with PV Media CSS Custom Properties */
:root {
	--container-max-width: var(--pv-container-width, 1440px);
	--e-global-layout-container-width: var(--pv-container-width, 1440px);
	--container-default-padding: var(--pv-container-padding-x, 0px);
	--container-default-padding-top: 0px;
	--container-default-padding-right: var(--pv-container-padding-x, 0px);
	--container-default-padding-bottom: 0px;
	--container-default-padding-left: var(--pv-container-padding-x, 0px);
}

.elementor-page,
body.elementor-page,
.elementor {
	--e-global-color-primary: var(--pv-color-primary);
	--e-global-color-secondary: var(--pv-color-secondary);
	--e-global-color-text: var(--pv-color-text);
	--e-global-color-accent: var(--pv-color-accent);
	--e-global-typography-primary-font-family: var(--pv-font-heading);
	--e-global-typography-secondary-font-family: var(--pv-font-heading);
	--e-global-typography-text-font-family: var(--pv-font-body);
	--e-global-typography-accent-font-family: var(--pv-font-heading);
	--container-default-padding: var(--pv-container-padding-x, 0px);
}

/* Full Width Elementor Content Area */
.pv-elementor-content-area,
.pv-elementor-fullwidth-content {
	width: 100%;
	max-width: 100%;
	padding: 0;
	margin: 0;
}

/* 1. Full Width Containers & Sections (Stretch to 100% viewport) */
.elementor .e-con.e-parent.e-con--full,
.elementor > .e-con.e-con--full,
.elementor-section.elementor-section-full_width,
.elementor-section.elementor-section-stretched {
	width: 100%;
	max-width: 100%;
}

/* 2. Top-level Boxed Containers & Sections inherit theme container width (1440px by default) */
.elementor-section.elementor-section-boxed > .elementor-container {
	max-width: var(--container-max-width, var(--pv-container-width, 1440px));
}

.elementor > .e-con--boxed > .e-con-inner,
.elementor .e-con.e-parent.e-con--boxed > .e-con-inner {
	max-width: var(--container-max-width, var(--pv-container-width, 1440px));
	margin-left: auto;
	margin-right: auto;
}

/* 3. Reset default Container side padding to Customizer setting */
.elementor .e-con:not([class*="elementor-element-"]):not(.e-con--custom-padding),
.elementor > .e-con.e-parent:not([style*="padding"]) {
	--container-default-padding-right: var(--pv-container-padding-x, 0px);
	--container-default-padding-left: var(--pv-container-padding-x, 0px);
}

/* Fix Elementor button border radius inheritance */
.elementor-widget-button .elementor-button {
	border-radius: var(--pv-radius-md);
	font-family: var(--pv-font-heading);
	font-weight: 600;
	transition: var(--pv-transition);
}

/* Elementor Loop Grid & Post Cards bridge */
.elementor-loop-container .elementor-element {
	border-radius: var(--pv-radius-lg);
}

/* Elementor WooCommerce Widgets Bridge */
.elementor-widget-woocommerce-product-price .price,
.elementor-widget-woocommerce-product-add-to-cart .single_add_to_cart_button {
	border-radius: var(--pv-radius-md);
	font-family: var(--pv-font-heading);
}

/* Canvas Mode Clean Reset */
body.pv-elementor-canvas {
	margin: 0;
	padding: 0;
	overflow-x: hidden;
}
