/**
 * Inner pages — same boxed chrome as homepage (.c4wo-hero-frame).
 */

body.c4wo-inner.c4wo-static-home {
	background: var(--c4wo-chrome);
	color: var(--text-dark);
	overflow-x: hidden;
}

body.c4wo-inner .c4wo-site-frame {
	max-width: var(--c4wo-content-max);
	width: calc(100% - 2 * var(--c4wo-frame-outer));
	margin: 0 auto;
	border-radius: var(--c4wo-frame-radius) var(--c4wo-frame-radius) 0 0;
	box-shadow: 0 12px 40px rgba(15, 31, 24, 0.1);
	overflow: hidden;
	background: var(--cream);
	padding: 4.75rem var(--c4wo-frame-inline) 0;
	position: relative;
	box-sizing: border-box;
}

/* Nav sits outside .c4wo-site-frame so overflow:hidden does not clip the logo icon */
body.c4wo-inner .c4wo-site-nav,
body.c4wo-inner .c4wo-site-frame > nav {
	position: fixed;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: 200;
	width: min(var(--c4wo-content-max), calc(100% - 2 * var(--c4wo-frame-outer)));
	max-width: var(--c4wo-content-max);
	box-sizing: border-box;
	margin: 0;
	padding-left: var(--c4wo-frame-inline);
	padding-right: var(--c4wo-frame-inline);
	background: rgba(27, 51, 38, 0.98);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	gap: 0.5rem 1rem;
	min-height: 70px;
	padding-top: 0.35rem;
	padding-bottom: 0.35rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: var(--c4wo-frame-radius) var(--c4wo-frame-radius) 0 0;
	box-shadow: 0 1px 0 rgba(0, 0, 0, 0.06);
	overflow: visible;
}

body.admin-bar.c4wo-inner .c4wo-site-nav,
body.admin-bar.c4wo-inner .c4wo-site-frame > nav {
	top: 32px;
}

@media screen and (max-width: 782px) {
	body.admin-bar.c4wo-inner .c4wo-site-nav,
	body.admin-bar.c4wo-inner .c4wo-site-frame > nav {
		top: 46px;
	}
}

body.c4wo-inner .c4wo-page-shell {
	margin: 0;
	padding: 0;
	max-width: none;
	width: 100%;
}

/* Homepage hero — green band bleeds to site-frame edges (site-frame already has inline padding) */
body.c4wo-inner.c4wo-home-page .c4wo-home-hero-band {
	margin-left: calc(-1 * var(--c4wo-frame-inline));
	margin-right: calc(-1 * var(--c4wo-frame-inline));
	background: var(--green-deep);
	overflow: hidden;
}

/* Hero/trust-bar must NOT double-negate margins — that clips text on the left */
body.c4wo-inner.c4wo-home-page .hero {
	margin-left: 0;
	margin-right: 0;
	width: 100%;
	padding-left: 0;
	padding-right: 0;
	box-sizing: border-box;
}

body.c4wo-inner.c4wo-home-page .c4wo-home-hero-band {
	padding-left: var(--c4wo-frame-inline);
	padding-right: var(--c4wo-frame-inline);
	box-sizing: border-box;
}

body.c4wo-inner.c4wo-home-page .trust-bar {
	margin-left: 0;
	margin-right: 0;
	width: 100%;
	padding-left: 0;
	padding-right: 0;
	box-sizing: border-box;
}

body.c4wo-inner.c4wo-home-page .c4wo-page-shell--home .how-section,
body.c4wo-inner.c4wo-home-page .c4wo-page-shell--home .areas-section,
body.c4wo-inner.c4wo-home-page .c4wo-page-shell--home .why-section,
body.c4wo-inner.c4wo-home-page .c4wo-page-shell--home .faq-section {
	max-width: none;
	width: 100%;
	margin-left: 0;
	margin-right: 0;
}

/* Inner footer shell padding uses frame-inline (home-static.css handles shell layout) */
body.c4wo-inner .c4wo-footer-shell footer {
	padding-left: var(--c4wo-frame-inline);
	padding-right: var(--c4wo-frame-inline);
}

body.c4wo-inner .c4wo-footer-shell .footer-bottom {
	padding-left: var(--c4wo-frame-inline);
	padding-right: var(--c4wo-frame-inline);
}

/* HTML sitemap */
body.c4wo-inner .c4wo-page-shell--sitemap {
	padding: clamp(2rem, 5vw, 3rem) 0 clamp(2.5rem, 6vw, 4rem);
}

body.c4wo-inner .c4wo-html-sitemap__head {
	margin-bottom: 1.5rem;
	padding-bottom: 1.25rem;
	border-bottom: 1px solid rgba(45, 88, 67, 0.12);
}

body.c4wo-inner .c4wo-html-sitemap__title {
	font-family: "Playfair Display", Georgia, serif;
	font-size: clamp(2rem, 5vw, 2.75rem);
	font-weight: 900;
	color: var(--green-deep);
	margin: 0;
}

body.c4wo-inner .c4wo-html-sitemap__body {
	background: var(--white);
	border: 1px solid rgba(45, 88, 67, 0.1);
	border-radius: var(--c4wo-radius-card);
	padding: clamp(1.5rem, 4vw, 2.25rem);
	box-shadow: var(--shadow);
}

body.c4wo-inner .wsp-pages-title {
	font-family: "Playfair Display", Georgia, serif;
	font-size: 1.35rem;
	color: var(--green-deep);
	margin: 0 0 1rem;
}

body.c4wo-inner .wsp-pages-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 0.35rem 1.5rem;
}

body.c4wo-inner .wsp-pages-list .page_item {
	margin: 0;
	padding: 0;
}

body.c4wo-inner .wsp-pages-list a {
	color: var(--green-mid);
	text-decoration: none;
	font-weight: 600;
	font-size: 0.95rem;
	line-height: 1.5;
	display: block;
	padding: 0.35rem 0;
}

body.c4wo-inner .wsp-pages-list a:hover {
	color: var(--gold-dark);
}

/* Default / Elementor inner pages — keep Elementor inside the boxed frame */
body.c4wo-inner .c4wo-page-shell--elementor .entry-content {
	padding: clamp(1.5rem, 4vw, 2rem) var(--c4wo-frame-inline) clamp(2.5rem, 5vw, 3.5rem);
}

body.c4wo-inner .c4wo-entry-elementor .elementor-section,
body.c4wo-inner .c4wo-entry-elementor .e-con {
	max-width: 100% !important;
}

body.c4wo-inner .c4wo-entry-elementor .elementor-section.elementor-section-boxed > .elementor-container,
body.c4wo-inner .c4wo-entry-elementor .e-con-boxed {
	max-width: 100% !important;
	width: 100% !important;
}

@media (max-width: 900px) {
	body.c4wo-inner .wsp-pages-list {
		grid-template-columns: 1fr;
	}
}
