/**
 * Layout overrides — GP flex/grid vs. vertical CleanWave sections
 */

/* Blokada poziomego „przesuwania” strony (mobile: 100vw, peek hero, karuzele) */
html {
	overflow-x: clip;
	overscroll-behavior-x: none;
}

body {
	overflow-x: clip;
	overscroll-behavior-x: none;
	max-width: 100%;
}

/* ── Global: pełna szerokość (wszystkie podstrony, FOUC guard) ── */
body #page,
body .site,
body .site.grid-container,
body .grid-container,
body .container,
body #page.container {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	overflow-x: clip;
	box-sizing: border-box;
}

body .site-content,
body #content,
body #primary,
body .content-area,
body .site-main,
body #main,
body .inside-article,
body .entry-content {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	flex: none !important;
	flex-basis: auto !important;
	min-width: 0;
	float: none !important;
}

body #secondary,
body .sidebar,
body #right-sidebar,
body .widget-area.sidebar {
	display: none !important;
}

/* WooCommerce — legacy float 48% / 48% (ładuje się często po motywie) */
body.woocommerce div.product,
body.woocommerce-page div.product {
	width: 100% !important;
	max-width: none !important;
	float: none !important;
	clear: none !important;
	overflow: visible;
}

body.woocommerce div.product div.images,
body.woocommerce div.product div.summary,
body.woocommerce-page div.product div.images,
body.woocommerce-page div.product div.summary {
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	clear: none !important;
	margin: 0 !important;
	box-sizing: border-box;
}

/* Force vertical stack on homepage */
body.cw-front-page #page,
body.cw-front-page .site,
body.cw-front-page .site-content,
body.cw-front-page #content,
body.cw-front-page #primary,
body.cw-front-page .content-area,
body.cw-front-page main,
body.cw-front-page .inside-article,
body.cw-front-page .entry-content,
body.cw-front-page .cw-home {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
}

body.cw-front-page .cw-home,
body.cw-front-page .cw-home-v2 {
	display: flex !important;
	flex-direction: column !important;
}

body.cw-home-v3-active.cw-front-page,
body.cw-home-v2-active.cw-front-page {
	padding-top: var(--cw-header-offset) !important;
}

body.cw-home-v3-active .site-content,
body.cw-home-v3-active .content-area,
body.cw-home-v3-active #primary,
body.cw-home-v3-active main,
body.cw-home-v2-active .site-content,
body.cw-home-v2-active .content-area,
body.cw-home-v2-active #primary,
body.cw-home-v2-active main {
	padding: 0 !important;
	margin: 0 !important;
}

body.cw-front-page .cw-section {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	flex: none !important;
	float: none !important;
	clear: both;
}

/* Hide GP page title / duplicate entry header on home */
body.cw-front-page .page-header,
body.cw-front-page .entry-header,
body.cw-front-page .inside-article > header.entry-header,
body.cw-front-page h1.entry-title {
	display: none !important;
}

body.cw-front-page .inside-article {
	padding: 0;
	margin: 0;
	border: 0;
}

body.cw-front-page .entry-content {
	margin: 0;
	padding: 0;
}

body.cw-front-page .cw-home-v2 ul.cw-h2-product__highlights,
body.cw-front-page .cw-home-v2 ul.cw-h2-product__specs,
body.cw-front-page .cw-home-v2 ul.cw-h2-product__trust {
	list-style: none !important;
	margin-left: 0 !important;
	padding-left: 0 !important;
}

body.cw-front-page .cw-home-v2 .entry-content ul.cw-h2-product__highlights,
body.cw-front-page .cw-home-v2 .entry-content ul.cw-h2-product__specs,
body.cw-front-page .cw-home-v2 .entry-content ul.cw-h2-product__trust {
	list-style: none !important;
}

body.cw-front-page .cw-home-v2 a.cw-h2-btn,
body.cw-front-page .cw-home-v2 a.cw-h2-product__link-detail {
	text-decoration: none;
}

/* Full-bleed sections */
body.cw-front-page .one-container .site-content {
	padding: 0;
}

body.cw-front-page.separate-containers .inside-article {
	background: transparent;
	box-shadow: none;
}

body.cw-front-page .site-main,
body.cw-front-page #main {
	margin: 0;
	padding: 0;
}

body.cw-front-page .grid-container,
body.cw-front-page .site.grid-container {
	max-width: none;
	padding-left: 0;
	padding-right: 0;
}

.cw-header__sentinel {
	display: block;
	height: 1px;
	margin: 0;
	pointer-events: none;
}

/* PDP — pełna szerokość, bez flex-shrink GP */
body.cw-product-page #page,
body.cw-product-page .site,
body.cw-product-page .site.grid-container,
body.cw-product-page .grid-container,
body.cw-product-page .container,
body.cw-product-page #page.container {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.cw-product-page .site-content,
body.cw-product-page #content,
body.cw-product-page #primary,
body.cw-product-page .content-area,
body.cw-product-page .site-main,
body.cw-product-page #main,
body.cw-product-page .inside-article,
body.cw-product-page .entry-content {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	flex: none !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
}

body.cw-product-page .cw-single-product,
body.cw-product-page .cw-pdp-hero,
body.cw-product-page .cw-single-product__marketing {
	width: 100% !important;
	max-width: none !important;
}

/* WooCommerce — pełna szerokość treści (nie tylko body.cw-product-page) */
body.woocommerce #page,
body.woocommerce .site,
body.woocommerce .site.grid-container,
body.woocommerce .grid-container,
body.woocommerce .container,
body.woocommerce #page.container {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.woocommerce .site-content,
body.woocommerce #content,
body.woocommerce #primary,
body.woocommerce .content-area,
body.woocommerce .site-main,
body.woocommerce #main,
body.woocommerce .inside-article,
body.woocommerce .entry-content {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	flex: none !important;
	margin: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	float: none !important;
}

body.woocommerce #secondary,
body.woocommerce .sidebar,
body.woocommerce #right-sidebar {
	display: none !important;
}

/* Jedna kolumna treści — home, sklep, PDP, podstrony, blog */
body .cw-container--wide,
body .cw-container--shop,
body .cw-container--pdp,
body .cw-h2-wrap,
body .cw-content-wrap {
	width: var(--cw-content-wrap);
	max-width: 100%;
	margin-inline: auto;
	padding-inline: var(--cw-content-gutter);
	box-sizing: border-box;
}
